SlideShare una empresa de Scribd logo
1 de 36
SQL Server
Linux
Vithor da Silva e Silva
Microsoft Certified Trainer
vithor@vssti.com.br
http://www.vssti.com.br/blog/
https://twitter.com/vithordasilva
Sobre mim
• Vithor da Silva e Silva
• Consultor – Plataforma de Dados e BI – AX4B
• Instrutor – SQL Server e Power BI - Mindworks
• Certificado em SQL Server e IBM DB2 LUW;
• vithor@vssti.com.br
• www.vssti.com.br/blog
• https://br.linkedin.com/in/vithorsilva
• https://www.facebook.com/vithorsilva
• https://www.facebook.com/vssti
• https://www.facebook.com/sqles
A Microsoft livre!
https://opensource.microsoft.com/
Capacitação Microsoft e Linux
https://www.mindworks.com.br/confira-os-treinamentos-disponiveis-na-mindworks-2/
Carreira SQL Server
15 anos de Inovação
SQL Server
2000
SQL Server
2005
SQL Server
2008
SQL Server
2008 R2
SQL Server
2012
XML ● KPIs
Management Studio ● Espelhamento
Compactação ● Gerenciamento baseado em políticas ● Programação
PowerPivot ● Integração com o SharePoint ● Master Data Services
AlwaysOn ● Índice ColumnStore ● Data Quality Services ● Power View ● Conectividade de Nuvem
SQL Server
2014
In-Memory em todas as cargas de trabalho ● Desempenho e Escala ● Nuvem Híbrida Otimizada ● HDInsight ● BI de Nuvem
Magic Quadrant for Operational DBMS
O banco de dados do ano!
Motivos para migrar
SQL Server vNext
Laboratório
Instalação do Linux
# Importar o Repositório Público
suporte@LAB002:~$ curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key
add -
# Registrar os repositórios Microsoft SQL Server Ubuntu
suporte@LAB002:~$ curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-
server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list
suporte@LAB002:~$ curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo
tee /etc/apt/sources.list.d/msprod.list
# Atualização da Lista de Repositórios do Ubuntu
suporte@LAB002:~$ sudo apt-get update
# Instalação do SQL Server
suporte@LAB002:~$ sudo apt-get install -y mssql-server
# Configuração do SQL Server
suporte@LAB002:~$ sudo /opt/mssql/bin/mssql-conf setup
# Verificar Status do Serviço
suporte@LAB002:~$ systemctl status mssql-server
Instalação do SQL Server no Ubuntu Server
# Atualização da Lista de Repositórios do Ubuntu
suporte@LAB002:~$ sudo apt-get update
# Instalação do SQLCMD / BCP e ODBC para Linux
suporte@LAB002:~$ sudo apt-get install mssql-tools unixodbc-dev
# Adicionando os binários no PATH
suporte@LAB002:~$ echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
suporte@LAB002:~$ echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
suporte@LAB002:~$ source ~/.bashrc
# Acessando o SQL Server via Linha de Comando
suporte@LAB002:~$ sqlcmd -S . -U sa
Instalação do SQL Server no Ubuntu Server
Demonstração
SQL Server vNext
Top Features
Tecnologia In-Memory OLTP
Query Store
A “Caixa Preta” para seu
database
Você já…?
…teve seu Sistema lento e todo mundo esperando que você desse uma
solução mágica o mais rápido possível?
…atualizou uma aplicação pra última versão do SQL e teve problemas
com o novo plano de execução que fez sua aplicação ficar mais lenta?
…teve um problema com sua base Azure SQL Database e não pôde
determinar o que estava errado?
Monitoramento de performance com Query Store
O query store provê aos
DBAs imersões nos
planos de queries
escolhidos
Temporal
Consultas retroativas…
Fontes de dados reais são
dinâmicas
Dados históricos podem ser críticos para o sucesso
Databases tradicionais falham nessas imersões
Workarounds…
Complexos, caros, limitados, inflexíveis, ineficientes
SQL Server 2016 facilita…
Sem mudanças no modelo de implementação
Novas imersões
Por que Temporal?
Viagem no tempo Auditoria
Slowly Changing
Dimensions
Reparar
problemas em
nível de linha
Temporal table (dados atuais)
Insert / Bulk Insert
* Versões Antigas
Update */ Delete *
Como funciona?
History Table
Temporal table (dados atuais)
Temporal Queries *
(Time travel,etc.)
Como funciona?
History Table
Regular queries
(dados atuais)
* Inclui Versão Antiga
Row-Level Security.
SQL Server 2016
SQL Database
Two
Usuário(ex: enfermeiro) seleciona dados da tabela de pacientes
Three
Políticas de segurança reescreve a consulta de forma transparente para aplicar o
filtro
Database Policy Manager
CREATE FUNCTION dbo.fn_securitypredicate(@wing int)
RETURNS TABLE WITH SCHEMABINDING AS
return SELECT 1 as [fn_securitypredicate_result] FROM
StaffDuties d INNER JOIN Employees e
ON (d.EmpId = e.EmpId)
WHERE e.UserSID = SUSER_SID() AND @wing = d.Wing;
CREATE SECURITY POLICY dbo.SecPol
ADD FILTER PREDICATE dbo.fn_securitypredicate(Wing) ON Patients
WITH (STATE = ON)
Filter
Predicate:
INNER
JOIN…
Security
Policy
Aplicação
Pacientes
One
Policy manager cria predicados de filtro e políticas de segurança em T-SQL,
blindando a tabela Pacientes
Enfermeira
SELECT * FROM Patients
SELECT * FROM Patients
SEMIJOIN APPLY dbo.fn_securitypredicate(patients.Wing);
SELECT Patients.* FROM Patients,
StaffDuties d INNER JOIN Employees e ON (d.EmpId = e.EmpId)
WHERE e.UserSID = SUSER_SID() AND Patients.wing = d.Wing;
RLS em três passos
Dynamic Data Masking
SQL Server 2016
SQL Database
Configuração simples pelo portal Azure
Baseado em políticas em nível de tabelas e
colunas, por um grupo definido de usuários
Data masking aplicado em tempo real para
resultados de queries baseadas em políticas
Múltiplas funções masking disponíveis (full,
partial) para várias categorias de dados
sensíveis (ex: Cartões de crédito, SSN, etc.)
SQL Database
SQL Server 2016 CTP2
Table.CreditCardNo
4465-6571-7868-5796
4468-7746-3848-1978
4484-5434-6858-6550
Real-time data masking;
partial masking
Dynamic Data Masking
Previne contra o uso abusivo de dados sensíveis
Always Encrypted
Previne
Divulgação de
Dados
Proteção de dados sensíveis
no lado do cliente usando
chaves que nunca são dadas
ao Sistema de banco de
dados.
Queries em dados
Encriptados
Suporte para comparações
igualitárias, incluindo join,
group by e operdores
distinct.
Transparência de
Aplicação
Mudanças mínimas em
aplicações via servidor e
aprimoramento em
bibliotecas do cliente.
Permite clientes a guardar dados sensíveis de maneira segura fora de seu limite de confiança.
Dados se mantém protegidos de usuários com altos privilégios, porém não autorizados.
Benefícios de dados Sempre Encriptados
Data remains encrypted
during query
Always encrypted
Protege dados armazenados e em movimento, on-premises & cloud
Capacidade
ADO.Net client library provê criptografia
transparente do lado do cliente,
enquanto SQL Server executa as consultas
T-SQL em dados criptografados
Benefícios
Apps TCE-enabled
ADO .NET library
SQL ServerEncrypted
query
Columnar
key
No app
changes
Master
key
Stretch Database
SQL Server “esticado” ao Azure
Estique tabelas frias ao Azure com processamento remoto de consultas
On-premises Azure
Pedidos
In-memory
OLTP table Histórico de
pedidos
Tabela esticada
Movimentação de dados e
processamento de consulta
remota
Dados
quentes/Ativos
Dados frios
Integração BI
on-premises
e cloud
SELECT * FROM Department
FOR SYSTEM_TIME
AS OF '2010.01.01'
Fatos:
1. Histórico é muito maior que dados
atuais
2. Retenção entre 3 e 10 anos
3. “Warm”: até poucas semanas/mêses
4. “Cold”: raramente consultados
Solução:
History como uma stretch table:
PeriodEnd < “Agora- 6 months”
Azure SQL Database
Demonstração
Mantenha-se informado, tudo sobre SQL Server e Power BI
www.vssti.com.br/blog
https://www.youtube.com/channel/UCj1O1SCoSyzrX1lX5HFb_8A
http://www.facebook.com/sqles
https://t.me/sqles
http://www.facebook.com/vssti
27 9 9903-2765
vithor@vssti.com.br
Obrigado!

Más contenido relacionado

La actualidad más candente

Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
iMasters
 
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
Ricardo Ferreira
 
Microsoft 5 Cal Dispositivo Local P/ Windows Server 2019 Standard R18-05766
Microsoft 5 Cal Dispositivo Local P/ Windows Server 2019 Standard R18-05766Microsoft 5 Cal Dispositivo Local P/ Windows Server 2019 Standard R18-05766
Microsoft 5 Cal Dispositivo Local P/ Windows Server 2019 Standard R18-05766
Stryhn49Ritter
 

La actualidad más candente (20)

Aws glue
Aws glueAws glue
Aws glue
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
 
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
 
Cloud Server Embratel
Cloud Server EmbratelCloud Server Embratel
Cloud Server Embratel
 
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
 
Como Implementar a Análise de Dados em Tempo Real
Como Implementar a Análise de Dados em Tempo RealComo Implementar a Análise de Dados em Tempo Real
Como Implementar a Análise de Dados em Tempo Real
 
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
Patterns & Best Practices para uma Arquitetura de Software Baseada em In-Memo...
 
TRIO IT - Resumo
TRIO IT - ResumoTRIO IT - Resumo
TRIO IT - Resumo
 
Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...
Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...
Dicas para uma maior performance em APIs REST - Tech Meetup - Itaú Unibanco -...
 
My sql enterprise vs community
My sql enterprise vs communityMy sql enterprise vs community
My sql enterprise vs community
 
Comprei um SQL Server e agora?
Comprei um SQL Server e agora?Comprei um SQL Server e agora?
Comprei um SQL Server e agora?
 
Kafka: Uma introdução para Desenvolvedores e Arquitetos
 Kafka: Uma introdução para Desenvolvedores e Arquitetos Kafka: Uma introdução para Desenvolvedores e Arquitetos
Kafka: Uma introdução para Desenvolvedores e Arquitetos
 
Azure Fundamentals (Intensivão Azure)
Azure Fundamentals (Intensivão Azure)Azure Fundamentals (Intensivão Azure)
Azure Fundamentals (Intensivão Azure)
 
Cloud Day III - Modelos de licenciamento para parceiros com Windows Azure
Cloud Day III - Modelos de licenciamento para parceiros com Windows AzureCloud Day III - Modelos de licenciamento para parceiros com Windows Azure
Cloud Day III - Modelos de licenciamento para parceiros com Windows Azure
 
DataLakers 2018 Qmeeting - São Paulo
DataLakers 2018 Qmeeting - São PauloDataLakers 2018 Qmeeting - São Paulo
DataLakers 2018 Qmeeting - São Paulo
 
Virtualização de dados para Advanced Analytics e Machine Learning
Virtualização de dados para Advanced Analytics e Machine LearningVirtualização de dados para Advanced Analytics e Machine Learning
Virtualização de dados para Advanced Analytics e Machine Learning
 
Meetup Tivir - Big Data Clusters
Meetup Tivir - Big Data ClustersMeetup Tivir - Big Data Clusters
Meetup Tivir - Big Data Clusters
 
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
 
Sessão Avançada: Construindo um Data Warehouse Moderno com Amazon Redshift - ...
Sessão Avançada: Construindo um Data Warehouse Moderno com Amazon Redshift - ...Sessão Avançada: Construindo um Data Warehouse Moderno com Amazon Redshift - ...
Sessão Avançada: Construindo um Data Warehouse Moderno com Amazon Redshift - ...
 
Microsoft 5 Cal Dispositivo Local P/ Windows Server 2019 Standard R18-05766
Microsoft 5 Cal Dispositivo Local P/ Windows Server 2019 Standard R18-05766Microsoft 5 Cal Dispositivo Local P/ Windows Server 2019 Standard R18-05766
Microsoft 5 Cal Dispositivo Local P/ Windows Server 2019 Standard R18-05766
 

Destacado

OSCON16: Analysis of the Xen code review process: An example of software deve...
OSCON16: Analysis of the Xen code review process: An example of software deve...OSCON16: Analysis of the Xen code review process: An example of software deve...
OSCON16: Analysis of the Xen code review process: An example of software deve...
The Linux Foundation
 
virtualization and hypervisors
virtualization and hypervisorsvirtualization and hypervisors
virtualization and hypervisors
Gaurav Suri
 

Destacado (20)

Keep your environment always on with sql server 2016 sql bits 2017
Keep your environment always on with sql server 2016 sql bits 2017Keep your environment always on with sql server 2016 sql bits 2017
Keep your environment always on with sql server 2016 sql bits 2017
 
SQL Server on Linux - march 2017
SQL Server on Linux - march 2017SQL Server on Linux - march 2017
SQL Server on Linux - march 2017
 
Containers Anywhere with OpenShift by Red Hat
Containers Anywhere with OpenShift by Red HatContainers Anywhere with OpenShift by Red Hat
Containers Anywhere with OpenShift by Red Hat
 
2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell
2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell
2017 OWASP SanFran March Meetup - Hacking SQL Server on Scale with PowerShell
 
DevNexus 2015: Kubernetes & Container Engine
DevNexus 2015: Kubernetes & Container EngineDevNexus 2015: Kubernetes & Container Engine
DevNexus 2015: Kubernetes & Container Engine
 
Nordic infrastructure Conference 2017 - SQL Server on Linux Overview
Nordic infrastructure Conference 2017 - SQL Server on Linux OverviewNordic infrastructure Conference 2017 - SQL Server on Linux Overview
Nordic infrastructure Conference 2017 - SQL Server on Linux Overview
 
Microsoft Data Platform Airlift 2017 Rui Quintino Machine Learning with SQL S...
Microsoft Data Platform Airlift 2017 Rui Quintino Machine Learning with SQL S...Microsoft Data Platform Airlift 2017 Rui Quintino Machine Learning with SQL S...
Microsoft Data Platform Airlift 2017 Rui Quintino Machine Learning with SQL S...
 
Red Hat Container Strategy
Red Hat Container StrategyRed Hat Container Strategy
Red Hat Container Strategy
 
Red Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform OverviewRed Hat OpenShift Container Platform Overview
Red Hat OpenShift Container Platform Overview
 
Microservices with Docker, Kubernetes, and Jenkins
Microservices with Docker, Kubernetes, and JenkinsMicroservices with Docker, Kubernetes, and Jenkins
Microservices with Docker, Kubernetes, and Jenkins
 
OSCON16: Analysis of the Xen code review process: An example of software deve...
OSCON16: Analysis of the Xen code review process: An example of software deve...OSCON16: Analysis of the Xen code review process: An example of software deve...
OSCON16: Analysis of the Xen code review process: An example of software deve...
 
Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)Xen and the art of embedded virtualization (ELC 2017)
Xen and the art of embedded virtualization (ELC 2017)
 
XPDS16: High-Performance Virtualization for HPC Cloud on Xen - Jun Nakajima &...
XPDS16: High-Performance Virtualization for HPC Cloud on Xen - Jun Nakajima &...XPDS16: High-Performance Virtualization for HPC Cloud on Xen - Jun Nakajima &...
XPDS16: High-Performance Virtualization for HPC Cloud on Xen - Jun Nakajima &...
 
Xen Project Release and Roadmap Process (4.7+)
Xen Project Release and Roadmap Process (4.7+)Xen Project Release and Roadmap Process (4.7+)
Xen Project Release and Roadmap Process (4.7+)
 
OpenShift Enterprise 3.1 vs kubernetes
OpenShift Enterprise 3.1 vs kubernetesOpenShift Enterprise 3.1 vs kubernetes
OpenShift Enterprise 3.1 vs kubernetes
 
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
 
Bootcamp 2017 - SQL Server on Linux
Bootcamp 2017 - SQL Server on LinuxBootcamp 2017 - SQL Server on Linux
Bootcamp 2017 - SQL Server on Linux
 
virtualization and hypervisors
virtualization and hypervisorsvirtualization and hypervisors
virtualization and hypervisors
 
Virtualization Architecture & KVM
Virtualization Architecture & KVMVirtualization Architecture & KVM
Virtualization Architecture & KVM
 
Hypervisors and Virtualization - VMware, Hyper-V, XenServer, and KVM
Hypervisors and Virtualization - VMware, Hyper-V, XenServer, and KVMHypervisors and Virtualization - VMware, Hyper-V, XenServer, and KVM
Hypervisors and Virtualization - VMware, Hyper-V, XenServer, and KVM
 

Similar a FLISOL 2017 - SQL Server no Linux

Criando um baseline de seu ambiente completo utilizando SSIS e SSRS
Criando um baseline de seu ambiente completo utilizando SSIS e SSRSCriando um baseline de seu ambiente completo utilizando SSIS e SSRS
Criando um baseline de seu ambiente completo utilizando SSIS e SSRS
Marcos Freccia
 
Apostila de sql basico
Apostila de sql basicoApostila de sql basico
Apostila de sql basico
Fernando Palma
 

Similar a FLISOL 2017 - SQL Server no Linux (20)

Backup Database - On Premisses no Azure
Backup Database - On Premisses no AzureBackup Database - On Premisses no Azure
Backup Database - On Premisses no Azure
 
Novidades do Sql Server 2016
Novidades do Sql Server 2016Novidades do Sql Server 2016
Novidades do Sql Server 2016
 
SQL Day 2016 - SQL Server x Oracle
SQL Day 2016 - SQL Server x OracleSQL Day 2016 - SQL Server x Oracle
SQL Day 2016 - SQL Server x Oracle
 
SQL Saturday #844 - Belo Horizonte - Segurança no SQL Server: Você está deixa...
SQL Saturday #844 - Belo Horizonte - Segurança no SQL Server: Você está deixa...SQL Saturday #844 - Belo Horizonte - Segurança no SQL Server: Você está deixa...
SQL Saturday #844 - Belo Horizonte - Segurança no SQL Server: Você está deixa...
 
Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018Cenário das Plataformas de Dados 2017/2018
Cenário das Plataformas de Dados 2017/2018
 
VIII sessão SQL Bahia - Conhecendo o Microsoft SQL Operations Studio
VIII sessão SQL Bahia - Conhecendo o Microsoft SQL Operations StudioVIII sessão SQL Bahia - Conhecendo o Microsoft SQL Operations Studio
VIII sessão SQL Bahia - Conhecendo o Microsoft SQL Operations Studio
 
Monitorando APIs REST com o Application Insights
Monitorando APIs REST com o Application InsightsMonitorando APIs REST com o Application Insights
Monitorando APIs REST com o Application Insights
 
Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -...
Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -...Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -...
Boas práticas de segurança no acesso a dados em Web Apps - SQLSaturday #972 -...
 
Azure Data Overview
Azure Data OverviewAzure Data Overview
Azure Data Overview
 
Criando um baseline de seu ambiente completo utilizando ssis e ssrs
Criando um baseline de seu ambiente completo utilizando ssis e ssrsCriando um baseline de seu ambiente completo utilizando ssis e ssrs
Criando um baseline de seu ambiente completo utilizando ssis e ssrs
 
Criando um baseline de seu ambiente completo utilizando SSIS e SSRS
Criando um baseline de seu ambiente completo utilizando SSIS e SSRSCriando um baseline de seu ambiente completo utilizando SSIS e SSRS
Criando um baseline de seu ambiente completo utilizando SSIS e SSRS
 
Ms & sap
Ms & sapMs & sap
Ms & sap
 
Azure e suas vantagens (Palestra 1)
Azure e suas vantagens (Palestra 1) Azure e suas vantagens (Palestra 1)
Azure e suas vantagens (Palestra 1)
 
Microsoft SQL 2014
Microsoft SQL 2014Microsoft SQL 2014
Microsoft SQL 2014
 
SQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open sourceSQLite: um motor de bases de dados relacional open source
SQLite: um motor de bases de dados relacional open source
 
Simplifique o seu BI com a AWS
Simplifique o seu BI com a AWSSimplifique o seu BI com a AWS
Simplifique o seu BI com a AWS
 
Apostila de sql basico
Apostila de sql basicoApostila de sql basico
Apostila de sql basico
 
AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...
AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...
AWS Data Immersion Webinar Week - Planeje e entenda como criar um repositório...
 
Banco de Dados no Visual Studio
Banco de Dados no Visual StudioBanco de Dados no Visual Studio
Banco de Dados no Visual Studio
 
Monitorando os Recursos e Processos do Servidor, através do Power BI
Monitorando os Recursos e Processos do Servidor, através do Power BIMonitorando os Recursos e Processos do Servidor, através do Power BI
Monitorando os Recursos e Processos do Servidor, através do Power BI
 

Más de Vithor da Silva e Silva (6)

Desenvolvimento de Microsoft BI em grandes corporações
Desenvolvimento de Microsoft BI em grandes corporaçõesDesenvolvimento de Microsoft BI em grandes corporações
Desenvolvimento de Microsoft BI em grandes corporações
 
Oficina - PowerBI
Oficina - PowerBIOficina - PowerBI
Oficina - PowerBI
 
Bi gente grande
Bi gente grandeBi gente grande
Bi gente grande
 
Self Service BI com Power BI
Self Service BI com Power BISelf Service BI com Power BI
Self Service BI com Power BI
 
DBA Brasil 2.0 - Azure Storage e SQL Server
DBA Brasil 2.0 - Azure Storage e SQL ServerDBA Brasil 2.0 - Azure Storage e SQL Server
DBA Brasil 2.0 - Azure Storage e SQL Server
 
Azure SQL Database
Azure SQL DatabaseAzure SQL Database
Azure SQL Database
 

Último

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
Natalia Granato
 

Último (6)

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 

FLISOL 2017 - SQL Server no Linux

  • 1. SQL Server Linux Vithor da Silva e Silva Microsoft Certified Trainer vithor@vssti.com.br http://www.vssti.com.br/blog/ https://twitter.com/vithordasilva
  • 2. Sobre mim • Vithor da Silva e Silva • Consultor – Plataforma de Dados e BI – AX4B • Instrutor – SQL Server e Power BI - Mindworks • Certificado em SQL Server e IBM DB2 LUW; • vithor@vssti.com.br • www.vssti.com.br/blog • https://br.linkedin.com/in/vithorsilva • https://www.facebook.com/vithorsilva • https://www.facebook.com/vssti • https://www.facebook.com/sqles
  • 4. Capacitação Microsoft e Linux https://www.mindworks.com.br/confira-os-treinamentos-disponiveis-na-mindworks-2/
  • 6. 15 anos de Inovação SQL Server 2000 SQL Server 2005 SQL Server 2008 SQL Server 2008 R2 SQL Server 2012 XML ● KPIs Management Studio ● Espelhamento Compactação ● Gerenciamento baseado em políticas ● Programação PowerPivot ● Integração com o SharePoint ● Master Data Services AlwaysOn ● Índice ColumnStore ● Data Quality Services ● Power View ● Conectividade de Nuvem SQL Server 2014 In-Memory em todas as cargas de trabalho ● Desempenho e Escala ● Nuvem Híbrida Otimizada ● HDInsight ● BI de Nuvem
  • 7. Magic Quadrant for Operational DBMS
  • 8. O banco de dados do ano!
  • 12. # Importar o Repositório Público suporte@LAB002:~$ curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - # Registrar os repositórios Microsoft SQL Server Ubuntu suporte@LAB002:~$ curl https://packages.microsoft.com/config/ubuntu/16.04/mssql- server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list suporte@LAB002:~$ curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list # Atualização da Lista de Repositórios do Ubuntu suporte@LAB002:~$ sudo apt-get update # Instalação do SQL Server suporte@LAB002:~$ sudo apt-get install -y mssql-server # Configuração do SQL Server suporte@LAB002:~$ sudo /opt/mssql/bin/mssql-conf setup # Verificar Status do Serviço suporte@LAB002:~$ systemctl status mssql-server Instalação do SQL Server no Ubuntu Server
  • 13. # Atualização da Lista de Repositórios do Ubuntu suporte@LAB002:~$ sudo apt-get update # Instalação do SQLCMD / BCP e ODBC para Linux suporte@LAB002:~$ sudo apt-get install mssql-tools unixodbc-dev # Adicionando os binários no PATH suporte@LAB002:~$ echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile suporte@LAB002:~$ echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc suporte@LAB002:~$ source ~/.bashrc # Acessando o SQL Server via Linha de Comando suporte@LAB002:~$ sqlcmd -S . -U sa Instalação do SQL Server no Ubuntu Server
  • 17. Query Store A “Caixa Preta” para seu database
  • 18. Você já…? …teve seu Sistema lento e todo mundo esperando que você desse uma solução mágica o mais rápido possível? …atualizou uma aplicação pra última versão do SQL e teve problemas com o novo plano de execução que fez sua aplicação ficar mais lenta? …teve um problema com sua base Azure SQL Database e não pôde determinar o que estava errado?
  • 19. Monitoramento de performance com Query Store O query store provê aos DBAs imersões nos planos de queries escolhidos
  • 21. Fontes de dados reais são dinâmicas Dados históricos podem ser críticos para o sucesso Databases tradicionais falham nessas imersões Workarounds… Complexos, caros, limitados, inflexíveis, ineficientes SQL Server 2016 facilita… Sem mudanças no modelo de implementação Novas imersões Por que Temporal? Viagem no tempo Auditoria Slowly Changing Dimensions Reparar problemas em nível de linha
  • 22. Temporal table (dados atuais) Insert / Bulk Insert * Versões Antigas Update */ Delete * Como funciona? History Table
  • 23. Temporal table (dados atuais) Temporal Queries * (Time travel,etc.) Como funciona? History Table Regular queries (dados atuais) * Inclui Versão Antiga
  • 24. Row-Level Security. SQL Server 2016 SQL Database
  • 25. Two Usuário(ex: enfermeiro) seleciona dados da tabela de pacientes Three Políticas de segurança reescreve a consulta de forma transparente para aplicar o filtro Database Policy Manager CREATE FUNCTION dbo.fn_securitypredicate(@wing int) RETURNS TABLE WITH SCHEMABINDING AS return SELECT 1 as [fn_securitypredicate_result] FROM StaffDuties d INNER JOIN Employees e ON (d.EmpId = e.EmpId) WHERE e.UserSID = SUSER_SID() AND @wing = d.Wing; CREATE SECURITY POLICY dbo.SecPol ADD FILTER PREDICATE dbo.fn_securitypredicate(Wing) ON Patients WITH (STATE = ON) Filter Predicate: INNER JOIN… Security Policy Aplicação Pacientes One Policy manager cria predicados de filtro e políticas de segurança em T-SQL, blindando a tabela Pacientes Enfermeira SELECT * FROM Patients SELECT * FROM Patients SEMIJOIN APPLY dbo.fn_securitypredicate(patients.Wing); SELECT Patients.* FROM Patients, StaffDuties d INNER JOIN Employees e ON (d.EmpId = e.EmpId) WHERE e.UserSID = SUSER_SID() AND Patients.wing = d.Wing; RLS em três passos
  • 26. Dynamic Data Masking SQL Server 2016 SQL Database
  • 27. Configuração simples pelo portal Azure Baseado em políticas em nível de tabelas e colunas, por um grupo definido de usuários Data masking aplicado em tempo real para resultados de queries baseadas em políticas Múltiplas funções masking disponíveis (full, partial) para várias categorias de dados sensíveis (ex: Cartões de crédito, SSN, etc.) SQL Database SQL Server 2016 CTP2 Table.CreditCardNo 4465-6571-7868-5796 4468-7746-3848-1978 4484-5434-6858-6550 Real-time data masking; partial masking Dynamic Data Masking Previne contra o uso abusivo de dados sensíveis
  • 29. Previne Divulgação de Dados Proteção de dados sensíveis no lado do cliente usando chaves que nunca são dadas ao Sistema de banco de dados. Queries em dados Encriptados Suporte para comparações igualitárias, incluindo join, group by e operdores distinct. Transparência de Aplicação Mudanças mínimas em aplicações via servidor e aprimoramento em bibliotecas do cliente. Permite clientes a guardar dados sensíveis de maneira segura fora de seu limite de confiança. Dados se mantém protegidos de usuários com altos privilégios, porém não autorizados. Benefícios de dados Sempre Encriptados
  • 30. Data remains encrypted during query Always encrypted Protege dados armazenados e em movimento, on-premises & cloud Capacidade ADO.Net client library provê criptografia transparente do lado do cliente, enquanto SQL Server executa as consultas T-SQL em dados criptografados Benefícios Apps TCE-enabled ADO .NET library SQL ServerEncrypted query Columnar key No app changes Master key
  • 32. SQL Server “esticado” ao Azure Estique tabelas frias ao Azure com processamento remoto de consultas On-premises Azure Pedidos In-memory OLTP table Histórico de pedidos Tabela esticada Movimentação de dados e processamento de consulta remota Dados quentes/Ativos Dados frios Integração BI on-premises e cloud
  • 33. SELECT * FROM Department FOR SYSTEM_TIME AS OF '2010.01.01' Fatos: 1. Histórico é muito maior que dados atuais 2. Retenção entre 3 e 10 anos 3. “Warm”: até poucas semanas/mêses 4. “Cold”: raramente consultados Solução: History como uma stretch table: PeriodEnd < “Agora- 6 months” Azure SQL Database
  • 35. Mantenha-se informado, tudo sobre SQL Server e Power BI www.vssti.com.br/blog https://www.youtube.com/channel/UCj1O1SCoSyzrX1lX5HFb_8A http://www.facebook.com/sqles https://t.me/sqles http://www.facebook.com/vssti 27 9 9903-2765 vithor@vssti.com.br

Notas del editor

  1. Ensinar a galera a instalar o Visual Code
  2. 200 dólares o MCSA ou uns 800 reais Só uma prova da Oracle são quase 600 reais, no total são quase 1000 reais mais um curso obrigatório.
  3. Foi o banco de dados que ganhou mais popularidade em 2016, destacar a importância dele agora rodando no Linux para popularização.
  4. systemctl set-default multi-user.target
  5. https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-ubuntu curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add – curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
  6. https://docs.microsoft.com/en-us/sql/linux/sql-server-linux-setup-tools#ubuntu Ensinar a galera a instalar o Visual Code
  7. How many of you had perf issues with SQL that slowed down the whole system – urgent to be fixed How many of you had upgrade issues with plan regressions? Give me examples? Had Azure perf issues? Query plan choice changes can cause these problems
  8. Source: https://msdn.microsoft.com/en-us/library/dn817826(v=sql.130).aspx The point of this slide is to emphasize that Query Store comes with extraordinary UI that will help broader set of users to benefit from collected perf data immediately. SSMS is focused around handful really the most important scenarios making feature instantly useful in everyday activities of typical DBA. We want to encourage people to try out new UI and learn from it: it is a great knowledge source because people can easily learn first steps of using Query Store DMVs by analyzing queries generated by SSMS.
  9. Source: https://msdn.microsoft.com/en-us/library/dn935015(v=sql.130).aspx A temporal table is a new type of table that provides correct information about stored facts at any point in time. Each temporal table consists of two tables actually, one for the current data and one for the historical data. The system automagically ensures that when the data changes in the table with the current data the previous values are stored in the historical table. Querying constructs are provided to hide this complexity from users. For more information, see Temporal Tables. Introduction to Key Components and Concepts What is a Temporal Table? A temporal table is a table for which a PERIOD definition exists and which contains system columns with a datatype of datetime2 into which the period of validity is recorded by the system, and which has an associated history table into which the system records all prior versions of each record with their period of validity. With a temporal table, the value of each record at any point in time can be determined, rather than just the current value of each record. A temporal table is also referred to as a system-versioned table. Why Temporal? Real data sources are dynamic and more often than not business decisions rely on insights that analysts can get from data evolution. Use cases for temporal tables include: Understanding business trends over time Tracking data changes over time Auditing all changes to data Maintaining a slowly changing dimension for decision support applications Recovering from accidental data changes and application errors
  10. Source: https://msdn.microsoft.com/en-us/library/dn935015(v=sql.130).aspx The SYSTEM_TIME period columns used to record the SysStartTime and SysEndTime values must be defined with a datatype of datetime2.
  11. Source: https://msdn.microsoft.com/en-us/library/dn935015(v=sql.130).aspx The SYSTEM_TIME period columns used to record the SysStartTime and SysEndTime values must be defined with a datatype of datetime2.
  12. Policy manager creates a filter predicate and security policy App user (e.g., a nurse) selects from the Patients table The query is transparently rewritten to apply the filter predicate Notice: No app changes!
  13. Source: https://msdn.microsoft.com/en-us/library/mt130841(v=sql.130).aspx Dynamic data masking limits sensitive data exposure by masking it to non-privileged users. Dynamic data masking helps prevent unauthorized access to sensitive data by enabling customers to designate how much of the sensitive data to reveal with minimal impact on the application layer. It’s a policy-based security feature that hides the sensitive data in the result set of a query over designated database fields, while the data in the database is not changed. Dynamic data masking is easy to use with existing applications, since masking rules are applied in the query results, and there is no need to modify existing queries. For example, a call center support person may identify callers by several digits of their social security number or credit card number, but those data items should not be fully exposed to the support person. A developer can define a masking rule to be applied to each query result that masks all but the last four digits of any social security number or credit card number in the result set. For another example, by using the appropriate data mask to protect personally identifiable information (PII) data, a developer can query production environments for troubleshooting purposes without violating compliance regulations. Dynamic data masking limits the exposure of sensitive data and prevents accidental viewing by engineers that access directly databases for troubleshooting purposes or non-privileged application users. Dynamic data masking doesn’t aim to prevent privileged database users from connecting directly to the database and running exhaustive queries that expose pieces of the sensitive data. Dynamic data masking is complimentary to other SQL Server security features (auditing, encryption, row level security…) and it is highly recommended to enable them in addition in order to protect better the sensitive data in the database. Since data is masked just before being returned to the user, changing the data type to an unmasked type will return unmasked data. Dynamic data masking is available in SQL Server 2016 Community Technology Preview 2 (CTP2). However, to enable dynamic data masking, you must use trace flags 209 and 219. For Azure SQL Database, see Get started with SQL Database Dynamic Data Masking (Azure Preview portal).
  14. Source: Source: https://msdn.microsoft.com/en-us/library/mt163865(v=sql.130).aspx When it comes to mission critical security we are introducing a unique encryption technology that protects data at rest and in motion and can be full queried while encrypted. The new ADO .NET library provide transparent client-side ecryption, while SQL Server executes T-SQL queries on encrypted data. The master keys stay with the application and not with SQL Server. This can work on-premises or SQL Server in Azure VM. So think about the hybrid scenarios where you wanted to take advantage of Azure cloud computing, but for certain data could not take advantage of cloud scale due to data security requirements. This technology ensures your data is always encrypted. Best of all no application changes are required.
  15. Source: http://channel9.msdn.com/Shows/Data-Exposed/Temporal-in-SQL-Server-2016 Example of using temporal tables with Azure SQL Database stretch tables.
  16. Arquivos de demonstração em http://www.vssti.com.br/blog/wp-content/uploads/2017/04/demos-flisol2017.zip
  17. Arquivos de demonstração em http://www.vssti.com.br/blog/wp-content/uploads/2017/04/demos-flisol2017.zip