Armazenamento de imagem no sql server

SQL Server

02/12/2016

Opa pessoal, beleza?


Então, estava com uma dúvida. Sempre ao trabalhar com imagens no sql server, só usava a coluna da imagem como varchar e dava o caminho do diretório onde ela estava.

Acredito que todos devem fazer isso rs.

Mas alguém aqui já trabalhou com o armazenamento da imagem no próprio banco?

Quais seriam as vantagens e desvantagens desse recurso?
Calebe Menezes

Calebe Menezes

Curtidas 0

Melhor post

Fabio Parreira

Fabio Parreira

02/12/2016

Eu trabalho, é uma boa pela segurança, pois as imagens estão salva e o acesso acaba sendo restrito, em contrapartida, dependendo do volume de imagens, o seu banco de dados fica muito inchado. Particularmente ainda prefiro salvar a imagem na rede e somente o caminho no banco de dados.
Dependendo do banco de dados, como o SQL Server, você pode usar o FILESTREAM, que foi feito justamente para o tratamento deste tipo de arquivo, ou arquivo que superem 1MB, vale a pena dar uma conferida.
Vai de caso para caso.
GOSTEI 5

Mais Respostas

Mariana Carvalho

Mariana Carvalho

02/12/2016

Particularmente ainda prefiro salvar a imagem na rede e somente o caminho no banco de dados.


Considero essa a melhor alternativa, não sei se é verdade, mas já me falaram que o armazenamento de dados é melhor utilizado em biometria ou algo do tipo.
GOSTEI 0
Luiz Santos

Luiz Santos

02/12/2016

Particularmente ainda prefiro salvar a imagem na rede e somente o caminho no banco de dados.


Considero essa a melhor alternativa, não sei se é verdade, mas já me falaram que o armazenamento de dados é melhor utilizado em biometria ou algo do tipo.


Mariana

Em aplicações GED e Content Managements são muito utilizados.

No caso da biometria que você citou, funciona um pouco diferente.
Porque ele não compara as imagens.
Ele usa as imagens para criar um código, normalmente hexadecimal, e usa esse código como "chave"

Grande abraço
GOSTEI 0
Calebe Menezes

Calebe Menezes

02/12/2016

Opa muito interessante! Só que o problema é que o uso desse recurso deve exigir um maior investimento financeiro rs
GOSTEI 0
Mariana Carvalho

Mariana Carvalho

02/12/2016

Apenas uma correção no que disse.

"Considero essa a melhor alternativa, não sei se é verdade, mas já me falaram que o armazenamento de dados(imagem) é melhor utilizado em biometria ou algo do tipo."

Bom dia, Luiz Santos, realmente não sabia dessas informações detalhadas sobre a biometria, criar códigos para as imagens, achei interessante demais.
GOSTEI 0
João Françozo

João Françozo

02/12/2016

Bom dia,

Você pode salvar seus arquivos e imagens em campo LOB, porem quando faz isso vai ter um problema de performance, pois as paginas do SQL Server são de 8k, com isso vai ter muito leituras de paginas quando fazer uma busca.
Tem algumas configurações no text_in_row_limit e large_value_types_out_of_row para realizar o teste.

A melhor opção para isso é usar o Filestream conforme nosso amigo acima citou.
Nessa configuração não vai ter problemas de performance, pois cada linha da tabela o SQL grava um arquivo físico no disco, é mais rápido ler o disco que ficar lento os index.
GOSTEI 2
Mariana Carvalho

Mariana Carvalho

02/12/2016

Sem exigir é claro, se puderem disponibilizar links sobre o assunto, principalmente mostrando as diferenças.

Agradecida.
GOSTEI 0
João Françozo

João Françozo

02/12/2016

Olá Mariana,

Segue um video de um amigo, Dennes muito bom explicado cada um desses processos.

Vale a penas assistir.

https://www.youtube.com/watch?v=48UR59BRqrg
GOSTEI 1
Mariana Carvalho

Mariana Carvalho

02/12/2016

Obrigada João Antonio.
GOSTEI 0
Calebe Menezes

Calebe Menezes

02/12/2016

Bom dia,

Você pode salvar seus arquivos e imagens em campo LOB, porem quando faz isso vai ter um problema de performance, pois as paginas do SQL Server são de 8k, com isso vai ter muito leituras de paginas quando fazer uma busca.
Tem algumas configurações no text_in_row_limit e large_value_types_out_of_row para realizar o teste.

A melhor opção para isso é usar o Filestream conforme nosso amigo acima citou.
Nessa configuração não vai ter problemas de performance, pois cada linha da tabela o SQL grava um arquivo físico no disco, é mais rápido ler o disco que ficar lento os index.


Valeu Camarada!
GOSTEI 0
POSTAR