Quando você aprende a trabalhar com o banco de dados, tudo se resume a dois tipos de configurações de banco de dados: ORM (Object Relation Mapping) e ODM (Object Document Mapping)
ORM, que é o mapeamento de um objeto com um mundo relacional, basicamente converte dados entre tipos incompatíveis em linguagens de programação orientadas a objetos. O ORM agrupa os detalhes específicos da implementação dos drivers de armazenamento em uma API (interface do programa de aplicativo) e mapeia os campos relacionais para os membros de um objeto. Por exemplo, se eu tiver uma tabela de funcionários, ela será mapeada para um único objeto para todos os funcionários, com vários métodos associados.
O ODM, por outro lado, é um Mapeador de Documentos de Objetos, que mapeia objetos com um Banco de Dados de Documentos como o MongoDB.
A principal diferença é que o ORM é para bancos de dados MySQL, enquanto o ODM faz o mapeamento para representação de dados dos documentos. A melhor maneira de lembrar o que o ORM faz seria pensar nele como uma planilha do Excel, com linhas e colunas. Ao usar essa configuração, você deseja ter um ótimo plano de como deseja lidar com o aplicativo atual; ele não permite tantas modificações quanto o ODM. Com o ODM, podemos adicionar novos campos e propriedades facilmente, mas com o ORM ao adicionar um novo campo, você precisa ter em mente que nada permanece vazio; portanto, é necessário que um valor seja o padrão, a menos que você queira entrar em cada um e modificar.