Actualmente estoy usando R + Python con RPY2 para manipular datos y ggplot para crear hermosos gráficos ... Tengo algunos datos en una base de datos PostgreSQL, y estoy usando psycopg2 para consultar datos.¿Quieres consultar OLAP Mondrian (MDX, XMLA) con una interfaz de Python?
estoy empezando una tesis, y en el futuro voy a necesitar un OLAP cube para guardar mi (muy grande) de datos de simulación: la dimensión múltiple, consulta la agregación, etc.
¿Hay alguna mejor o la norma de buenas prácticas para la interconexión entre Python (y quiero Python + R, no jpivot o algún otro panel en Java) y un motor OLAP como Mondrian? Busqué en Google cualquier solución y no encontré nada.
he evaluado brevemente SQLAlchemy, y Django-ORM, pero no tienen MDX o XML/Una interfaz para consultar un servidor OLAP (Mondrian o de otro tipo) ...
¿Es posible escribir una consulta en MDX y, con psycopg + ODBC, consultar el servidor OLAP, y el servidor OLAP dándome una respuesta de mis datos de simulación (sin mapeo en el objeto Python, pero está bien para mí)?
Actualización 1:
¿Por qué tengo que buscar en la tecnología OLAP Mondrian +?
Debido University of Laval (GeoSoa departamentos + Thierry Badard) escribió una extensión espacial de OLAP: SOLAP, e implementado en esta Mondrian como GeoMondrian. Eso me interesa porque estoy trabajando en la simulación espacial basada en múltiples agentes (~ = geosimulación).
El departamento GeoSoa creó un componente basado en Ajax para comunicar y visualizar datos espaciales con GeoMondrian: SOLAPLAYERS, que puede consultar un servidor Mondrian mediante su servlet Xlma.
Problema: probablemente sea lento en la manipulación de grandes volúmenes de datos, necesite Internet o Apache 2. Brevemente, es solo para visualizar datos o mapas ... En mi caso, necesito datos brutos para hacer mis propios gráficos + manipulación de datos con R: análisis espacial, análisis de regresión, rank-tail, etc. Aquí, SOLAP me ayuda a preparar los datos para este posterior análisis complejo de R.
¿Por qué Python?
1 - acceso a la Web a datos espaciales -
Estoy tratando de utilizar un marco de "fresco" de Python, como GeoDjango o MapFish: gran comunidad en SIG, de código abierto, utilice GeoAlchemy para manipular espacial consulta/datos que incluyen la visualización con extensiones de JavaScript y OpenLayers, etc.
2 - el acceso local a los datos espaciales en SIG -
Quiero crear un plugin en QGIS (abierta SIG de código) para acceder y visualizar d ata, y el complemento QGIS y API = Python.
3 - análisis automático de los datos -
Un usuario o científico ejecuta una simulación con la computación de rejilla y elija análisis automático (R + ggplot2 + MDX consulta) que quieren correr en estos datos.Mi objetivo aquí es crear un informe sintético de la simulación (gráficos, datos tabulares, etc.).
Entonces, después de la simulación, los datos van al cubo OLAP/SOLAP, y muchos scripts Python (creados por el usuario) obtienen datos con MDX, manipulan datos con R + RPY2 y escriben y producen resultados interesantes para el científico en doku -wiki u otra plataforma comunitaria.
¿Problemas?
1 - Olap4j, el núcleo de la API de Mondrian para comunicarse con un componente externo, es Java hizo-:/
2 - SOLAPLAYERS utiliza Ajax para acceder a los datos, demasiado lento para mí.
3 - SQLAlchemy y GeoAlchemy no tienen conexión de controlador a una base de datos multidimensional (OLAP).
* ¿Solución? *
1 - Py4j para acceder a objetos Java o colecciones Java en olap4j con Python? ¿Escribir mi propia función para acceder a la colección mapeada de Java? => peligroso y no es muy fácil? ...
2 - XLMA con servidor Ajax Mondrian? Es muy lento.
3 - ¿Escribir mi propio conector py a OLAP Mondrian? => Ouch. Es una manera dura, creo.
¿Qué debo hacer?
Estoy buscando una solución, parece que puedo intentar enlazar el software de llamadas olap4j (java) y pythonToJava como JPype o Py4j ... ¿Otra persona tiene alguna otra respuesta o comentario aquí? – reyman64
Solo se lo dejo saber, hay una [tabla dinámica javascript] (http://webpivottable.com) puede pivotar cubos XMLA OLAP con una interfaz de usuario intuitiva y un gran rendimiento. [demo] (http://webpivottable.com/demo) y [documentos] (http://webpivottable.com/documents) –