Poc proche de ce que je fais au boulot. Je voudrai faire un système d'analyse multidimensionnel en mémoire (OLAP). C'est assez ambitieux mais on a pas besoin de tout faire pour faire une bonne démo. Un des avantages à une implem en mémoire est qu'on peut ajouter des données temps réel, typiquement twitter en streaming.
Il y a deux éléments de design intéressants:
Une bonne démo d'une bdd multidimensionnelle en mémoire est ici, jouez avec l'outils pour comprendre ses capacités: https://dash.metamx.com/tweets/explore#p=r1w&w=-a-&zz=3
Je pense que l'API storm + Trident (Stream processing) avec les StateQuerys peut convenir à ce besoin: https://github.com/nathanmarz/storm/wiki
Pour la partie agrégations si on part sur du Scala je suis un grand fan d'Algebird: https://github.com/twitter/algebird
Au niveau restitution/visualisation si quelqu'un est bon en js on pourrait faire des restitutions live des données avec d3.js et node par exemple.
Pour la distribution des données et des requêtes on fera ça au prochain event je pense ;)
Si on a le temps/les ressources, je serai chaud pour commender une version persistante avec par exemple:
Un index inversé par valeur de dimension, on peut commencer par l'approche naive: 1 bit par entrée pour chaque valeur de dimension. Permet de faire des opérations booléennes sur les sélections de valeurs de dims. Puis dans un deuxième temps on peut s'intéresser à la compression d'index, voir la solution des concise sets de Druid: http://metamarkets.com/2012/druid-bitmap-compression/, http://ricerca.mat.uniroma3.it/users/colanton/docs/concise.pdf
Hello,
Je suis très motivé pour faire du temps réel. Ce qui me plairait bien c'est de travailler avec des données capteurs, type mesure de la pollution de l'air et de rajouter un modèle prédictif dessus de "early warning" un peu comme ce qui est décrit ici
http://www.kaggle.com/c/dsg-hackathon. ça permet par exemple de mettre à jour des forecast de pollution en temps réel http://www.airnow.gov/. Le problème majeur c'est trouver des API publique... Eventuellement, on peut faire ça avec du traffic routier et de la prévision de bouchon ?