1) O documento discute soluções de alta disponibilidade do SQL Server, incluindo AlwaysOn Availability Groups e Failover Clustering.
2) O SQL Server AlwaysOn fornece alta disponibilidade e recuperação de desastres no nível do banco de dados combinando database mirroring e log shipping.
3) O documento também discute novos recursos do SSAS como o ColumnStore Index.
1. SQL Server AlwaysON
ColumnStore Index
Novidades para o SSAS
Viviane Ribeiro Power Pivot e Power View
Especialista em Banco de Dados e BI
Microsoft
V-viviar@microsoft.com
7. 1. Alta disponibilidade local (site
Log
Shipping principal) com failover
automático.
DB
Mirroring
2. Réplica do banco de dados
A
Failover em um terceiro servidor no site
Clustering
A principal para execucão de
A relatórios.
3. Se o site principal cair, deve-
se fazer failover para o site de
contingência (DR).
Relatórios 4. Para reduzir custo, replicação
entre storage não é uma opção.
Backups
5. Permitir a execução de
backup no terceiro servidor do
Movimentação Movimentação de site principal.
de dados Síncrona dados Assíncrona
7 |
8. Failover Clustering (FC)
Requer uma storage compartilhada
Não permite nó secundário ativo (leitura ou backup)
Para disaster recovery (DR)
Requer replicação síncrona entre storages ou uma combinação de
FC com Database Mirroring ou Log Shipping
Database Mirroring
Failover automático: requer SNAC ou o parâmetro FailoverPartner
na string de conexão, Witness
Não permite conexão dos sistemas utilizando nome virtual
É possível leitura no secundário utilizando database snapshot no
mirror
8 |
9. Log Shipping
Não permite failover automático
Nós secundários offline (não permite leitura nos secundários)
Failover manual no nível de banco de dados
9 |
10. Novas soluções com AlwaysOn
AlwaysOn Failover Cluster
AlwaysOn Availability Groups
proteção no nível de banco de dados Instances
proteção no nível de instância
Failover de múltiplos bancos de Multisite Clustering através
dados de subnets
Múltiplos servidores secundários Política de Failover
Flexível
Sevidores secundários ativos
Windows Server Core
Gerenciamento integrado através
de um Dashboard TEMPDB em disco local
Suporte a nome e IP virtual
10 |
11. Availability Groups fornece alta disponibilidade e disaster
recovery no nível de banco de dados combinando database
mirroring e log shipping
Flexibilidade Integração e eficiência
Failover de múltiplos bancos de dados Servidores secundários ativos
Múltiplos secundários Leitura nos secundários
Total de 4 secundários Backup nos secundários
2 síncronos Redirecionamento automático da
1 par com failover automático aplicação utilizando nome virtual
2 assíncronos Configuração utilizando Wizard
Compressão e criptografia integrada Dashboard Integrado
Failover automático e manual Integração com System Center
Política de failover flexível Automação via power-shell
Recuperação de páginas automático
11 |
12. Windows Server Failover Cluster (WSFC)
InstânciaB InstânciaC
InstânciaA
A A A
Sincronização de Log Sincronização de Log
Secundário Primário Secundário
Availability Group usa WSFC para:
12 |
13.
InstânciaA InstânciaB InstânciaC
DB_RH DB_RH DB_RH
AG_RH
VAG_RH
Secundário
Primário Secundário
Primário Secundário
As aplicações tentam reconexão durante o failover
-server VAG_RH;-catalog DB_RH A conexão é reestabelecida com
o novo primário assim que o
failover é concluído e o nome
virtual ficar online
13 | 26/11/2011 | Footer Goes Here
14. SQL Server AlwaysOn Availability Group
SQL Server AlwaysOn é uma solução de alta Failover para múltiplos databases
disponibilidade com muito mais abrangência Multiplos servidores secundários
Servidores secundários como leitura
Maior disponibilidade para as aplicações Backup nos servidores secundários
Maior retorno sobre o investimento Movimentação de dados Síncrona e
Simplicidade para implementação e gerenciamento Assíncrona
Atende a pequenos médios e grandes ambientes Compressão e criptografia integrados
Baixo custo (reaproveitamento de hardware) Failover automático e manual
Política de failover mais flexível
Maior flexibilidade e eficiência na configuração
Reparação de páginas automático
de alta disponibilidade com AlwaysOn Redirecionamento automático das
Availability Group aplicações usando nome e IP virtual
Configuração através de Wizard
AlwaysOn Dashboard
Integração com System Center
Automação via power-shell
Rica infraestrutura de diagnósticos
14 | 26/11/2011 |
15. “Denali” AlwaysOn Resource Center
http://msdn.microsoft.com/en-us/sqlserver/gg490638(en-us,MSDN.10)
SQL Server® Code Name “Denali” website
www.microsoft.com/sqlserver
What's New topic for Availability Enhancements on MSDN
http://msdn.microsoft.com/en-us/library/cc645581(v=SQL.110).aspx
SQL Server Denali (CTP 3) Product Guide v1.0
http://www.microsoft.com/download/en/details.aspx?id=27069
16.
17. Otimiza as consultas ao data warehouse
Novo columnstore index
Melhora a execução de consultas query execution
Fácil de Usar
Reduz TCO
18. Star schema
Tabelas Fato coloque columnstore indexes aqui
Tabelas Dimensão
Star joins
Consultas que contém agregações de dados
20. SELECT TOP 10 p.ModelName, p.EnglishDescription,
SUM(f.SalesAmount) as SalesAmount
FROM FactResellerSalesPart f, DimProduct p, DimEmployee e
WHERE f.ProductKey=p.ProductKey
AND e.EmployeeKey=f.EmployeeKey
AND f.OrderDateKey >= 20030601
AND p.ProductLine = 'M' -- Mountain
AND p.ModelName LIKE '%Frame%'
AND e.SalesTerritoryKey = 1
GROUP BY p.ModelName, p.EnglishDescription
ORDER BY SUM(f.SalesAmount) desc;
24. Crie a Tabela
Carregue os dados dentro da Tabela
Crie um non-clustered Columnstore index em
todas, ou algumas colunas
CREATE NONCLUSTERED COLUMNSTORE INDEX ncci ON
myTable(OrderDate, ProductID, SaleAmount)
Object Explorer
25.
26. • Use o columnstore index
select distinct (SalesTerritoryKey)
from dbo.FactResellerSales with (index (ncci))
• Use um indíce diferente
select distinct (SalesTerritoryKey)
from dbo.FactResellerSales with (index (ci))
• Ignore columnstore
select distinct (SalesTerritoryKey)
from dbo.FactResellerSales
option(ignore_nonclustered_columnstore_index)
30. Método 1: Desabilitar o columnstore index
Desabilitar (ou excluir) o indíce
ALTER INDEX my_index ON MyTable DISABLE
Atualize a Tabela
Recontrua o Columnstore index
ALTER INDEX my_index ON MyTable REBUILD
31. Método 2: Use Particionamento
Carregue os novos dados dentro de uma staging table
Construa o columnstore index
CREATE NONCLUSTERED COLUMNSTORE INDEX my_index ON
StagingT(OrderDate, ProductID, SaleAmount)
Faça o Split para Partição vazia
Faça o Switch da partição para dentro da tabela
ALTER TABLE StagingT SWITCH TO T PARTITION 5
32. Maior parte do Workload Read-only
Workflow permite particionamento ou recriação do índice
Queries com agregações de uma grande quantidade de
dados
34. Atualizações Frequentes na tabela
Partition switching ou rebuilding index não seja possível
como parte do workflow
Frequente pequenas consultas look up
Neste caso Indíce B-tree traz uma melhor performance
37. BI Semantic Model
Client Tools
Analytics, Reports, Scorecards,
Dashboards, Custom Apps
BI Semantic Model
Data model
Business logic
and queries
BI Pessoal BI na Equipe BI Corporativo
Data access PowerPivot for Excel PowerPivot for SharePoint Analysis Services
Data Sources Um Modelo para todas as Experiências do Usuário final
Databases, LOB Applications, OData Feeds,
Spreadsheets, Text Files