MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Mangusto:Esquema vs Modelo?


No mangusto, um esquema representa a estrutura de um documento específico, completamente ou apenas uma parte do documento. É uma maneira de expressar propriedades e valores esperados, bem como restrições e índices. Um modelo define uma interface de programação para interagir com o banco de dados (ler, inserir, atualizar, etc). Assim, um esquema responde "como serão os dados nesta coleção?" e um modelo fornece funcionalidades como "Existem registros correspondentes a esta consulta?" ou "Adicionar um novo documento à coleção".

No RDBMS direto, o esquema é implementado por instruções DDL (criar tabela, alterar tabela, etc), enquanto não há um conceito direto de um modelo, apenas instruções SQL que podem fazer consultas altamente flexíveis (instruções de seleção), bem como inserir, atualizar , excluir operações.

Outra maneira de pensar nisso é que a natureza do SQL permite que você defina um "modelo" para cada consulta selecionando apenas campos específicos, bem como juntando registros de tabelas relacionadas.

Em outros sistemas ORM como Ruby on Rails, o esquema é definido por meio de mecanismos ActiveRecord e o modelo são os métodos extras que sua subclasse Model adiciona que definem lógica de negócios adicional.