Estoy creando un producto que requiere la creación de una nueva base de datos dinámicamente para cada proyecto, ya que un nuevo equipo creará un nuevo proyecto según las necesidades. Ver imagen a continuación. El backend está implementado con Node.js, Express.js, TypeScript y ArangoDB es la base de datos utilizada.
Este es un producto para la instalación de servidores empresariales, así como para SaaS.
¿Cómo puedo lograr la arquitectura requerida con las tecnologías mencionadas? Gracias por sus ideas y ejemplos, referencias.
ArangoDB JavaScript Driver siguiendo Modern JavaScript/TypeScript con async/await: puede administrar una colección dinámica de new Database()
en lugar de una const db
. Puede ser un mapa con una clave del propietario de la base de datos en cada equipo y un valor del objeto de la base de datos. Todavía unir datos entre dos conexiones DB no es fácil.
Quicksql es un producto de consulta SQL que se puede utilizar para consultas de almacenes de datos específicos o consultas correlacionadas de varios almacenes de datos. Admite bases de datos relacionales, bases de datos no relacionales e incluso almacenes de datos que no admiten SQL (como Elasticsearch, Druid). Además, una consulta SQL puede unir o unir datos de múltiples almacenes de datos en Quicksql. Por ejemplo, puede realizar una consulta SQL unificada en una situación en la que una parte de los datos se almacena en Elasticsearch, pero la otra parte de los datos se almacena en Hive. Lo más importante es que QSQL no depende de ningún motor de cómputo intermedio, los usuarios solo necesitan concentrarse en los datos y la gramática SQL unificada para finalizar las estadísticas y el análisis.
Sin embargo, se necesita algún soporte personalizado de ArangoDB para usarlo con ArangoDB Java Driver .