sql >> Base de Datos >  >> NoSQL >> Redis

Usando MongoDB como nuestra base de datos maestra, ¿debería usar una base de datos de gráficos separada para implementar relaciones entre entidades?

mike,

debería poder almacenar los datos de su relación en la base de datos de gráficos. Su alto rendimiento al atravesar gráficos grandes proviene de la localidad, es decir, no ejecuta consultas globalmente, sino que inicia un conjunto de nodos (que equivalen a documentos en su caso, que se buscan mediante un índice. Incluso puede almacenar start-node- ids para un acceso rápido en sus documentos mongo). Desde allí, puede recorrer caminos arbitrariamente grandes en tiempo constante (tamaño del conjunto de datos wrt).

¿Cuáles son sus otros requisitos (es decir, tamaño del conjunto de datos, número de accesos simultáneos, etc., complejidad de relación/gráfico).

Sus consultas se ajustan muy bien a la base de datos de gráficos y se expresan fácilmente en sus términos.

Le sugiero que simplemente tome un graphdb como neo4j y haga un pico rápido con su dominio para verificar la viabilidad general y también averiguar preguntas adicionales que le gustaría que se respondieran antes de invertir en la segunda tecnología.

PD Si aún no había comenzado, también podría haber optado por un enfoque de graphdb puro, ya que las bases de datos de gráficos son un superconjunto de bases de datos de documentos. Y preferiría hablar de dominio en su caso de todos modos que solo documentos genéricos. (Por ejemplo, structr es un CMS construido sobre Neo4j).