2010-01-16 24 views
10

Tengo una aplicación que requiere análisis para diferentes niveles de agregación, y esa es la carga de trabajo OLAP. También quiero actualizar mi base de datos con bastante frecuencia.Cualquier base de datos OLAP escalable (escala de aplicación web)?

por ejemplo, esto es lo que se ve mi actualización como (esquema se parece a: tiempo, dest, IP de origen, el navegador -> visitas)

(15:00-1-2-2010, www.stackoverflow.com, 128.19.1.1, safari) --> 105 

(15:00-1-2-2010, www.stackoverflow.com, 128.19.2.1, firefox) --> 110 

... 

(15:00-1-5-2010, www.cnn.com, 128.19.5.1, firefox) --> 110 

y luego quiero preguntar cuál es la visita total a la www .stackoverflow.com desde un navegador Firefox el mes pasado.

Entiendo que el sistema Vertica puede hacer esto de una manera relativamente económica (rendimiento y escalabilidad, pero probablemente no de costo). Tengo dos preguntas aquí.

1) ¿Existe algún producto de código abierto que pueda utilizar para resolver este problema? En particular, ¿qué tan bien funciona un sistema Mondrian? (escalabilidad y rendimiento) 2) ¿Existe una solución básica de HBase o Hypertable (obviamente, una HBase/Hypertable desnuda no puede hacer esto) para esto? - pero si hay un proyecto basado en HBase/Hypertable, la escalabilidad probablemente no sea un problema de la OMI).

Gracias!

+0

¿Cuál es su volumen de datos esperado? 1 millón de visitas/día? ¿10 millones? –

Respuesta

2

Puede descargar una edición gratuita (la edición de nodo único) de la base de datos greenplum. No lo he intentado pero creo/supongo que es una bestia poderosa. Lea aquí: http://www.dbms2.com/2009/10/19/greenplum-free-single-node-edition/

Otra opción es MongoDB, es rápido y gratuito y puede escribir funciones de MapReduce con JavaScript para realizar análisis.

Mi reputación aquí es baja para agregar un hipervínculo a mongodb, por lo que tiene que googlear. Solo puedo agregar un hipervínculo por publicación.

+0

greenplum no es gratis – charlie111

+0

La edición de nodo único es gratuita. – AABBCCDD

+0

Para aclarar: El Greenplum SNE es "libre como en la cerveza". No tiene que pagar dinero por ello, pero existen restricciones de licencia sobre el tamaño y la cantidad de servidores en los que puede implementarlo, y el código fuente no se divulga públicamente. – goodside

2

El objetivo de zohmg project es resolver este problema utilizando Hadoop y HBase.

0

Es el modelo de datos más complejo que eso? Si no es así, es posible que prefiera simplemente escribir código personalizado para ello. Entonces realmente puedes sintonizar tus datos. Los productos reales tienen que ofrecer mucha flexibilidad, necesitan mucha complejidad para lograr eso y, como resultado, sufren la velocidad.

Su pregunta no está clara en un aspecto: cuando habla de escalable, ¿qué quiere decir con eso? ¿Está recopilando datos de muchos sitios pero solo tiene una cantidad limitada de usuarios de consultas, o también tiene muchos usuarios? Esa situación conduce a un modelo significativamente diferente.

+0

No veo el modelo de datos aquí. La publicación original quiere encontrar una solución de precálculo (retículas cuboideas) en la parte superior de Hbase y etc. Está hablando de Mapreduce, que amplía lo que Hive está haciendo, pero esencialmente es un modo de procesamiento por lotes –

+0

No, Estoy hablando de escribir código y usar archivos planos.Según el modelo de datos y el número de entidades, por supuesto. –

Cuestiones relacionadas