SQL Server 2008 Database Performance e Escalabilidade - abordagem da Microsoft
13 de outubro de 2008 por Mircea Goia Miscellaneous Diversos
Estes são trechos do informe oficial "Microsoft SQL Server 2008 Performance and Scale", publicado aqui (MyTestBox.com got the permisison da Microsoft para imprimi-la aqui).
Microsoft SQL Server 2008 incorpora as ferramentas e tecnologias que são necessárias para implementar bancos de dados relacionais, sistemas de informação, dados e armazéns de escala empresarial, e proporciona melhor desempenho e capacidade de resposta. Com o SQL Server 2008, você pode tirar vantagem das mais recentes tecnologias de hardware, reduzindo-se os seus servidores para apoiar a consolidação de servidores. SQL Server 2008 também permite que você faça escala para fora das suas soluções de dados maior.
Introdução
As empresas precisam de acesso fácil e prontamente disponíveis dados de negócios para que eles possam competir no mercado global. Em resposta a esta necessidade, relacionais e de análise de dados continuam a crescer em tamanho, embutido navio bases de dados com muitos produtos, muitas empresas e consolidar servidores para aliviar as preocupações de gestão.
As empresas devem manter um desempenho ideal enquanto o seu ambiente de dados continua a crescer em tamanho e complexidade.
Este white paper descreve o desempenho e escalabilidade do Microsoft ® SQL Server ® 2008 e explica como você pode usar esses recursos para:
- * Otimizar o desempenho de todo o tamanho do banco de dados com as ferramentas e recursos que estão disponíveis para o mecanismo de banco de dados, serviços de análise, relatórios de serviços, e serviços de integração.
* Escala de seus servidores para tirar pleno partido das novas capacidades de hardware.
* Escala para fora de seu ambiente de banco de dados para otimizar a capacidade de resposta e para mover seus dados mais perto de seus usuários.
Otimizando o desempenho com o SQL Server 2008
Porque seus dados corporativos continua a crescer em tamanho e complexidade, é necessário tomar medidas para proporcionar um máximo de vezes o acesso aos dados. SQL Server 2008 inclui muitos recursos e melhorias para otimizar o desempenho em todas as suas áreas de funcionalidade, incluindo relacional Online Transaction Processing (OLTP) bases de dados; Online Analytical Processing (OLAP) bases de dados, relatórios e dados de extração, transformação e carregamento (ETL) processos.
Relational Database Performance
Na maioria dos ambientes empresariais, bancos de dados relacionais estão no cerne de aplicações críticas aos negócios e serviços.
Como aumentar o volume de dados, eo número de usuários e aplicações que são dependentes de dados relacional armazena cresce, as organizações devem ser capazes de assegurar um desempenho consistente e capacidade de resposta dos seus sistemas de dados.
SQL Server 2008 fornece um mecanismo de banco de dados robusto que suporta grandes bases de dados relacionais e processamento de consultas complexas.
Mensuráveis, Real-World Performance
SQL Server 2008 se baseia no desempenho líder na indústria de versões anteriores do SQL Server para fornecer o mais alto nível possível de desempenho do banco de dados para a sua organização.
Tendo demonstrado as capacidades de alta performance do SQL Server no passado com o TPC Transaction Processing Performance Council-C benchmark, a Microsoft foi o primeiro fornecedor de dados para publicar os resultados da mais recente benchmark TCP-E, que representa com mais precisão os tipos de cargas de trabalho OLTP que são comuns nas organizações modernas.
Além disso, o SQL Server demonstre capacidade para seu desempenho em larga escala, as cargas de trabalho de armazenamento de dados através de resultados TPC-H em 3-terabyte e 10-terabyte categorias. (Para aferir os resultados actuais, consulte o site da CTP em www.tpc.org.)
High Performance Query Processing Engine
A alta performance de processamento de consulta do SQL Server ajuda os usuários a maximizar seu desempenho de aplicativos. O mecanismo de processamento de consulta avalia consultas e gera ótima planos de execução de consulta que são baseados em estatísticas mantidas dinamicamente sobre índices, seletividade chave, e os volumes de dados.
Você pode bloquear esses planos de consulta em SQL Server 2008 para garantir um desempenho consistente para consultas normalmente executado. O mecanismo de processamento de consulta também pode tirar vantagem de multi-core ou sistemas multi-processador e gerar planos de execução que tiram proveito de paralelismo com o desempenho aumentar ainda mais.
Normalmente, a operação mais dispendiosa em termos de desempenho da consulta é disco I / O. As capacidades de cache dinâmico do SQL Server reduzir a quantidade de acesso ao disco físico que é necessário para recuperar e modificar dados, eo motor de processamento de consulta pode melhorar significativamente o desempenho geral usando read-ahead varreduras para antecipar as páginas de dados que são necessários para um determinado plano de execução e lê-los antecipadamente para o cache. Além disso, o SQL Server 2008 suporte nativo para compressão de dados pode reduzir o número de páginas de dados que deve ser lido, o que melhora a performance em I / O ligados a cargas de trabalho.
SQL Server 2008 suporta o particionamento de tabelas e índices, que permite aos administradores controlar a localização física dos dados através da atribuição de partições da mesma tabela ou índice para vários grupos de arquivos em diferentes dispositivos de armazenamento físico. Otimizações para o mecanismo de processamento de consultas no SQL Server 2008 que possa paralelizar o acesso aos dados particionado, o que aumenta significativamente o desempenho.
Performance Optimization Tools
SQL Server 2008 inclui o SQL Server Profiler eo Database Engine Tuning Advisor. Ao utilizar o SQL Server Profiler você pode capturar um rastreamento dos eventos que ocorrem em um trabalho típico para sua aplicação, e depois repetir que seguem no Database Engine Tuning Advisor, que gera e implementa as recomendações para a indexação e particionamento dos dados, assim você pode otimizar o desempenho de sua aplicação.
Depois de criar os índices e partições que melhor se adequam a carga de trabalho de sua aplicação, você pode usar o SQL Server Agent para agendar um plano de manutenção automatizado de dados.
A manutenção periódica automatizada reorganiza ou recria índices, e as atualizações de índice e seletividade estatísticas, de forma consistente para assegurar um desempenho otimizado como inserções de dados e fragmento modificações das páginas de dados físicos do seu banco de dados.
Resource Governor
Muitas vezes, um único servidor é usado para fornecer vários serviços de dados. Em alguns casos, muitas aplicações e cargas de trabalho dependem da mesma fonte de dados. Como a actual tendência para consolidação de servidores continua, pode ser difícil para proporcionar um desempenho previsível para uma determinada carga de trabalho, porque outras cargas de trabalho no mesmo servidor que competem por recursos do sistema.
Com várias cargas de trabalho em um único servidor, os administradores devem evitar problemas como a consulta de um fugitivo que morre de fome uma outra carga de trabalho dos recursos do sistema, ou baixas cargas de trabalho de alta prioridade que afectam negativamente a alta? Cargas prioritárias.
SQL Server 2008 inclui o Resource Governor, que permite aos administradores definir limites e atribuir prioridades às cargas de trabalho individuais que estão sendo executados em uma instância do SQL Server.
As cargas de trabalho são baseadas em fatores como usuários, aplicativos e bancos de dados. Ao definir os limites dos recursos, os administradores podem minimizar a possibilidade de consultas de fuga, bem como limitar os recursos que estão disponíveis para cargas de monopolizar recursos. Ao definir as prioridades, os administradores podem otimizar o desempenho de um processo de missão crítica, mantendo previsibilidade para as outras cargas de trabalho no servidor.
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ....
Armazenamento de Dados e Análise de Desempenho
Ambientes de data warehouse deve manter-se com crescente volume de dados e necessidades dos utilizadores e manter o desempenho ideal. As consultas de data warehouse se tornam mais complexas, cada parte da consulta deve ser otimizada para manter um desempenho aceitável. No SQL Server 2008, o otimizador de consulta dinamicamente pode introduzir um filtro de bitmap otimizado para melhorar o desempenho da consulta de junção em estrela consultas.
Analysis Services aplicações geralmente exigem cálculos complexos e grandes. Tempo do processador precioso é desperdiçado por computação agregações que resolver para NULL ou zero.
Bloco de cálculos no SQL Server 2008 Analysis Services usam valores padrão, minimizar o número de expressões que devem ser computados, e limitar a navegação nas células de uma vez por todo o espaço, ao invés de uma vez para cada célula, o que melhora significativamente o desempenho de computação.
Embora Multidimensional OLAP (MOLAP) partições de proporcionar um desempenho superior de consulta, as organizações que necessitam de escrever capacidades de volta antes eram obrigados a utilizar Relational OLAP (ROLAP) partições para manter a escrita quadros de volta.
SQL Server 2008 adiciona a capacidade de realizar operações de write-back em partições MOLAP, que remove a degradação do desempenho que é causado pela manutenção ROLAP escrever mesas-costas.
Reporting Services Performance
O SQL Server 2008 Reporting Services motor foi re-projetado para adicionar um maior desempenho e escalabilidade para Reporting Services com o processamento sob demanda. Os relatórios não são mais obrigados a memória, pois o processamento do relatório agora usa um cache sistema de arquivos para se adaptar à pressão de memória. O processamento de relatório também pode adaptar-se a outros processos que consomem memória.
A nova arquitetura de renderização elimina problemas de memória uso de versões anteriores dos processadores. Estes novos processadores fornecem também melhorias, como um verdadeiro processador de dados adicionados ao representante de CSV, e apoio para as regiões de dados aninhados nested e sub-relatórios no Microsoft Office Excel ® renderizador.
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ....
Ampliação com o SQL Server 2008
A consolidação de servidores, grandes armazéns de dados e consultas complexas requerem recursos físicos para suportar as cargas de trabalho diferentes rodando em um servidor. SQL Server 2008 tem a capacidade de tirar pleno partido das mais recentes tecnologias de hardware.
Várias instâncias de banco de dados de motores e de serviços análise de vários casos pode ser instalado em um único servidor para consolidar o uso hardware. Tal como muitos como 50 casos, pode ser instalado em um único servidor sem comprometer o desempenho ou a capacidade de resposta.
Suporte a Hardware
SQL Server 2008 tira o máximo partido do hardware modernas, incluindo 64-bit, sistemas multi-core e multi-. Para suportar o aumento dos relatórios, análise, e carrega o acesso aos dados, o SQL Server pode endereçar até 64 GB de memória e suporta alocação dinâmica de memória mapeada para AWE em 32-bit hardware, e pode dirigir-se até 8 terabytes de memória de 64-bit hardware.
Quando um grande número de processadores são adicionados a um servidor, o acesso à memória pode ser abrandado se o transformador deve acessar memória que não é local para o processador. Hardware construída para o acesso à memória não-uniforme (NUMA arquitetura) supera as limitações de acesso a memória, permitindo que os processadores para acessar a memória local.
O SQL Server está ciente de NUMA de hardware, assim que proporciona às empresas uma maior escalabilidade e mais opções de desempenho. Você pode tirar vantagem do NUMA computadores baseados sem mudanças de configuração do aplicativo. SQL Server 2008 suporta tanto NUMA de hardware e soft-NUMA.
Hot-adicionar hardware
Embora você possa facilmente ampliar uma instância do SQL Server através da adição de memória ou processadores, programar o tempo de inatividade para adicionar hardware para incrementar suas aplicações de missão crítica e vinte e quatro horas por dia, sete dias--a-operações de semana pode ser difícil .
Com o SQL Server 2008, você pode ampliar seu servidor adicionando processadores e memória para máquinas compatíveis, sem ter que interromper os seus serviços de banco de dados.
Os seguintes requisitos devem ser cumpridos para Hot-adicionar memória:
- * SQL Server 2008 Enterprise Edition
* Windows ® Server 2003 Enterprise Edition ou Windows Server 2003 Datacenter Edition
* 64-bit SQL Server ou 32-bit SQL Server com suporte AWE activado
* Hardware de seu fornecedor de hardware que suporta além de memória, ou software de virtualização
* SQL Server foi iniciado com a opção-h
Os seguintes requisitos devem ser cumpridos para hot-add CPUs:
- * SQL Server 2008 Enterprise Edition
* Windows Server ® 2008 Enterprise Edition para Sistemas Itanium ou Windows Server 2008 Datacenter Edition para sistemas 64 bits
* 64-bit SQL Server
* O hardware que suporta adições CPU, ou software de virtualização
Simultaneidade Advanced Features
O objetivo de dimensionar o seu servidor de banco de dados é o de apoiar um número crescente de usuários ou aplicações. Como o número de usuários aumenta, a resposta pode ser afetada por problemas de concorrência quando várias transações tentam acessar os mesmos dados.
SQL Server 2008 oferece vários níveis de isolamento para suportar uma variedade de soluções que a simultaneidade equilíbrio com integridade ler. Para linha de nível? Versão suporte, SQL Server 2008 inclui um nível de isolamento de leitura confirmada que usa a opção de banco de dados READ_COMMITTED_SNAPSHOT e um nível de isolamento de instantâneo que usa a opção de banco de dados ALLOW_SNAPSHOT_ISOLATION.
Além disso, o escalonamento de bloqueios em uma tabela de configuração permite-lhe melhorar o desempenho e manter a concorrência, especialmente quando consultando tabelas particionadas.
Dimensionando o com o SQL Server 2008
Além da ampliação servidores individuais para suportar ambientes de cultivo de dados, o SQL Server 2008 oferece ferramentas e capacidades para escalar bases de dados para aumentar o desempenho de bases de dados muito grande e para mover os dados mais próximos aos usuários.
Bancos de dados compartilhados e escaláveis
Armazéns de dados são tipicamente usado por vários consumidores de dados somente leitura, como a análise e soluções de relatórios, e pode ficar sobrecarregada com pedidos de dados, que reduz a capacidade de resposta.
Para superar este problema, o SQL Server 2008 suporta bases de dados partilhada escalável, que fornecem uma maneira de escalar somente leitura de dados de informação através de várias instâncias de banco de dados do servidor para distribuir a carga de trabalho mecanismo de consulta e isolar consultas intensivas de recursos.
O recurso de banco de dados compartilhado escalonável permite aos administradores criar uma leitura dedicada fonte de dados apenas por cópias de montagem de um read-only banco de dados em vários servidores de relatório. Aplicações acesso a uma cópia consistente dos dados, independente do servidor de relatórios a que se conectar.
Roteamento dependente de dados
Quando uma empresa decide escalar a sua estrutura de banco de dados em um banco de dados federado, deve determinar a forma de dividir os dados logicamente entre os servidores e como encaminhar pedidos para o servidor apropriado.
Com o SQL Server 2008, você pode implementar roteamento dependente de dados como um serviço usando o Service Broker para consultas de rota para os locais apropriados.
Peer-to-Peer Replication
A replicação ponto a ponto pode fornecer uma escala eficaz, a solução em que cópias idênticas de um banco de dados são distribuídas para locais em toda a organização, de modo que as alterações feitas na cópia local dos dados são propagadas automaticamente para as outras cópias replicadas. SQL Server 2008 ajuda a reduzir o tempo necessário para implementar e gerenciar uma rede peer-to-peer solução de replicação com o novo Peer-to-Peer assistente Topologia e designer visual.
Ao usar peer-to-peer de replicação que você pode habilitar aplicativos para ler ou modificar os dados em qualquer um dos bancos que participam na replicação.
Enquanto versões anteriores do SQL Server necessária administradores para parar as atividades em tabelas publicadas em todos os nós antes de conectar um novo nó a um nó existente, o SQL Server 2008 permite que os nós de novo a ser adicionado e ligado, mesmo durante a atividade de replicação.
As notificações de consulta
A maioria dos aplicativos da empresa são baseados em uma arquitetura de três camadas em que os dados são recuperados do servidor de banco de dados por um ou mais servidores de aplicação (muitas vezes um Web farm), que por sua vez é acessado por computadores cliente. Para melhorar o desempenho, muitos servidores de aplicação cache de dados para fornecer respostas mais rápidas aos usuários.
Uma limitação dos dados armazenados em cache é a necessidade de atualizar os dados, porque se os dados não são atualizados com freqüência suficiente, os usuários poderão receber dados antigos que já não é preciso. Atualizando os dados mais freqüentemente adiciona sobrecarga que pode finalmente diminuir o desempenho no servidor de aplicativos. SQL Server 2008 ajuda os aplicativos para usar cache de aplicativo com mais eficiência usando notificações de consulta para notificar automaticamente aplicativos de nível médio, quando os dados armazenados em cache está desatualizado.
O servidor de aplicativo pode se inscrever para notificação de consulta para que ele seja informado quando as atualizações que afetam os dados armazenados em cache são executadas no banco de dados. O servidor de aplicação pode então atualizar dinamicamente o cache com os dados atualizados.
Bancos de dados compartilhados e escaláveis para o Analysis Services
Embora o SQL Server 2005 Analysis Server cubos geralmente são dados somente para leitura, cada instância mantém seu próprio diretório de dados. Embora você possa criar várias cópias de um banco de dados Analysis Services, os cubos de sincronização entre vários servidores, o processo de sincronização cubo introduz latência que pode ser inaceitável em muitos ambientes de negócios.
SQL Server 2008 Analysis Services supera estes problemas através do apoio a uma implantação de Análise de implantação de serviços em que uma única leitura centralizada única cópia do banco de dados do Analysis Services é compartilhada por várias instâncias e acessado através de um único endereço IP virtual como mostra a Figura 2 .
Conclusão
SQL Server 2008 proporciona um ambiente rico e poderoso para todas as necessidades de seus dados. Ele é otimizado para oferecer o melhor desempenho do motor através do seu banco de dados relacional avançado, Analysis Services, Reporting Services e Integration Services.
Novos e bem estabelecidos ferramentas e técnicas de trabalho em conjunto para ajudar as empresas a implantar qualquer tamanho de ambiente de dados e para manter o desempenho ideal.
SQL Server 2008 suporta as últimas tendências da tecnologia para proporcionar às empresas a flexibilidade de escala de servidores individuais e consolidar as cargas de trabalho para esses servidores. Ele também proporciona às empresas com as tecnologias que são necessárias para dimensionar os maiores bancos de dados.
Para mais informações:
- Microsoft SQL Server 2008
- SQL Server Developer Center
- SQL Server TechCenter
"Reproduzido do SQL Server 2008 Performance and Scale papel branco com permissão da Microsoft Corporation. Todos os direitos reservados. O texto completo pode ser encontrado aqui. "
Sphere: Related Content Quer mais software web opiniões, notícias e dicas / truques?
Em seguida, certifique-se de assinar o nosso feed RSS!
Tags: banco de dados, microsoft, performance, escalabilidade, solução, SQL Server 2008, whitepaper































Deixe uma Resposta
Comentários adicionais powered by BackType