esta es una pregunta sobre las mejores prácticas, entiendo que hay muchas opciones diferentes para hacer esto, pero me gustaría su opinión sobre cómo abordaría la solución de este problema. Tómelo como si el rendimiento fuera crítico en este sistema, en otras palabras, escalable.neo4j - base de datos de gráficos junto con una base de datos relacional?
Hace poco encontré las maravillas de la base de datos de gráficos, así que se me ocurrió una situación teórica en la que una empresa quiere gestionar sus relaciones con los clientes, y para hacerlo van a usar neo4j que es genial, y permite para una excelente administración de los clientes, diferentes miembros del personal y sus relaciones, lo que es genial, sin embargo, ahora la compañía desea crear una interfaz basada en web que requiera autenticación, y cualquier persona en la base de datos neo4j debería poder iniciar sesión en el sistema para ver cómo están relacionados con otras personas en la base de datos de la compañía, por lo que cada usuario debe tener una contraseña/correo electrónico/id asociado con su nombre.
Así que mi pregunta es, en este caso, si es mejor almacenar password_hash/password_salt/id/email en una base de datos mysql y luego, en función del nodo, buscarlo en la base de datos mysql. ¿O es mejor almacenar password_hash/password_salt/id/email en las tablas hash dentro de los nodos?
También cada tienda tiene miles de productos, y se pueden almacenar en la base de datos de gráficos o puedo almacenar los productos en la base de datos mysql y luego buscar el producto allí, y hacer los cambios allí, porque los productos no son relacionados entre sí, por lo que no tiene sentido almacenarlos en la base de datos de gráficos, por lo que no deberían almacenarse allí para mejorar el rendimiento?
Así que mi pregunta se reduce a esto: ¿es mejor para los grandes proyectos utilizar una base de datos de gráficos junto con la base de datos de rdms más común como mysql? si no, ¿cuál es el punto en el que comienzas a utilizar estos dos sistemas de bases de datos?
disculpas de antemano por mi falta de conocimiento sobre la terminología de la base de datos.
@mursalat - actualmente se usan múltiples DB (especialmente en lugares donde la tecnología tiene un papel más importante que jugar). Si la escala es un problema grave para usted, debe buscar la mejor herramienta/opción disponible, incluso si eso significa más de uno o dos DB. –