NoSQL y RDBMS juntos?


13

Me preguntaba si hay alguna buena solución para registrar datos en una base de datos NoSQL y luego convertirlos en un RDBMS.

Por ejemplo, si desea capturar algunos datos rápidamente, como registros de sesión, pero luego desea poder crear informes sobre ellos más adelante.

Mi base de datos favorita es Postgres, por lo que si tu respuesta es relevante en Postgres, sería genial.


En este punto, postgres tiene xml, json nativamente y gis, y hstore (clave, valor) como extensiones. Muy poca necesidad de una base de datos nosql si usa postgres.
xenoterracide

Dicho esto, el patrón cqrs está diseñado para facilitar su pregunta
xenoterracide

Respuestas:


10

La respuesta rápida: sí. Pasa todo el tiempo.

Hay muchas buenas soluciones. ¿Qué soluciones ya hay en su entorno? Estoy ayudando a un cliente que toma su sitio web / información de actividad de sesión de su aplicación web, lo escriben en xml y luego deserializan ese xml en Hadoop. Luego usan Hive sobre Hadoop para crear agregaciones y hechos (al unir estos datos de registro para hacer referencia a los datos de su sitio web que almacenan en una base de datos Postgres). Estas agregaciones y hechos luego se cargan en un RDBMS (usan SQL Server, debido a la rica analítica proporcionada en la pila de SQL Server).

Exploraría Hadoop, miraría a Hive, que es un motor de consulta en la parte superior de Hadoop que le permite escribir consultas declarativas que se parecen mucho a SQL y se traducen en trabajos de MapReduce detrás de escena. Luego mire Sqoop, que es otra herramienta de la familia Hadoop que lo ayuda a exportar / importar datos.

http://hadoop.apache.org/ http://www.amazon.com/Hadoop-Definitive-Guide-Tom-White/dp/1449389732/ref=sr_1_1?s=books&ie=UTF8&qid=1319160463&sr=1-1 http : //www.cloudera.com/blog/2009/06/introducing-sqoop/ http://hive.apache.org/

También hay otras opciones por ahí ...


Bueno, esa es una respuesta extremadamente completa. No suena demasiado simple, pero parece que usa muchas tecnologías geniales.
Joe

Bueno, no es "simple" en términos de la cantidad de piezas, etc., pero en realidad no es tan complejo una vez que comienzas. La herramienta que seleccione para las piezas depende de lo que tenga en su entorno y con qué se sienta cómodo. Eche un vistazo a esos enlaces, consulte el enlace de recomendación de libros.
Mike Walsh

4

No todos los NoSQL son iguales. Por ejemplo, MongoDB tiene muy buenas capacidades de consulta. Es muy fácil recuperar datos, ordenar los datos de una manera que le recuerde a SQL. Entonces, lo que estoy diciendo es que no deberías pensar: SQL para informes, a menos que tengas herramientas listas para usar que requieren datos compatibles con SQL, por supuesto. Algunos de los otros NoSQL están un poco más involucrados en lo que respecta a obtener resultados similares a SQL de su tienda, CouchDB, por ejemplo, no es trivial para definir una consulta simple de tipo cláusula where. MongodDB, he usado el controlador Python, es muy fácil. Por lo tanto, considero que es menos importante preocuparse por portar mis datos a una tienda relacional.


3
¿Tienes algún enlace o afiliación a MongoDB? Recién unido, cuatro respuestas, todas muy positivas sobre MongoDB que suenan a marketing. Puede que tengas razón, pero es deficiente si tienes interés ...
gbn

Aparentemente lo asustaste allí GBN
jcolebrand
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.