Por que não usar arquivos txt protegidos como uma especie de banco de dados?

1. Por que não usar arquivos txt protegidos como uma especie de banco de dados?

Mikael
kael3305

(usa XUbuntu)

Enviado em 27/04/2019 - 16:01h

Bom, então navegando pela a internet vejo sempre a recomendação de utilização de banco de dados, não encontrei nenhuma justificativa satisfatória até então.


Obrigado pela atenção.


  


2. Re: Por que não usar arquivos txt protegidos como uma especie de banco de dados?

Hugo Cerqueira
hrcerq

(usa Outra)

Enviado em 27/04/2019 - 16:38h

Olha, eu até concordo que existe uma valorização excessiva dos bancos de dados relacionais. Muito do que é feito neles poderia ser feito com mais qualidade e agilidade usando arquivos de texto normais.

Mas existem sim situações em que eles são imprescindíveis. Vou começar pelo mais crítico: controle de transações. Bancos de dados relacionais em geral fazem um esforço desmedido para garantir a atomicidade, consistência, isolamento e durabilidade (ACID) das transações. Pesquise sobre ACID se não souber o que isso significa.

Outro aspecto importante é a exigência de uma esquematização dos dados durante a escrita. Isto é, quando um dado é persistido, ele deve obedecer a um critério específico para que a transação seja bem-sucedida. Um campo do tipo integer, por exemplo, só poderá receber números inteiros. Um campo not null não poderá receber valores nulos. Um campo varchar(50) não poderá receber valores com mais do que 50 caracteres.

Implementar esse tipo de controle em arquivos não é trivial, e não haveria centralização sobre esse controle. Em um SGBD relacional, você garante que o esquema dos dados é definido em um só lugar.

E ainda, existe também uma questão de compressão e eficiência no uso do disco. Um banco relacional bem implementado evitará ao máximo o armazenamento do mesmo dado de maneira repetida. Usam compressão e nos dão a possibilidade também de aplicar as regras de normalização para economizar o máximo possível no uso de disco.

---

Atenciosamente,
Hugo Cerqueira

Devuan - https://devuan.org/


3. Re: Por que não usar arquivos txt protegidos como uma especie de banco de dados?

Mikael
kael3305

(usa XUbuntu)

Enviado em 27/04/2019 - 17:02h

hrcerq escreveu:

Olha, eu até concordo que existe uma valorização excessiva dos bancos de dados relacionais. Muito do que é feito neles poderia ser feito com mais qualidade e agilidade usando arquivos de texto normais.

Mas existem sim situações em que eles são imprescindíveis. Vou começar pelo mais crítico: controle de transações. Bancos de dados relacionais em geral fazem um esforço desmedido para garantir a atomicidade, consistência, isolamento e durabilidade (ACID) das transações. Pesquise sobre ACID se não souber o que isso significa.

Outro aspecto importante é a exigência de uma esquematização dos dados durante a escrita. Isto é, quando um dado é persistido, ele deve obedecer a um critério específico para que a transação seja bem-sucedida. Um campo do tipo integer, por exemplo, só poderá receber números inteiros. Um campo not null não poderá receber valores nulos. Um campo varchar(50) não poderá receber valores com mais do que 50 caracteres.

Implementar esse tipo de controle em arquivos não é trivial, e não haveria centralização sobre esse controle. Em um SGBD relacional, você garante que o esquema dos dados é definido em um só lugar.

E ainda, existe também uma questão de compressão e eficiência no uso do disco. Um banco relacional bem implementado evitará ao máximo o armazenamento do mesmo dado de maneira repetida. Usam compressão e nos dão a possibilidade também de aplicar as regras de normalização para economizar o máximo possível no uso de disco.

---

Atenciosamente,
Hugo Cerqueira

Devuan - https://devuan.org/



Obrigado pela resposta! Não entendi muita coisa, mas consegui algumas palavras-chave para buscar.




4. Re: Por que não usar arquivos txt protegidos como uma especie de banco de dados?

Hugo Cerqueira
hrcerq

(usa Outra)

Enviado em 27/04/2019 - 18:27h

kael3305 escreveu:

hrcerq escreveu:

Olha, eu até concordo que existe uma valorização excessiva dos bancos de dados relacionais. Muito do que é feito neles poderia ser feito com mais qualidade e agilidade usando arquivos de texto normais.

Mas existem sim situações em que eles são imprescindíveis. Vou começar pelo mais crítico: controle de transações. Bancos de dados relacionais em geral fazem um esforço desmedido para garantir a atomicidade, consistência, isolamento e durabilidade (ACID) das transações. Pesquise sobre ACID se não souber o que isso significa.

Outro aspecto importante é a exigência de uma esquematização dos dados durante a escrita. Isto é, quando um dado é persistido, ele deve obedecer a um critério específico para que a transação seja bem-sucedida. Um campo do tipo integer, por exemplo, só poderá receber números inteiros. Um campo not null não poderá receber valores nulos. Um campo varchar(50) não poderá receber valores com mais do que 50 caracteres.

Implementar esse tipo de controle em arquivos não é trivial, e não haveria centralização sobre esse controle. Em um SGBD relacional, você garante que o esquema dos dados é definido em um só lugar.

E ainda, existe também uma questão de compressão e eficiência no uso do disco. Um banco relacional bem implementado evitará ao máximo o armazenamento do mesmo dado de maneira repetida. Usam compressão e nos dão a possibilidade também de aplicar as regras de normalização para economizar o máximo possível no uso de disco.

---

Atenciosamente,
Hugo Cerqueira

Devuan - https://devuan.org/



Obrigado pela resposta! Não entendi muita coisa, mas consegui algumas palavras-chave para buscar.



Fico feliz em ajudar. A ideia era essa mesmo, palavras-chaves para você buscar. Procure sobre os conceitos de bancos de dados relacionais e tudo vai fazer sentido.

---

Atenciosamente,
Hugo Cerqueira

Devuan - https://devuan.org/


5. Re: Por que não usar arquivos txt protegidos como uma especie de banco de dados?

Guilherme
guipsp

(usa Ubuntu)

Enviado em 28/04/2019 - 20:52h

Já existe todo um conjunto de rotinas para armazenar e consultar os dados. Se quer algo simples dê uma olhada no SQLite.

Depende da aplicação pode se usar texto mesmo, uma representação em JSON fica interessante para algumas situações.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts