Introdução à arquitetura DBMS
O banco de dados é uma coleção de dados relacionados. Os dados podem ser uma coleção de fatos e números que podem ser processados para obter mais informações. Um sistema de gerenciamento de banco de dados armazena dados e os recupera sempre que necessário. O usuário também pode manipular e produzir mais informações a partir dos dados atuais. Um banco de dados possui características como entidade do mundo real, tabelas baseadas em relações, isolamento de dados e aplicativo, menos redundância de dados e consistência. O DBMS também fornece uma linguagem de consulta que o torna mais eficiente e segue as propriedades do ACID. O DBMS pode ser usado por vários usuários simultaneamente. Neste tópico, vamos aprender sobre a arquitetura DBMS.
Tipos de arquitetura DBMS
Um sistema de banco de dados pode ser centralizado ou descentralizado. Isso depende da arquitetura do banco de dados. A arquitetura do banco de dados é logicamente de dois tipos:
- Arquitetura DBMS de duas camadas
- Arquitetura DBMS de 3 camadas
Um banco de dados também pode ter uma arquitetura de camada única.
Arquitetura de 1 camada
Quando uma arquitetura de camada única é usada, o banco de dados fica disponível diretamente para o usuário. O usuário pode acessar diretamente o banco de dados e usar os dados. Quaisquer alterações feitas aqui serão refletidas diretamente no banco de dados. Ele não fornece uma ferramenta útil que pode ser usada pelos usuários finais. A arquitetura de 1 camada é usada principalmente para o desenvolvimento de aplicativos locais e eles podem ser usados diretamente para se comunicar com o banco de dados e obter respostas rápidas.
Arquitetura de 2 camadas
A arquitetura DBMS de duas camadas é semelhante a uma arquitetura cliente-servidor. Nas arquiteturas de duas camadas, existem aplicativos no lado do cliente e eles podem se comunicar facilmente com o banco de dados que estaria presente no lado do servidor. Para tornar essa interação bem-sucedida, o usuário pode usar APIs como ODBC e JDBC. Todos os aplicativos e interfaces de usuário que precisam de dados para processamento são colocados no lado do cliente. O servidor assume a responsabilidade de fornecer funcionalidades como processamento de consultas e gerenciamento de transações. Para conectar esses dois e ter uma conexão com o DBMS, o aplicativo do lado do cliente pode estabelecê-lo com o lado do servidor.
ODBC, que é uma abreviação de Open Database Connectivity, que ajuda a fornecer uma API que permite que aplicativos do lado do cliente se conectem ao DBMS e depois trabalhem mais. Os fornecedores mais comuns são drivers ODBC. Esse tipo de arquitetura também fornece verificações adicionais de segurança e autenticação do DBMS para os aplicativos. Essa arquitetura é usada onde eles precisam acessar o DBMS por meio de qualquer aplicativo. Os aplicativos são independentes do banco de dados em termos de operação, design e programação. A camada de apresentação pode ser um PC, celular, tablet, etc. Um exemplo de arquitetura de duas camadas pode ser um Sistema de Gerenciamento de Contatos usando o MS Access.
Arquitetura de 3 camadas
O fator de distinção entre a camada 1, a camada 2 e a camada 3 é que os dois primeiros têm complexidade e isso é representado pela maneira como eles usam os dados presentes no banco de dados. A arquitetura de camada 3 é amplamente usada e ajuda a projetar um banco de dados de maneira eficaz. Idealmente, possui três partes:
- Banco de dados ou camada de dados : o banco de dados presente funciona em colaboração com a linguagem de processamento de consultas. As relações podem ser definidas junto com os dados e também as restrições podem ser definidas nesse nível.
- Aplicativo ou camada intermediária: a camada de aplicativo atua como uma exibição abstrata do banco de dados. Quando essa camada é usada, podemos ter o servidor de aplicativos e o programa juntos para que o banco de dados possa ser acessado. Sempre que o usuário final acessa o banco de dados, ele não tem conhecimento de qualquer existência de banco de dados presente. Da mesma forma, o banco de dados não é afetado pelo usuário que está acessando. A camada de aplicativo se concentra principalmente em ser o middleware ou gateway e agir como um mediador entre o usuário e o banco de dados.
- Usuário ou camada de apresentação: o usuário final interage com o banco de dados usando esta camada. Todas as diferentes tabelas ou visualizações podem ser usadas e podem fornecer todos os dados exigidos por um aplicativo. Esse tipo de banco de dados de várias camadas pode ser modificado sem nenhum gargalo. O motivo dessa facilidade é que os componentes são independentes e as alterações feitas nesses também são feitas de forma independente. Os usuários finais terão, pois não estão cientes de nada do que está acontecendo no back-end. Ambas as entidades executam suas tarefas individuais enquanto a camada do aplicativo as gerencia.
Também pode ser dito como uma extensão da arquitetura de duas camadas. A camada intermediária do aplicativo entre as camadas de banco de dados e usuário é aquela que compreende a linguagem de acesso ao banco de dados e ajuda no processamento de solicitações do usuário final ao DBMS. Às vezes, também há uma camada adicional que pode ser adicionada e que fornece uma interface gráfica do usuário para o usuário final, para que ele possa interagir com o usuário final. A camada da GUI atua como um sistema de banco de dados para o usuário final. O usuário final não tem idéia sobre a camada de aplicativo ou sobre o sistema DBMS. A camada de aplicativo (camada de lógica de negócios) também processa lógica funcional, restrição e regras antes de passar dados para o usuário ou para o DBMS
O objetivo da arquitetura de três camadas é:
- Suporte a várias visualizações de dados
- Ajuda na programação de independência de dados
- Propor suporte à arquitetura DBMS
- Ele separa os aplicativos do usuário do banco de dados físico
Conclusão: Arquitetura do DBMS
DBMS é onde os dados podem ser armazenados e usados como e quando necessário. Os dados podem ser utilizados, criados e modificados conforme as necessidades do usuário. Uma arquitetura de gerenciamento de banco de dados ajuda no design, desenvolvimento, implementação e manutenção do banco de dados. Existem basicamente duas arquiteturas ideais e uma adicional. A arquitetura de camada única possui o cliente, servidor e banco de dados em que todos residem na mesma máquina. Uma arquitetura de duas camadas é uma arquitetura de banco de dados em que há uma camada de apresentação que é executada na máquina cliente e os dados são armazenados na máquina servidor. A terceira e última é a arquitetura de três camadas, que consiste em uma camada de apresentação que pode ter um PC, tablet, celular, etc., camada de aplicativo e servidor de banco de dados. A camada de aplicativo é usada para interagir com as outras duas camadas. Como resultado, esses dados podem ser mantidos adequadamente e permanecem seguros.
Artigos recomendados
Este foi um guia para a arquitetura DBMS. Aqui discutimos os tipos de arquitetura DBMS com o objetivo de uma arquitetura de três camadas. Você também pode consultar nossos outros artigos sugeridos para saber mais -
- O que é o Elasticsearch?
- Introdução ao DBMS
- Perguntas da entrevista do DBMS
- DBMS vs RDBMS