Um banco de dados é uma aplicação que lhe permite armazenar e obter de volta dados com eficiência. O relacionamento se dá pela maneira como os dados são armazenados e organizados no banco de dados através de tabelas, com colunas e linhas. Estas tabelas são usadas para gravar os dados referentes ao objeto ou entidade relacionado. Onde cada linha representa os valores do objeto enquanto suas colunas definem tipos de dados a serem gravados que definem o objeto, ou seja, seus atributos.

Algumas definições importantes que devem ser apresentadas de um banco de dados relacional, como sua interface de comunicação o SQL, a sua integridade de dados, ou seja, a forma em que os bancos mantem sua precisão e consistência de dados, assegurada principalmente pelo seu sistema de transações que garantem que “tudo ou nada” seja gravado.

SQL

O SQL, ou Structured Query Language, tornou-se padrão do American Nacional Standards Institute (ANSI) em 1986, e este padrão de SQL é seguido por todos mecanismos populares de banco de dados relacionais, e alguns tem como padrão funções específicas referentes a ele, como adicionar, atualizar ou excluir linhas, ou mesmo recuperar dados para processamento de transação, além de analisar e gerenciar aspectos do banco.

Integridade de Dados

A integridade de dados se deve as várias constraints que ajudam nas regras de negócio evitando a gravação de campos importantes sem dados ou com dados errados, algumas dessas constraints são chaves primárias, chaves estrangeiras entre outras. Outra forma que os bancos têm para manter sua integridade é a transação, que deve ser completa como uma só e caso não aconteça nada é gravado e tudo volta como estava anteriormente.

As transações em bancos de dados devem estar em conformidade com o ACID, ou seja, atômicas, consistentes, isoladas e duráveis para que possam garantir a integridades dos dados no banco. A atomicidade prevê que toda transação deva ser executada com êxito, e no caso de falha seja invalidada. A consistência prevê que os dados gravados em banco por meio de uma transação devem aderir a todas regras definidas e suas restrições. O isolamento garante que cada transação seja independente por si só. A Durabilidade garante que toda alteração feita no banco seja permanente assim que a transação seja concluída com êxito.

Comparação

Tendo em vista o conteúdo abordado alguns bancos de dados serão comparados em alguns quesitos. Funcionalidades fundamentais que são implementadas nativamente em um SGBD, limites de tamanho de dados, recursos do banco de dados, são alguns dos dados que serão comparados.

  • Funcionalidades fundamentais:

As funcionalidades principais que contenham em cada banco comparado são: ACID, Transações e que tipo de interface é usada em cada um dos bancos.

  • Limites

Informações sobre os limites de tamanhos de dados.

  • Recursos do banco de dados

Alguns recursos utilizados pelos bancos de dados para consultas em suas tabelas.

Pode-se perceber que com os dados comparados todos seguem um mesmo caminho, apenas algumas funcionalidades e recursos divergentes que dependendo da aplicação que irá utilizar pode gerar uma vantagem ou desvantagem.

Felipe Modesto

Links

https://elias.praciano.com/2013/09/o-que-e-um-banco-de-dados-relacional/

https://aws.amazon.com/pt/relational-database/

https://www.postgresql.org/docs/devel/static/explicit-locking.html

https://mariadb.com/kb/en/mariadb/mariadb-10122-release-notes/

https://dev.mysql.com/doc/relnotes/mysql/5.7/en/

http://www.oracle.com/technetwork/database/rdb/learnmore/rdb-pmatrix-rdb-086351.html

https://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems