SlideShare uma empresa Scribd logo
1 de 29
SQL Server - de 0 a 100
 DBA Multiplataforma
@rauldoliveira
raul.oliveira@dbytes.com.br
 Meetup Brasília DataGroup
http://www.meetup.com/pt-BR/Brasilia-DataGroup/
 SQLServerDF
http://groups.google.com/group/sqlserverdf
 MTAC
http://www.mtac.org.br
Raul Oliveira
Agenda
• Objetivos da Apresentação
• Fundamentos
• Componentes
• Funcionamento
• Evolução do Produto
Objetivos da Apresentação
• Quais são os conceitos básicos sobre bancos de dados
• Fundamentos do SQL Server
• Como o Servidor SQL Server processa minhas requisições
Fundamentos
•Client X Server
Fundamentos
• Client X Server
•Instâncias e Bancos de Dados
Fundamentos
• Client X Server
•Instâncias e Bancos de Dados
Fundamentos
• Client X Server
• Instâncias e Bancos de Dados
•Filegroups
Fundamentos de Banco de Dados
• Atomicidade
• Uma transação deve ser uma unidade atômica de trabalho, ou todas
as modificações são efetuadas, ou nenhuma
• Consistência
• Quando efetivada, a transação deve deixar todos os dados e
estruturas relacionadas em um estado consistente
• Isolamento
• Uma transação não vê os dados modificados de outra transação
enquanto ainda em execução
• Durabilidade
• Transações devem ser persistidas, mesmo em caso de falha do
sistema
Componentes
Componentes
Componentes
Componentes
Background Tasks
Como tudo isso funciona?
Language
Storage
Engine
SQLOS
Protocols
RouterQuery
Adhoc
Compilação
Execução
Access
Method
Buffer
Pool
Arquivos
Dados
Transaction
Manager
Arquivos
de Log
Lock
Manager
Database
Manager
Proc
Cache
Execução
Checkpoint
Lazy Writer
SchedulerSM
Memory
Manager
RM
Broker
System
Tasks
Obrigado
Catae!
SQL Protocols e SQLOS
Client SQL
Server
______________
______________
______________
Client
C#
ADO.NET
Windows
Porta
TCP
(1433)
SQL Server
Listener
IO
Completion
Pool de Workers
1 Wait
4
Wait
5
Wait
6
Wait
2 Wait ...
4
Wait
Command
Fila TCP
Fila de
Processamento
Task
4Task
3
Task
2Task
1
Worker Thread
(Runnable)
1
Scheduler
Connection
TCP/IP
Parser
Worker
Thread
Language Processing and Execution
Task
ODS
DTC
AUT
H
CMD
ADHOC Proc
CMD
Select
From
Where
Pessoas
<
Nomes
Pessoas
Amigos
> 1000
60
Amigos
Idade
Tb
Pessoas
IDX 1 IDX 2 IDX 3
SEE
K
SCAN
TB
1
TB
2
Pacote de Redes
(4k) = Input Buffer
E c/ + 1 tabela?
Storage Engine
Tabela
A | Z | 3
Índice
1 | 2 | 3
Heap
BTree
8 KB
MemóriaDisco
Buffer Pool
MDF
NDF
FileManager
Database
Manager
Transaction Log
LDF
Transaction Manager
Situações Frequentes
• Consumo de Memória
• DBCC FREEPROCCACHE
• DBCC DROPCLEANBUFFERS
• Arquivo de Log enorme
• Backups
Evolução do Hardware
32 – Bits
64 – Bits
Numa
Solid State Disks
SSD
Terabytes de
Memória Física
Sockets Multicores
Cache
L1/L2/L3
Evolução SQL Server
SQL 2000
Sphinx /
Shiloh
Processamento Memória
Hardware/
Armazenament
o
HA
Funcionalidade
s
SQL 2005
Yukon
SQL 2008
Katmai /
Kilimanjaro
SQL 2012
Denali
SQL 2014
SQL14
Arquitetura
• Tabelas e Índices
Btree
• Create Index
Online
• Particionamento
• Row Overflow (>
8Kb)
• Row/Page
Compression
• Column Store
• Column Store
(Table Read /
Write)
• Create Index
Online Partition
• Incremental
Statistics
• Introdução ao
Thread Scheduler
• Suporte ao Hyper
Threading
• Inclusão Itanium
• Plataformas
x86/x64
• Suporte ao k-
groups (>64)
• Batch processing
• Hekaton
• Limite máximo de
3GB
• Atinge 64 GB com
AWE
• Suporte ao
NUMA
• Novo Memory
Manager (Bpool
+ Memory
Clerks)
• Consolidação
Memory Manager
• Hekaton (Database
< Memória)
• File API
• Database
snapshot
• Filestream
• TempDB Local
em Cluster
• SMB
• Filetable
• Buffer Pool
Extension
• Azure Rest API
• Failover Cluster
• Database
Mirroring
• Availability
Group
• Full Text Search
• Criptografia
• Snapshot isolation
level
• CDC
• [RG] CPU Soft
Limit
• [RG] – Memoria
(sessão)
• [RG] Memoria
(caches) –R2
• TDE
• CDC
• [RG] CPU
Máxima (hard
limit)
• [RG] Memória -
Outros
• [RG] – I/O de
Disco
Hekaton
Column Store
Numa
SQL Server não é só Engine
Relacional...
• SQL AGENT
• SSAS – SQL Server Analisys Services
• SSRS – SQL Server Reporting Services
• SSIS – SQL Server Integration Services
• MDS – Master Data Services
• DQS – Data Quality Services
• Cloud computing
• SQL Azure
• E agora... Document DB (NoSQL)
Tipos de Bancos de Dados
Tipos de Bancos de Dados
Tipos de Bancos de Dados
DBA é um dos integrantes da equipe
• Infra
• Dev
Fontes de Leitura
• PASS – www.sqlpass.org
• Edvaldo Castro – www.edvaldocastro.com
• Gustavo Maia Aguiar – http://gustavomaiaaguiar.wordpress.com
• Renato Siqueira – renatomsiqueira.com.br
• Rodrigo Gomes – www.thesqltimes.com
• Comunidade SQL – http://comunidadesqlserver.wordpress.com
• Paull Randal – www.sqlskills.com/about/paul-s-randal/
• Azure Cat (antigo SQLCat)
• ...
Muito obrigado!

Mais conteúdo relacionado

Mais procurados

Tecnologias de bancos de dados no Azure: conhecendo as opções relacionais e N...
Tecnologias de bancos de dados no Azure: conhecendo as opções relacionais e N...Tecnologias de bancos de dados no Azure: conhecendo as opções relacionais e N...
Tecnologias de bancos de dados no Azure: conhecendo as opções relacionais e N...Renato Groff
 
Bancos NoSQL no Microsoft Azure
Bancos NoSQL no Microsoft AzureBancos NoSQL no Microsoft Azure
Bancos NoSQL no Microsoft AzureJoel Rodrigues
 
Azure Stack | Visão Geral
Azure Stack | Visão GeralAzure Stack | Visão Geral
Azure Stack | Visão GeralFabio Hara
 
Escalabilidade, as modas, (No)SQL
Escalabilidade, as modas, (No)SQLEscalabilidade, as modas, (No)SQL
Escalabilidade, as modas, (No)SQLFernando Ike
 
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
 
Sobrevoando os serviços do Microsoft Azure | UNIVAG - Agosto-2021
Sobrevoando os serviços do Microsoft Azure | UNIVAG - Agosto-2021Sobrevoando os serviços do Microsoft Azure | UNIVAG - Agosto-2021
Sobrevoando os serviços do Microsoft Azure | UNIVAG - Agosto-2021Renato Groffe
 
NoSQL para Desenvolvedores .NET - Developers-SP - Setembro-2017
NoSQL para Desenvolvedores .NET - Developers-SP - Setembro-2017NoSQL para Desenvolvedores .NET - Developers-SP - Setembro-2017
NoSQL para Desenvolvedores .NET - Developers-SP - Setembro-2017Renato Groff
 
planejamento pre-instalacao win server 2012
 planejamento pre-instalacao win server 2012 planejamento pre-instalacao win server 2012
planejamento pre-instalacao win server 2012Yan Ferrari Ferreira
 
[Webinar] Performance e otimização de banco de dados MySQL
[Webinar] Performance e otimização de banco de dados MySQL[Webinar] Performance e otimização de banco de dados MySQL
[Webinar] Performance e otimização de banco de dados MySQLKingHost - Hospedagem de sites
 
Arquitetando sua aplicação de nova geração com MySQL 5.7
Arquitetando sua aplicação de nova geração com MySQL 5.7Arquitetando sua aplicação de nova geração com MySQL 5.7
Arquitetando sua aplicação de nova geração com MySQL 5.7Mathias Brem
 
Sobrevoando o Azure: uma introdução à nuvem Microsoft | WTT2021 - Mackenzie
Sobrevoando o Azure: uma introdução à nuvem Microsoft | WTT2021 - MackenzieSobrevoando o Azure: uma introdução à nuvem Microsoft | WTT2021 - Mackenzie
Sobrevoando o Azure: uma introdução à nuvem Microsoft | WTT2021 - MackenzieRenato Groffe
 
Windows Server 2016, System Center 2016 e OMS
Windows Server 2016, System Center 2016 e OMSWindows Server 2016, System Center 2016 e OMS
Windows Server 2016, System Center 2016 e OMSFabio Hara
 
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosBanco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosJoão Helis Bernardo
 

Mais procurados (20)

Banco de dados nas nuvens - aula 1
Banco de dados nas nuvens - aula 1Banco de dados nas nuvens - aula 1
Banco de dados nas nuvens - aula 1
 
Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2
 
Banco de dados nas nuvens - aula 3
Banco de dados nas nuvens - aula 3Banco de dados nas nuvens - aula 3
Banco de dados nas nuvens - aula 3
 
Ms & sap
Ms & sapMs & sap
Ms & sap
 
Tecnologias de bancos de dados no Azure: conhecendo as opções relacionais e N...
Tecnologias de bancos de dados no Azure: conhecendo as opções relacionais e N...Tecnologias de bancos de dados no Azure: conhecendo as opções relacionais e N...
Tecnologias de bancos de dados no Azure: conhecendo as opções relacionais e N...
 
MySQL - visão geral
MySQL - visão geralMySQL - visão geral
MySQL - visão geral
 
Otimizando a performance com in-memory no SQL 2016
Otimizando a performance com in-memory no SQL 2016Otimizando a performance com in-memory no SQL 2016
Otimizando a performance com in-memory no SQL 2016
 
Bancos NoSQL no Microsoft Azure
Bancos NoSQL no Microsoft AzureBancos NoSQL no Microsoft Azure
Bancos NoSQL no Microsoft Azure
 
Azure Stack | Visão Geral
Azure Stack | Visão GeralAzure Stack | Visão Geral
Azure Stack | Visão Geral
 
Escalabilidade, as modas, (No)SQL
Escalabilidade, as modas, (No)SQLEscalabilidade, as modas, (No)SQL
Escalabilidade, as modas, (No)SQL
 
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...
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
Sobrevoando os serviços do Microsoft Azure | UNIVAG - Agosto-2021
Sobrevoando os serviços do Microsoft Azure | UNIVAG - Agosto-2021Sobrevoando os serviços do Microsoft Azure | UNIVAG - Agosto-2021
Sobrevoando os serviços do Microsoft Azure | UNIVAG - Agosto-2021
 
NoSQL para Desenvolvedores .NET - Developers-SP - Setembro-2017
NoSQL para Desenvolvedores .NET - Developers-SP - Setembro-2017NoSQL para Desenvolvedores .NET - Developers-SP - Setembro-2017
NoSQL para Desenvolvedores .NET - Developers-SP - Setembro-2017
 
planejamento pre-instalacao win server 2012
 planejamento pre-instalacao win server 2012 planejamento pre-instalacao win server 2012
planejamento pre-instalacao win server 2012
 
[Webinar] Performance e otimização de banco de dados MySQL
[Webinar] Performance e otimização de banco de dados MySQL[Webinar] Performance e otimização de banco de dados MySQL
[Webinar] Performance e otimização de banco de dados MySQL
 
Arquitetando sua aplicação de nova geração com MySQL 5.7
Arquitetando sua aplicação de nova geração com MySQL 5.7Arquitetando sua aplicação de nova geração com MySQL 5.7
Arquitetando sua aplicação de nova geração com MySQL 5.7
 
Sobrevoando o Azure: uma introdução à nuvem Microsoft | WTT2021 - Mackenzie
Sobrevoando o Azure: uma introdução à nuvem Microsoft | WTT2021 - MackenzieSobrevoando o Azure: uma introdução à nuvem Microsoft | WTT2021 - Mackenzie
Sobrevoando o Azure: uma introdução à nuvem Microsoft | WTT2021 - Mackenzie
 
Windows Server 2016, System Center 2016 e OMS
Windows Server 2016, System Center 2016 e OMSWindows Server 2016, System Center 2016 e OMS
Windows Server 2016, System Center 2016 e OMS
 
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosBanco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
 

Semelhante a Arquitetura SQL Server

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 CareerMarcus Vinicius Miguel Pedro
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadospichiliani
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadospichiliani
 
MySQL no Windows: implementação eficiente de novas aplicações
MySQL no Windows: implementação eficiente de novas aplicaçõesMySQL no Windows: implementação eficiente de novas aplicações
MySQL no Windows: implementação eficiente de novas aplicaçõesMySQL Brasil
 
Desenvolvendo para o Windows Azure e SQL Azure
Desenvolvendo para o Windows Azure e SQL AzureDesenvolvendo para o Windows Azure e SQL Azure
Desenvolvendo para o Windows Azure e SQL AzureLuciano Condé
 
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 OracleFlávio Farias
 
AWS Meetup Rio - Qual banco usar e quando?
AWS Meetup Rio - Qual banco usar e quando?AWS Meetup Rio - Qual banco usar e quando?
AWS Meetup Rio - Qual banco usar e quando?Pedro Pisa
 
Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014MySQL Brasil
 
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Wagner Bianchi
 
SQL Server 2012
SQL Server 2012SQL Server 2012
SQL Server 2012Hcode
 
Real time replication using Kafka Connect
Real time replication using Kafka ConnectReal time replication using Kafka Connect
Real time replication using Kafka Connectconfluent
 
Tecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensTecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensAlessandro Binhara
 
Arquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLArquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLRaul Oliveira
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Marcos William Valentini
 
Azure SQL DataWarehouse
Azure SQL DataWarehouseAzure SQL DataWarehouse
Azure SQL DataWarehouseVitor Fava
 
Novidades do Sql Server 2016
Novidades do Sql Server 2016Novidades do Sql Server 2016
Novidades do Sql Server 2016Roberto Fonseca
 
Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014MySQL Brasil
 
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...Amazon Web Services LATAM
 

Semelhante a Arquitetura SQL Server (20)

Azure Data Overview
Azure Data OverviewAzure Data Overview
Azure Data Overview
 
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
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dados
 
Interoperabilidade entre bancos de dados
Interoperabilidade entre bancos de dadosInteroperabilidade entre bancos de dados
Interoperabilidade entre bancos de dados
 
MySQL no Windows: implementação eficiente de novas aplicações
MySQL no Windows: implementação eficiente de novas aplicaçõesMySQL no Windows: implementação eficiente de novas aplicações
MySQL no Windows: implementação eficiente de novas aplicações
 
Desenvolvendo para o Windows Azure e SQL Azure
Desenvolvendo para o Windows Azure e SQL AzureDesenvolvendo para o Windows Azure e SQL Azure
Desenvolvendo para o Windows Azure e SQL Azure
 
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
 
01 planejamento pre-instalacao
01 planejamento pre-instalacao01 planejamento pre-instalacao
01 planejamento pre-instalacao
 
AWS Meetup Rio - Qual banco usar e quando?
AWS Meetup Rio - Qual banco usar e quando?AWS Meetup Rio - Qual banco usar e quando?
AWS Meetup Rio - Qual banco usar e quando?
 
Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014Novidades do Universo MySQL Agosto 2014
Novidades do Universo MySQL Agosto 2014
 
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
 
SQL Server 2012
SQL Server 2012SQL Server 2012
SQL Server 2012
 
Real time replication using Kafka Connect
Real time replication using Kafka ConnectReal time replication using Kafka Connect
Real time replication using Kafka Connect
 
Tecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvensTecnologias para mineração de dados nas nuvens
Tecnologias para mineração de dados nas nuvens
 
Arquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLArquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQL
 
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
Pgday Campinas 2015 - Uma visão do PPAS 9.4 e PEM 5.0
 
Azure SQL DataWarehouse
Azure SQL DataWarehouseAzure SQL DataWarehouse
Azure SQL DataWarehouse
 
Novidades do Sql Server 2016
Novidades do Sql Server 2016Novidades do Sql Server 2016
Novidades do Sql Server 2016
 
Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014Novidades do Universo MySQL Maio 2014
Novidades do Universo MySQL Maio 2014
 
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
Seu banco de dados na nuvem: Opções de bancos de dados na AWS e padrões de...
 

Arquitetura SQL Server

  • 1. SQL Server - de 0 a 100
  • 2.  DBA Multiplataforma @rauldoliveira raul.oliveira@dbytes.com.br  Meetup Brasília DataGroup http://www.meetup.com/pt-BR/Brasilia-DataGroup/  SQLServerDF http://groups.google.com/group/sqlserverdf  MTAC http://www.mtac.org.br Raul Oliveira
  • 3. Agenda • Objetivos da Apresentação • Fundamentos • Componentes • Funcionamento • Evolução do Produto
  • 4. Objetivos da Apresentação • Quais são os conceitos básicos sobre bancos de dados • Fundamentos do SQL Server • Como o Servidor SQL Server processa minhas requisições
  • 6. Fundamentos • Client X Server •Instâncias e Bancos de Dados
  • 7. Fundamentos • Client X Server •Instâncias e Bancos de Dados
  • 8. Fundamentos • Client X Server • Instâncias e Bancos de Dados •Filegroups
  • 9. Fundamentos de Banco de Dados • Atomicidade • Uma transação deve ser uma unidade atômica de trabalho, ou todas as modificações são efetuadas, ou nenhuma • Consistência • Quando efetivada, a transação deve deixar todos os dados e estruturas relacionadas em um estado consistente • Isolamento • Uma transação não vê os dados modificados de outra transação enquanto ainda em execução • Durabilidade • Transações devem ser persistidas, mesmo em caso de falha do sistema
  • 14. Background Tasks Como tudo isso funciona? Language Storage Engine SQLOS Protocols RouterQuery Adhoc Compilação Execução Access Method Buffer Pool Arquivos Dados Transaction Manager Arquivos de Log Lock Manager Database Manager Proc Cache Execução Checkpoint Lazy Writer SchedulerSM Memory Manager RM Broker System Tasks Obrigado Catae!
  • 15. SQL Protocols e SQLOS Client SQL Server ______________ ______________ ______________ Client C# ADO.NET Windows Porta TCP (1433) SQL Server Listener IO Completion Pool de Workers 1 Wait 4 Wait 5 Wait 6 Wait 2 Wait ... 4 Wait Command Fila TCP Fila de Processamento Task 4Task 3 Task 2Task 1 Worker Thread (Runnable) 1 Scheduler Connection TCP/IP
  • 16. Parser Worker Thread Language Processing and Execution Task ODS DTC AUT H CMD ADHOC Proc CMD Select From Where Pessoas < Nomes Pessoas Amigos > 1000 60 Amigos Idade Tb Pessoas IDX 1 IDX 2 IDX 3 SEE K SCAN TB 1 TB 2 Pacote de Redes (4k) = Input Buffer E c/ + 1 tabela?
  • 17. Storage Engine Tabela A | Z | 3 Índice 1 | 2 | 3 Heap BTree 8 KB MemóriaDisco Buffer Pool MDF NDF FileManager Database Manager Transaction Log LDF Transaction Manager
  • 18. Situações Frequentes • Consumo de Memória • DBCC FREEPROCCACHE • DBCC DROPCLEANBUFFERS • Arquivo de Log enorme • Backups
  • 19. Evolução do Hardware 32 – Bits 64 – Bits Numa Solid State Disks SSD Terabytes de Memória Física Sockets Multicores Cache L1/L2/L3
  • 20. Evolução SQL Server SQL 2000 Sphinx / Shiloh Processamento Memória Hardware/ Armazenament o HA Funcionalidade s SQL 2005 Yukon SQL 2008 Katmai / Kilimanjaro SQL 2012 Denali SQL 2014 SQL14 Arquitetura • Tabelas e Índices Btree • Create Index Online • Particionamento • Row Overflow (> 8Kb) • Row/Page Compression • Column Store • Column Store (Table Read / Write) • Create Index Online Partition • Incremental Statistics • Introdução ao Thread Scheduler • Suporte ao Hyper Threading • Inclusão Itanium • Plataformas x86/x64 • Suporte ao k- groups (>64) • Batch processing • Hekaton • Limite máximo de 3GB • Atinge 64 GB com AWE • Suporte ao NUMA • Novo Memory Manager (Bpool + Memory Clerks) • Consolidação Memory Manager • Hekaton (Database < Memória) • File API • Database snapshot • Filestream • TempDB Local em Cluster • SMB • Filetable • Buffer Pool Extension • Azure Rest API • Failover Cluster • Database Mirroring • Availability Group • Full Text Search • Criptografia • Snapshot isolation level • CDC • [RG] CPU Soft Limit • [RG] – Memoria (sessão) • [RG] Memoria (caches) –R2 • TDE • CDC • [RG] CPU Máxima (hard limit) • [RG] Memória - Outros • [RG] – I/O de Disco Hekaton Column Store Numa
  • 21. SQL Server não é só Engine Relacional... • SQL AGENT • SSAS – SQL Server Analisys Services • SSRS – SQL Server Reporting Services • SSIS – SQL Server Integration Services • MDS – Master Data Services • DQS – Data Quality Services • Cloud computing • SQL Azure • E agora... Document DB (NoSQL)
  • 22. Tipos de Bancos de Dados
  • 23. Tipos de Bancos de Dados
  • 24. Tipos de Bancos de Dados
  • 25.
  • 26.
  • 27. DBA é um dos integrantes da equipe • Infra • Dev
  • 28. Fontes de Leitura • PASS – www.sqlpass.org • Edvaldo Castro – www.edvaldocastro.com • Gustavo Maia Aguiar – http://gustavomaiaaguiar.wordpress.com • Renato Siqueira – renatomsiqueira.com.br • Rodrigo Gomes – www.thesqltimes.com • Comunidade SQL – http://comunidadesqlserver.wordpress.com • Paull Randal – www.sqlskills.com/about/paul-s-randal/ • Azure Cat (antigo SQLCat) • ...

Notas do Editor

  1. Aqui lembrar de falar sobre os conceitos de filegroup e a simetria com o tablespace
  2. Aqui vai até os 3 min e não passa muito disso
  3. Vai de 3:35 Min até 6:26
  4. 6:26 até 11:00 ODS – Open Data Services ( o roteador do LPE do SQL Server) Em qual ordem será acessado? E a distribuição dos dados?
  5. 11:00 até 13:50
  6. Data Quality Services Master Data Services