none
Como Exibir Milhões de Registros Na Mesma Página de Relatórios do Reporting Services? RRS feed

  • Pergunta

  • Saudações a todos,

    Estou com um relatório pronto para colocar em produção porém me deparei com um problema que eu até então eu desconhecia.

    Este relatório atualmente conta com aproximadamente 4 milhões de registros para serem exibidos (este relatório traz informações de updates do Microsoft System Center para cada estação do ambiente).

    Com este volume de informações torna-se impossível a carga do relatório e inclusive até mesmo durante o desenvolvimento do mesmo eu tive que limitar a quantidade de registros durante os testes pois o timeout é fatal quando se tenta carregar estes 4 milhões de registros na mesma página ou até mesmo em páginas segmentadas.

    Eu gostaria de saber se há alguma forma de fazer este relatório funcionar com esta grande quantidade de registros?

    Tem alguma outra forma de criar este relatório do Report Builder?

    Estou usando uma tabela simples com 3 campos.

    E lembrando que esta quantidade é sempre crescente a cada dia de acordo com as novas atualizações da Microsoft.


    Mosar M. Filho Analista Suporte / Consultor SharePoint - Project Server

    terça-feira, 11 de março de 2014 14:14

Respostas

  • Olá Durval!

    Obrigado pela pronta e rápida resposta.

    Concordo com suas colocações. Tanto é que hoje na versão antiga da aplicação o relatório foi construído de forma correta tendo uma estrutura de 3 relatórios (relatório principal, sub-relatório e relatório de detalhamento).

    Porém meu cliente quer desfazer esta estrutura lógica correta apenas para não ter que ficar clicando em parâmetros e navegando entre relatórios e por isto fomos para esta linha de raciocínio de um relatório único o qual acabou em um resultado de uma impossível exibição de mais de 4 milhões de registros!

    Obrigado e grande abraço!


    Mosar M. Filho Analista Suporte / Consultor SharePoint - Project Server

    Mosar,

    Muito provavelmente seu usuário quer ter menos trabalho, mas não sabe a dor de cabeça que está para receber.

    Se possível, o melhor à ser feito seria demonstrar que na prática o relatório deve ser utilizado para análise rápida, consolidada.

    Recomende exportar estes dados, no mesmo modelo que o usuário está pedindo, em uma planilha Excel ou CSV para que se faça o controle e a consulta quando necessário. Este processo você pode realizar com o Integration Services e executar à noite, sem impacto na sua produção.

    Assim todos ganham e tanto você como seu usuário terão dores de cabeça à menos no futuro.

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    • Sugerido como Resposta Edinaldo Junior terça-feira, 11 de março de 2014 19:31
    • Não Sugerido como Resposta Edinaldo Junior terça-feira, 11 de março de 2014 19:31
    • Marcado como Resposta Mosar Miguel Filho terça-feira, 11 de março de 2014 19:34
    terça-feira, 11 de março de 2014 19:23

Todas as Respostas

  • Mosar,

    A melhor solução para evitar de sobrecarregar o processamento do seu servidor, apenas com um relatório, é realmente delimitar os registros que você deseja visualizar, seja por um período ou por outra condição relevante.

    Afinal, mesmo sendo uma geração pontual de dados para este relatório eu não acredito que haverá alguém para ver e analisar 4 milhões de registros.

    Algo que pode ajudar é criar um índice com estes 3 campos, mas mesmo assim o ideal é limitar o que realmente deve ser consultado e analisado com este relatório.

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    terça-feira, 11 de março de 2014 14:22
  • Olá Durval!

    Obrigado pela pronta e rápida resposta.

    Concordo com suas colocações. Tanto é que hoje na versão antiga da aplicação o relatório foi construído de forma correta tendo uma estrutura de 3 relatórios (relatório principal, sub-relatório e relatório de detalhamento).

    Porém meu cliente quer desfazer esta estrutura lógica correta apenas para não ter que ficar clicando em parâmetros e navegando entre relatórios e por isto fomos para esta linha de raciocínio de um relatório único o qual acabou em um resultado de uma impossível exibição de mais de 4 milhões de registros!

    Obrigado e grande abraço!


    Mosar M. Filho Analista Suporte / Consultor SharePoint - Project Server

    terça-feira, 11 de março de 2014 15:44
  • O maior problema seria a renderização do Reporting Services, ai sim que está o problema.

    Você ja chegou a dar uma olhada nas opções de ajuste de memoria para o reporting services? Ou até mesmo colocar esse reporting services em um server dedicado?

    http://technet.microsoft.com/en-us/library/ms159206.aspx

    Parametros de busca por data também ajudariam, acredito eu.


    Att,
    Marcos Freccia [MTA|MCTS|MCITP|MCT SQL Server 2008]
    Blog|Twitter
    Assine também os feeds clicando aqui

    terça-feira, 11 de março de 2014 15:59
  • Olá Durval!

    Obrigado pela pronta e rápida resposta.

    Concordo com suas colocações. Tanto é que hoje na versão antiga da aplicação o relatório foi construído de forma correta tendo uma estrutura de 3 relatórios (relatório principal, sub-relatório e relatório de detalhamento).

    Porém meu cliente quer desfazer esta estrutura lógica correta apenas para não ter que ficar clicando em parâmetros e navegando entre relatórios e por isto fomos para esta linha de raciocínio de um relatório único o qual acabou em um resultado de uma impossível exibição de mais de 4 milhões de registros!

    Obrigado e grande abraço!


    Mosar M. Filho Analista Suporte / Consultor SharePoint - Project Server

    Mosar,

    Muito provavelmente seu usuário quer ter menos trabalho, mas não sabe a dor de cabeça que está para receber.

    Se possível, o melhor à ser feito seria demonstrar que na prática o relatório deve ser utilizado para análise rápida, consolidada.

    Recomende exportar estes dados, no mesmo modelo que o usuário está pedindo, em uma planilha Excel ou CSV para que se faça o controle e a consulta quando necessário. Este processo você pode realizar com o Integration Services e executar à noite, sem impacto na sua produção.

    Assim todos ganham e tanto você como seu usuário terão dores de cabeça à menos no futuro.

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    • Sugerido como Resposta Edinaldo Junior terça-feira, 11 de março de 2014 19:31
    • Não Sugerido como Resposta Edinaldo Junior terça-feira, 11 de março de 2014 19:31
    • Marcado como Resposta Mosar Miguel Filho terça-feira, 11 de março de 2014 19:34
    terça-feira, 11 de março de 2014 19:23