Saltar al contenido
orm

¿qué es orm y odm?

diciembre 21, 2021
¿qué es orm y odm?

¿qué es orm y odm?

mapeador de documentos objeto

Este artículo necesita citas adicionales para su verificación. Por favor, ayude a mejorar este artículo añadiendo citas de fuentes fiables. El material sin fuente puede ser cuestionado y eliminado.Buscar fuentes:  “Object-relational mapping” – noticias – periódicos – libros – scholar – JSTOR (mayo de 2009) (Aprende cómo y cuándo eliminar este mensaje de la plantilla)

El mapeo objeto-relacional (ORM, O/RM y herramienta de mapeo O/R) en informática es una técnica de programación para convertir datos entre sistemas de tipos incompatibles utilizando lenguajes de programación orientados a objetos. Esto crea, en efecto, una “base de datos de objetos virtual” que puede utilizarse desde el lenguaje de programación. Existen paquetes gratuitos y comerciales que realizan el mapeo objeto-relacional, aunque algunos programadores optan por construir sus propias herramientas ORM.

En la programación orientada a objetos, las tareas de gestión de datos actúan sobre objetos que casi siempre son valores no escalares. Por ejemplo, considere una entrada de la libreta de direcciones que representa a una sola persona junto con cero o más números de teléfono y cero o más direcciones. Esto podría ser modelado en una implementación orientada a objetos por un “objeto Persona” con un atributo/campo para mantener cada elemento de datos que la entrada comprende: el nombre de la persona, una lista de números de teléfono y una lista de direcciones. La lista de números de teléfono contendría a su vez “objetos PhoneNumber” y así sucesivamente. El lenguaje de programación trata cada una de estas entradas de la agenda como un único objeto (por ejemplo, puede referenciarse mediante una única variable que contenga un puntero al objeto). Se pueden asociar varios métodos al objeto, como los que devuelven el número de teléfono preferido, la dirección del domicilio, etc.

  ¿cuál es el orm de java?

nhibernate

Estoy tratando de averiguar cuál es la diferencia entre ORM y ODM, por lo que entiendo el concepto, ORM (Object Relational Mapper) mapea las relaciones entre los datos, mientras que ODM (Object Document Mapper) se ocupa de los documentos. ¿Estoy en lo cierto al asumir que mySQL es un ejemplo de ORM y MongoDB es un ejemplo de ODM?

Un ORM mapea entre un modelo de objetos y una base de datos relacional. Un ODM mapea entre un Modelo de Objetos y una Base de Datos de Documentos. MySQL no es un ORM, es una Base de Datos Relacional, más específicamente, una Base de Datos SQL. MongoDB no es un ODM, es una base de datos de documentos.

Esencialmente, un ORM utiliza un controlador de base de datos SQL como ODBC, JDBC u OLEDB para traducir la notación de objetos a notación relacional y un ODM utiliza una api JSON o JSONB para traducir la notación de objetos a notación de documentos.

hibernate

El mapeo objeto-relacional (ORM) es una técnica que permite consultar y manipular datos de una base de datos utilizando un paradigma orientado a objetos. Cuando se habla de ORM, la mayoría de la gente se refiere a una biblioteca que implementa la técnica de mapeo objeto-relacional, de ahí la frase “un ORM”.

Una biblioteca ORM es una biblioteca completamente ordinaria escrita en el lenguaje de tu elección que encapsula el código necesario para manipular los datos, de modo que ya no utilizas SQL; interactúas directamente con un objeto en el mismo lenguaje que estás utilizando.

Como todos los acrónimos, es ambiguo, pero supongo que quieren decir mapeador objeto-relacional, una forma de taparse los ojos y hacer creer que no hay SQL por debajo, sino que todo son objetos;-). No es realmente cierto, por supuesto, y no está exento de problemas — el siempre colorido Jeff Atwood ha descrito ORM como el Vietnam de CS;-). Pero, si sabes poco o nada de SQL, y tienes un problema bastante simple / a pequeña escala, pueden ahorrarte tiempo;-)

  ¿qué es un orm?

orm para nosql

Lo siento, pero ¿tiene esto sentido? el ORM significa: Object Relational Mapper, y aquí, hay Relacional, y NoSql no es RDBMS! entonces ¿por qué el uso de un ORM en una solución NoSql? porque veo actualizaciones de ORMs para Python!

Ya que no tienen la relación entre ellos, estos ODM’s proveen la manera de definir las relaciones en sus modelos y simular las relaciones. Todo esto se abstrae del desarrollador para que pueda codificar de la misma manera que lo hace con los datos relacionales.

El ORM es una capa de abstracción. Cambiar a un motor diferente es mucho más fácil cuando las consultas se abstraen y se esconden detrás de una interfaz común (no siempre funciona tan bien en la práctica, pero sigue siendo más fácil que sin ella).

Una pregunta interesante. Aunque las bases de datos NoSQL no tienen un mecanismo para identificar relaciones, esto no significa que no haya relaciones lógicas entre los datos que se almacenan. La mayoría de las veces, estás manejando y reforzando esas relaciones en el código manualmente si estás usando una base de datos NoSQL.

Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad