Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

Datos polimórficos

MongoDB utiliza un modelo de datos flexible, lo que significa que los documentos de una sola colección no necesitan tener la misma estructura. Los datos polimórficos son datos en una sola colección que varían en los campos de los documentos o en los tipos de datos.

Generalmente, los documentos de una colección son similares en estructura, pero pueden contener ligeras variaciones según la aplicación. Para agrupar documentos similares pero no idénticos en una sola colección, se puede utilizar la Polimórfico y los patrones de diseño de esquemas de herencia.

Estos diseños de esquemas pueden mejorar el rendimiento al almacenar datos en función de los patrones de acceso a queries, en lugar de simplemente en función de la forma del documento.

Scenario
Aplicación de patrones de diseño

Tu aplicación rastrea a atletas profesionales en diferentes deportes. Tus consultas acceden a todas las atletas, pero los atributos almacenados para cada atleta varían dependiendo del deporte que practique.

Utiliza el patrón polimórfico para agrupar deportistas en una sola colección. Aunque los documentos tengan formas diferentes, aún se puede acceder a ellos con una única query.

Tu aplicación rastrea los libros en una librería. Los libros pueden estar disponibles en diferentes formas: libro electrónico, impreso o audiolibro. Todos los libros comparten los campos de titleauthor y genre, pero tienen campos adicionales que difieren según su formato.

Utiliza el patrón de herencia para agrupar libros en una única colección. Cada formato de libro es una entidad secundaria de la entidad principal de book que proporciona los campos compartidos de title, author y genre en todos los formatos. A pesar de los campos adicionales diferenciadores de las entidades secundarias, los campos compartidos de la entidad principal permiten que se agrupen en una sola colección.

Volver

Patrón de subconjunto

En esta página