Planejamento e Operação de Ambientes SharePoint Multi-Terabyte
Aline Maia e Fabricio CataePremier Field EngineeringMicrosoft
SUP302
Enquete sobre a audiência
SharePoint Ops, SQL DBA ou ambos?Experiência com SharePoint 2007? (1-3 anos, +)Bancos de dados acima de 200 GB/1 TB?Problemas de perfomance e gerenciamento?
Agenda
Visão Geral SharePoint e SQLFatores de PerformanceMelhores PráticasPerguntas e RespostasConsiderações Finais
Arquitetura SharePoint
Os Bancos de Dados SharePoint
Farm
• Config• Servers• Web Apps• Solutions• Global
Config
Web App
• Content 1..2• Site
Collections• Sites• Lists• Pages• Itens
SSP
• Search• Properties
• SSP• My site
host config• Profiles• BDC config• Excel Calc
MOSS Content Databases
Bancos SharePoint(Do Ponto de Vista do DBA)
Configuração Padrão vs RecomendadoRevisar as configurações iniciais
1 arquivo DATA / 1 arquivo LOGArquivos no mesmo discoTamanhos default de arquivosAutogrow = 10%
Recomendação:Separar os arquivos de DATA e LOGPre-alocar o tamanho dos arquivosUtilizar mais de um arquivo de DATA (apenas Content e Search)Configurar “Autogrow” em 100MB-1GBDefinir o tamanho máximo dos bancos
Configuração do TempDBTEMPDB é utilizado por rotinas internas do SQL Server
Algoritmos de Hash/SortTabelas temporáriasTipos de dados XML/varchar(max)/textVersionamento de linhas
Recomendações:Colocar os arquivos do TEMPDB em spindles dedicadosUtilizar múltiplos arquivos de dados (1 por CPU)Pre-alocar o tamanho dos arquivos de DATA e LOGDefinir um tamanho de AutoGrow entre 100MB e 1GB
Fatores de Performance
Diversos fatores podem influenciar na performance do ambiente:
Sizing / TopologiaCarga / SLAsForma de uso (ex. “Publishing”, “Collaboration”)Hardware (CPU, memória, rede e disco)
Foco no SQL e ambientes multi-terabyte...
Performance de Disco
Fatores que influenciam o desempenhoVelocidadeNúmero de discosControladora
Disco - Conceitos
Track
Sector(512 bytes)
Platter
Spindle
Escolha dos DiscosSpindle (motor): Velocidade de Rotação
7200 RPM
10k RPM
15k RPM
Performance x Tamanho
Tamanho não é documento
300GB1TB
Controladora
Agrupamento (RAID)RedundânciaPerformance
Cache
Agrupamento
EspelhamentoRAID-10
ParidadeRAID-5
PP
PP
Leitura:16 Spindles
Escrita:8 Spindles
800GB
1200GB
Leitura:16 Spindles
Escrita:4 Spindles
Agrupamento
EspelhamentoRAID-10
ParidadeRAID-5
PP
PP
Leitura:24 Spindles
Escrita:12 Spindles
1200GB
1200GB
Leitura:16 Spindles
Escrita:4 Spindles
Cache
Cache de LeituraUtilizado para leituras sequenciaisNão apresenta ganhos com leitura aleatória
Cache de EscritaAs escritas são efetivadas em cache, posteriormente copiadas ao discoGanho significativo em escrita de log (<1ms)Possível otimização do RAID-5 (escrita sequencial)
Spindles Compartilhados
Spindles Dedicados
Performance de Disco
Fatores que influenciam o desempenhoEnterprise Class Disk (SCSI/FC/SAS)Discos 10k/15k RPMWrite-Cache habilitadoRedundância RAID-10Spindles compartilhados/dedicados
Workloads SQL Server
Nome do Banco DescriçãoMaster/Model/Msdb Base de Sistema (SQL)Config/SSP Configuração MOSSSearchDB Indexação e Busca no SiteContent ConteúdoTempDB Rotinas Internas
SSP
Falando em Performance: Disk I/O
Search
Config
Content N
Temp
MasterMSDB
Tlogs
AUMENTO DA DEMANDA
Content B
Content A
...
Separação de Workload
Exemplo:Rotinas de backup de conteúdo ocorrendo no mesmo período que a indexação e a importação de profiles
Recomendação:Separar os volumes de acordo com o workloadUsar spindles dedicados para garantir máxima performance
ExemploNome do Banco Rotinas Acesso a Disco Volume (ex) RAID
Master/Model/Msdb Sistema Pouco acesso G: RAID1/RAID5
Config/SSP Gestão da Farm Pouco acesso G: RAID1/RAID5
SearchDB Index/CrawlingQuery
Leitura+Escrita H: RAID1+0
Content Navegação e Conteúdo Leitura M,N,O,P RAID1+0/RAID5
TempDB Rotinas Internas Leitura+Escrita T: RAID1+0
Log – SearchDB Indexação Escrita I: RAID1
Log – TempDB Rotinas Internas Escrita J: RAID1
Log – ContentDB Inserir Conteúdo Escrita K: RAID1
Separação de Volumes
Rotinas de Funcionamento e Manutenção do SharePoint
Performance “Killers”Indexing / CrawlingBackup (Central Admin, STSADM, SQL)Profile ImportTimer Jobs Consulta com múltiplos retornos (ex. listas com + 2000 itens)
Melhores Práticas: Content DBs
100 Content DBs por Web Application100 GBs por Content DBSLA: Tempo de Backup/ Restore
Lembrar: Dados de uma Site Collection estão sempre no mesmo Content DB. Portanto, separe os Sites em múltiplos Site Collections para uma mesma Web Application (trabalhe com “Managed Paths”).Estrutura de “My Sites” já baseada em múltiplos Site Collections (mais simples de balancear entre Content DBs).
Referência: “Plan for Software Boundaries”http://technet.microsoft.com/en-us/library/cc262787.aspx
Melhores Práticas: Objetos em DBObjetos Sugestões para melhor performance Escopo impactado
Site Collection 50.000 por content database Farm
Site Collection 150.000 por Web application Farm
Sites 250.000 por Site Collection Site Collection
Subsite 2.000 por Site-Pai Site View
Document 5 milhões por biblioteca Library
Item 2.000 por view List View
Tamanho de Arquivos 50 MB (2 GB max) Library, Tempo de upload do arquivo
Listas 2.000 por Site Site e Site Collection
Melhores Práticas: Múltiplos DATA
O uso de múltiplos arquivos Data é suportado apenas para bancos de dados Content DB e Search
SQL Server partitioning NÃO é suportado para bancos SharePoint. Use Data Files simples.
Use apenas PRIMARY filegroup
Crie Data Files de tamanhos iguais
Ao usar múltiplos Data Files, utilize uma solução de backup/restore DIFERENTE de Central Admin/ stsadm. (SharePoint backup e restore não é “filegroup-aware”)
Melhores Práticas: Backup / Restore
Ferramentas “Central Admin” e “STSADM” recomendadas apenas para bancos com menos de 100 GB. Para Enterprise, utilizar soluções corporativas (ex. Microsoft Data Protection Manager)
Vale ressaltar: customizações que envolvam a distribuição de DLLs, alterações de web.config, criação de features e conteúdos no diretório “12” NÃO são ‘backupadas’ com o uso das ferramentas SharePoint!
Leitura obrigatória “Data protection and recovery for Office SharePoint Server”: http://technet.microsoft.com/en-us/library/cc262129.aspx
Documentação Recomendada“Physical storage recommendations for Office SharePoint Server” - http://technet.microsoft.com/en-us/library/cc298801.aspx
“Case Study: Using Microsoft Office SharePoint Server to implement a large-scale content storage scenario with rapid search availability” - http://technet.microsoft.com/en-us/library/cc262067.aspx
“White paper: Working with large lists in Office SharePoint Server 2007” - http://technet.microsoft.com/en-us/library/cc262813.aspx
“Additional performance and capacity planning factors” http://technet.microsoft.com/en-us/library/cc263061.aspx
“Configure High Availability”http://technet.microsoft.com/en-us/library/dd207313.aspx
Estudo de Caso: MSW (Intranet MS)
Veja também:http://download.microsoft.com/download/1/f/7/1f79634e-f46d-43f1-b06d-9688a5855d32/CreatingEffectiveEnterprisePortalsTWP.doc
“How Microsoft IT Increases Availability and Decreases Rendering Time of SharePoint Sites” – Technical Whitepaper
http://download.microsoft.com/download/0/E/B/0EBA7263-A555-4279-B9DD-1720F0139A2E/SharePointOptimizationTWP.doc
Considerações FinaisO planejamento da distribuição das Site Collections em múltiplos Content DBs é importante fator de performance e manutenibilidade do ambiente.
Tenha um ambiente Multi-Terabyte (com múltiplos databases) ao invés de bancos Multi-Terabyte.
Esteja atento para as configurações padrão de criação dos bancos de dados. Separe os arquivos de DATA e LOG, pre-aloque o tamanho dos arquivos, configurando “Autogrow” para valor entre 100MB e 1GB.
Recursos
www.microsoft.com/teched Tech·Talks Tech·Ed BloggersLive Simulcasts Virtual Labs
http://www.technetbrasil.com.br
Avaliação de produtos finais e betas, conteúdo técnico em português e MUITO MAIS!
http://www.msdnbrasil.com.br
Developer’s Kit, conteúdo técnico em português, e MUITO MAIS!
Sessões Relacionadas DBP401 - Tudo sobre Alta Disponibilidade no SQL Server (26/08, 13:15 - 14:30) Apresentado por Andre Hass
OFC304 - Implementado Governança com Microsoft Office SharePoint Server 2007 (26/08 15:00 - 16:15) – Apresentado por Roberval Ranches
OFD304 - Sites Internet com SharePoint e Silverlight (26/08 16:45 - 18:00) – Por Thiago Soares
OFC305 - Planejamento de testes e capacidades para Microsoft Office SharePoint Server 2007 (27/08 08:45 - 10:00) – Por Rodolfo Roim e Fabio Camara
Por favor preencha a avaliação
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED
OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
ANEXOS
SQL Server 2008 e SharePoint (inglês)“Hardware and software requirements”
http://msdn.microsoft.com/en-us/library/ms143506.aspx
“To support SQL 2008, Windows SharePoint Services 3.0 Service Pack 1 must be installed”
http://www.microsoft.com/downloads/details.aspx?FamilyID=875da47e-89d5-4621-a319-a1f5bfedf497&DisplayLang=en
“Matrix of features available within each edition of SQL Server 2008”
http://msdn.microsoft.com/en-us/library/cc645993.aspx
SQL Server 2008 e SharePoint (inglês)
“Manageability Enhancements”Policy-based administrationBack-up compressionhttp://technet.microsoft.com/en-us/library/cc645579.aspx
“High Availability Enhancements”Data mirroring enhancementshttp://technet.microsoft.com/en-us/library/cc645581.aspx