none
Criação Indice - Tabela particionada RRS feed

  • Pergunta

  • Senhores, boa tarde

     

    Preciso criar um índice cluster em uma tabela particionada de quase 300 milhoes de registros. Estou criando o indice no mesmo partition scheme utilizando a mesma coluna particionada, que é um campo por data.

     

    Essa operação esta utilizando muita área de sorte, 100 GB não estão sendo suficientes e no fim da operação tenho um erro por falta de espaço.

     

    Existe alguma maneira de criar esse índice sem que seja necessária a utilização de tanto disco? Pelo que li, a criação de um índice alinhado a tabela, efetua a criação do mesmo em uma partição de cada vez, mas pela quantidade de disco utilizado acredito que a operação esta sendo feita na tabela inteira de uma vez só.

     

    Obrigado


    Andre Savioli
    segunda-feira, 11 de abril de 2011 20:19

Respostas

  • Caro André, é importante lembrar que ao particionar um índice clusterizado não exclusivo, por padrão, o Database Engine do SQL Server adiciona a coluna de particionamento à lista de chaves de índices clusterizados, se ela já não estiver especificada. 

    Se o partition_scheme_name ou filegroup não for especificado e a tabela for particionada, o índice será colocado no mesmo esquema de partição, usando a mesma coluna de particionamento que a tabela, portanto especifique na criação do índice particionado.

    Qualquer dúvida estou a disposição

    Atenciosamente,

    Marcondes Alexandre
    Visite o meu site: http://marcondesalexandrebr.wordpress.com
    Me siga no Twitter: @marcondesalex

    domingo, 17 de abril de 2011 00:46

Todas as Respostas

  • André,

    Vamos lá, você esta utilizando uma tabela particionada em quantos filegroups?

    Este índices esta sendo criado sobre qual partição?


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    quarta-feira, 13 de abril de 2011 18:45
    Moderador
  • Caro André, é importante lembrar que ao particionar um índice clusterizado não exclusivo, por padrão, o Database Engine do SQL Server adiciona a coluna de particionamento à lista de chaves de índices clusterizados, se ela já não estiver especificada. 

    Se o partition_scheme_name ou filegroup não for especificado e a tabela for particionada, o índice será colocado no mesmo esquema de partição, usando a mesma coluna de particionamento que a tabela, portanto especifique na criação do índice particionado.

    Qualquer dúvida estou a disposição

    Atenciosamente,

    Marcondes Alexandre
    Visite o meu site: http://marcondesalexandrebr.wordpress.com
    Me siga no Twitter: @marcondesalex

    domingo, 17 de abril de 2011 00:46
  • André,

    Normalmente eu trabalho com o particionando dos índices especificando em qual filegroup ele deverá ficar alocado.


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    terça-feira, 19 de abril de 2011 18:01
    Moderador