¿Cuál sería la base de datos adecuada para seguir? Estoy especialmente interesado en tus experiencias con los sistemas no relacionales NoSQL. ¿Son útiles para este tipo de uso, qué sistema ha utilizado y recomendaría, o debería ir con una base de datos relacional normal (DB2)?Qué son buenas soluciones de bases de datos NoSQL y no relacionales para la base de datos de auditoría/registro
Necesito recopilar información de auditoría/tipo de registro desde un grupo de fuentes a un servidor centralizado donde podría generar informes de manera eficiente y examinar lo que está sucediendo en el sistema.
Normalmente, un evento de auditoría/registro consistiría siempre de algunos campos obligatorios, por ejemplo
Identificación del- único global (de alguna forma generada por programa que generó este evento)
- timestamp
- tipo de evento (es decir, el usuario ha iniciado sesión, que pasó de error, etc.)
- alguna información acerca de la fuente (server1, server2)
Además, el evento podría contener pares clave-valor 0-N, donde el valor podría ser de hasta algunos kilobytes de texto.
- Se debe ejecutar en el servidor Linux
- Se debe trabajar con una alta cantidad de datos (100 GB, por ejemplo)
- debería apoyar algún tipo de eficiencia de búsqueda de texto completo
- Debe permitir la lectura simultánea y escribiendo
- Debe ser flexible para agregar nuevos tipos de eventos y agregar/eliminar pares clave-valor a nuevos eventos. Flexible = no se requieren cambios al esquema de la base de datos, la aplicación que genera los eventos puede agregar nuevos tipos de eventos/nuevos campos según sea necesario.
- debería ser eficiente realizar consultas en la base de datos. Para informar y explorar lo que sucedió. Por ejemplo:
- Cuántos eventos con tipo = X ocurrieron en algún período de tiempo.
- obtener todos los eventos donde el campo A tiene un valor Y.
- Obtener todos los eventos con tipo X y el campo A tiene el valor 1 y el campo B no es 2 y el evento ocurrido en las últimas 24 horas
¿Quisces decir MongoDB? –
MongoDB es fantástico para la registración: http://blog.mongodb.org/post/172254834/mongodb-is-fantastic-for-logging – kristina