Carregando ...
Desculpe, ocorreu um erro ao carregar o conteúdo.

33209Re: [mssql-l] tempo de pesquisa (upload / download) - imagem em arquivo ou em banco de dados

Expandir mensagens
  • Paulo Palopoli
    23 de nov de 2016
      Olá Vitor, todas as experiências que tive em sistemas que armazenavam a imagem em banco foram negativas, o procedimento para colocar e tirar a imagem do banco tornam a aplicação mais pesada, sem contar que o servidor web é otimizado para servir arquivos do disco, e isso é perdido.

      Minha recomendação é não faze-lo, e se está procurando performance, utilize discos SSD e habilite cache HTTP para o diretório de imagens (facilmente configurado via web.config/.htaccess) eles tornaram a aplicação mais rápida!

      Mesmo que o SQL Server tenha evoluído nos últimos anos, as técnicas para servir esta imagem não são "naturais" e cada ação a mais irá consumir recurso adicional, ou seja, não há como haver ganhos de performance.




      Em Quarta-feira, 23 de Novembro de 2016 9:16, "Vitor Bueno vycthor@... [mssql-l]" <mssql-l@...> escreveu:


       
      Olá pessoal, 

      estou com uma dúvida de processo e gostaria de uma ajuda de vocês referente ao seguinte caso na empresa:

      - fazemos escaneamento de documentos para atendimentos médicos (prontuários, resultados de exames e afins) e disponibilizamos isto na web para o cliente baixar. Isto já funciona.

      Temos hoje 360 mil arquivos que ocupam 80GB em disco. Estou avaliando de melhorar este processo (inclusive backup).  


      Dúvidas:

      1. um insert desta imagem no banco de dados é melhor (ou mais rápido) ser feita direto no banco de dados ou em forma de arquivo mesmo?

      2. o download, por sua vez, fica melhor (mais veloz) buscar de um banco indexado ou procurar numa estrutura de arquivos?

      3. uma imagem salva em arquivo ocupa o mesmo tamanho de uma imagem em SQL - digo, salvando no banco de dados, 10mil imagens o banco aumentaria de tamanho os mesmos bytes que 10mil arquivos salvos em diretório?



      Alguém teria alguns pitacos para dar neste processo?

      Operamos com SQLServer 2012.


      Grato pela colaboração.

      Vitor


    • Mostrar todas as 6 mensagens neste tópico