none
Particionamento de Tabelas no SQL2005 RRS feed

Respostas

  • Olá Analista Boy,

    Esse assunto já foi discutido aqui no fórum, de uma olhada no link que segue e veja se lhe ajuda para esclarecer suas dúvidas.

    Particionamento SQl Server 2005
    http://social.msdn.microsoft.com/Forums/pt-BR/520/thread/15f8bf69-bb27-4a46-8ac0-2a146cb132ef

    Qualquer dúvida é só publicar, estarei sempre à disposição para melhor lhe atender.

    Caso tenha lhe ajudado não se esqueça de marca como útil, só assim ajudará a melhorar a qualidade do fórum.

    Heberton Melo
    MCP | MCTS em SQL Server 2008 | Projetista de Dados

    Blog:
    http://heberton-melo.spaces.live.com/

    • Marcado como Resposta Fernanda Simões quarta-feira, 14 de outubro de 2009 13:04
    sexta-feira, 9 de outubro de 2009 18:34
  • Boa Noite,

    Sim. Há desvantagens em utilizar o particionamento tanto no SQL Server 2005, quanto no 2008 quanto em qualquer outro banco de dados que trabalhe com particionamento. Quando você particiona uma tabela, você está fazendo com que o banco de dados introduza controles adicionais nas operações de gravação, já que é necessário que o registro seja mapeado para a partição correta. Mesmo durante a consulta, será necessário verificar qual será a partição que o registro deve estar e isso irá requer alguns passos extras. Para que isso realmente valha a pena, é imprescindível que você atenda os seguintes pré-requisitos:

    - Você já otimizou suas consultas
    - Você já tentou resolver o problema com o uso de indexação (incluindo cover queries)
    - Sua tabela é suficientemente volumosa (não me refiro somente a quantidade de registros, mas o tamanho da tabela que é o que conta.)
    - Suas consultas utilizam o valor do campo particionado durante as consultas (não adianta particionar por data, se você faz muitas consultas por CPF)

    Caso você não tenha obedecido a esses quatro pré-requisitos, o particionamento só lhe trará dores de cabeça. Já utilizei o particionamento em uma tabela de 2 milhões de registros e o desempenho ficou pior.

    Estou desconsiderando dessa minha resposta as vantagens natas do particionamento em relação à administração como reindexação, expurgo, etc

    [ ]s,
     
    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Hash Indexes – Uma implementação no SQL Server – Parte I
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!750.entry


    Classifique as respostas. O seu feedback é imprescindível
    • Marcado como Resposta Fernanda Simões quarta-feira, 14 de outubro de 2009 13:04
    domingo, 11 de outubro de 2009 03:44

Todas as Respostas

  • Olá Analista Boy,

    Esse assunto já foi discutido aqui no fórum, de uma olhada no link que segue e veja se lhe ajuda para esclarecer suas dúvidas.

    Particionamento SQl Server 2005
    http://social.msdn.microsoft.com/Forums/pt-BR/520/thread/15f8bf69-bb27-4a46-8ac0-2a146cb132ef

    Qualquer dúvida é só publicar, estarei sempre à disposição para melhor lhe atender.

    Caso tenha lhe ajudado não se esqueça de marca como útil, só assim ajudará a melhorar a qualidade do fórum.

    Heberton Melo
    MCP | MCTS em SQL Server 2008 | Projetista de Dados

    Blog:
    http://heberton-melo.spaces.live.com/

    • Marcado como Resposta Fernanda Simões quarta-feira, 14 de outubro de 2009 13:04
    sexta-feira, 9 de outubro de 2009 18:34
  • Analista Boy,

    Que tipo de desvantagem você se refere?

    Basicamente o particionamento tem como objeto aumentar a performance de desempenho para acesso aos dados, como também, proporcionar uma organização e distribuição de dados de acordo com uma faixa de valores.
    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    sábado, 10 de outubro de 2009 20:36
  • Boa Noite,

    Sim. Há desvantagens em utilizar o particionamento tanto no SQL Server 2005, quanto no 2008 quanto em qualquer outro banco de dados que trabalhe com particionamento. Quando você particiona uma tabela, você está fazendo com que o banco de dados introduza controles adicionais nas operações de gravação, já que é necessário que o registro seja mapeado para a partição correta. Mesmo durante a consulta, será necessário verificar qual será a partição que o registro deve estar e isso irá requer alguns passos extras. Para que isso realmente valha a pena, é imprescindível que você atenda os seguintes pré-requisitos:

    - Você já otimizou suas consultas
    - Você já tentou resolver o problema com o uso de indexação (incluindo cover queries)
    - Sua tabela é suficientemente volumosa (não me refiro somente a quantidade de registros, mas o tamanho da tabela que é o que conta.)
    - Suas consultas utilizam o valor do campo particionado durante as consultas (não adianta particionar por data, se você faz muitas consultas por CPF)

    Caso você não tenha obedecido a esses quatro pré-requisitos, o particionamento só lhe trará dores de cabeça. Já utilizei o particionamento em uma tabela de 2 milhões de registros e o desempenho ficou pior.

    Estou desconsiderando dessa minha resposta as vantagens natas do particionamento em relação à administração como reindexação, expurgo, etc

    [ ]s,
     
    Gustavo Maia Aguiar
    http://gustavomaiaaguiar.spaces.live.com

    Hash Indexes – Uma implementação no SQL Server – Parte I
    http://gustavomaiaaguiar.spaces.live.com/blog/cns!F4F5C630410B9865!750.entry


    Classifique as respostas. O seu feedback é imprescindível
    • Marcado como Resposta Fernanda Simões quarta-feira, 14 de outubro de 2009 13:04
    domingo, 11 de outubro de 2009 03:44
  • Maia,

    Respeito suas considerações que são extremamente valiosas, mas resumindo o participando que eu sempre destaco, representa mais uma cada de acesso até o SQL Server encontrar o dado desejado.
    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    terça-feira, 13 de outubro de 2009 16:32