¿Cómo puedo implementar una relación de clave externa en Mongo DB?Relación de clave externa en Mongo DB
Respuesta
hiya ver esto: MongoDB normalization, foreign key and joining & & más http://shop.oreilly.com/product/0636920018391.do ===>http://books.google.com/books/about/Document_Design_for_MongoDB.html?id=TbIHkgEACAAJ&redir_esc=y
MongoDB no soporta relaciones de clave externa del lado del servidor, también se desaconseja normalización. Debería incrustar su objeto hijo dentro de los objetos principales si es posible, esto aumentará el rendimiento y hacer que las claves foráneas sean totalmente innecesarias. Dicho esto, no siempre es posible , por lo que existe una construcción especial llamada DBRef que permite los objetos de referencia en una colección diferente. Esto puede ser entonces no tan rápido porque DB tiene que realizar consultas adicionales para leer objetos, pero permite el tipo de referencia de clave externa.
Aún así tendrá que manejar sus referencias manualmente. Solo mientras busca su DBRef verá si existe, la base de datos no irá a a través de todos los documentos para buscar las referencias y eliminarlas si el objetivo de la referencia ya no existe. Pero creo que eliminar todas las referencias después de eliminar el libro requeriría una única consulta por colección, no más, por lo que no es realmente difícil.
Editar actualización
http://levycarneiro.com/tag/mongodb/
levycarneiro.com/tag/mongodb [cita] Así que crear 4 colecciones: clientes, proveedores, empleados y contactos. Usted los conecta todos juntos a través de una referencia db. Esto actúa como una clave externa. Pero esta no es la forma mongoDB de hacer las cosas. El rendimiento será penalizado. [unquote]
- 1. Mongo Db y Spring
- 2. Relaciones de Mongo DB entre objetos
- 3. JPA no guarda clave externa en @OneToMany relación
- 4. Relación de clave externa de vinculación de modelo ASP.NET MVC
- 5. Agregar relación de clave externa entre dos bases de datos
- 6. No se puede establecer una relación de clave externa
- 7. consulta de Mongo DB en java
- 8. mongo db --smallfiles switch inconvenientes
- 9. Mangosta: ¿cómo modelar una clave externa/relación inversa?
- 10. doctrine2 La relación OneToMany inserta NULL como la clave externa
- 11. Mongo DB $ o consulta en PHP
- 12. ¿Mongo DB tiene un modo en memoria?
- 13. cursor disponible en mongo db time out
- 14. Soporte de clave externa en sqlite 3
- 15. diferencias entre "clave externa" y "restricción de clave externa"
- 16. mongo DB - Todos los nodos secundarios
- 17. clave externa a varias tablas
- 18. Mongo DB Design, incrustación vs relaciones
- 19. Ejecución de la replicación en problemas de Mongo DB
- 20. clave externa cakephp no la clave primaria
- 21. Relación de clave externa entre dos bases de datos en SQL Server 2008
- 22. ¿Clave externa a una de muchas tablas?
- 23. clave natural vs clave sustituta un innodb clave externa
- 24. clave externa Hibernate como parte de la clave primaria
- 25. clave externa condicional en SQL
- 26. ¿Cómo actualizar un objeto en matrices anidadas en mongo db?
- 27. SQLAlchemy: no aplicar la restricción de clave externa en una relación
- 28. relación de clave externa con claves primarias compuestas en SQL Server 2005
- 29. Unir tablas, clave externa
- 30. clave externa condicional PostgreSQL
Interesante. ¿Qué significa "incrustar objetos secundarios en el objeto principal"? ¿Eso significa que si tiene una relación de orden/artículos de línea, agregaría objetos de línea de pedido como propiedades en el documento de pedido? – McGarnagle
Hiya, de hecho, creo; artículo interesante aquí - http://levycarneiro.com/tag/mongodb/ [quote] Así que creas 4 colecciones: clientes, proveedores, empleados y contactos. Usted los conecta todos juntos a través de una referencia db. Esto actúa como una clave externa. Pero esta no es la forma mongoDB de hacer las cosas. El rendimiento será penalizado. [unquote] - :) aplausos –
Genial, es realmente útil Tats. En realidad, Mongo DB no es tan eficiente para implementar referencias entre objetos, según entendí. –