Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Mysql ou postgres

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    Duvida Mysql ou postgres

    Olá pessoal, tenho que desenvolver uma pequena solução GED, pesquisei, mesmo a maioria das pessoas recomendando por os arquivos no disco e apenas o caminho no bd, resolvi por tudo no banco, com isso garanto mais integridade e segurança aos arquivos, ´pretendo por apenas imagens no bd, talvez pdf, mais a maioria será imagens, bom, tava pensando em usar Mysql, mais daí surgiu uma duvida, nesse caso, com a base cheia de imagens e dados, pesada, não seria melhor usar o postgres já que ele se comporta melhor com volume maior de dados? Bom espero a ajuda de todos, estou meio perdido, desde já agradeço a todos, abraços!

  • Font Size
    #2
    Eu não usaria um banco de dados, é uma camada extra de complexidade desnecessária.
    O volume de dados que você vai trabalhar ainda é infimo pra essas soluções, a diferença de performance entre eles é totalmente irrelevante.
    Quanto a integridade, você pode fazer algo bem razoavel com o próprio filesystem, basta fazer as checagens de erro adequadas.Lembrando que uma corrupção no FS implica em uma corrupção do DB (que guarda seus arquivos nesse) mas não a reciproca.Ainda nesses termos, o PostgreSQL é bem melhor que o mysql, sendo ACID-compliant e tendo outras vantagens.
    Segurança aqui é só uma questão de modelagem.Nos dois casos se o cara tiver acesso ao FS ele já tem acesso aos dados independente das restrições do DB (como permissões de usuário).Faz o teste, move os arquivos de extensão myd, myi e frm da pasta data/"nomedb" do mysql pra outra instalação.Vai ter que criptografar os dados e gerenciar as chaves nos dois casos.
    Se fosse pra usar um banco de dados, seria o sqlite, é o que melhor se adequa a esse caso.
    A integridade, a performance e o uso de espaço são meio conflitantes, você como desenvolvedor tem que decidir o que englobar na sua solução.
    Por exemplo, salvar os arquivos comprimidos diminui o espaço utilizado mais adiciona um overhead de descompressão do mesmo jeito que salvar backups e fazer checagens de integridade conflita com os outros 2 aspectos.
    Um sketch poderia ser:
    -Escreva os dados criptografados em um arquivo e faça checagens para que tenha certeza de que ocorreu corretamente.
    -Se a chave for gerada pelo programa, envie para o usuário por um meio de comunicação seguro.
    -Faça e exiba o checksum desse arquivo com alguma função qualquer (sugiro uma de hashing como SHA-1 ou MD5).
    -Comprima com outros arquivos em um backup.
    -Na abertura de um programa ou arquivo, cheque o checksum e se não bater reescreva com o que tem em backup.

    Programar e desenvolver é diferente. hehe
    Espero que tenha ficado claro.

    Comment

    X
    Working...
    X