Tags:
create new tag
, view all tags

Stage de Julien Blegean - Telecom Nancy - [2/06/14 au 08/08/14]

Important : cette page est réservée au suivi du stage, merci de ne pas la modifier

Informations générales pour les stagiaires

Pour toute information concernant ce stage : contacter Thomas B. ou François-Xavier

Sujet

Etude de techniques d'exploration et de visualisation de données massives

Le CDS (Centre de Données astronomiques de Strasbourg) distribue des catalogues astronomiques de taille importante pouvant atteindre le milliard de sources. Ces sources sont indexées spatialement afin de permettre de retrouver rapidement les sources situées dans une région du ciel donnée.
Le stage consistera à compléter l'éventail des outils existants en étudiant et implémentant différentes techniques d'indexation multi-critères combinée à une indexation spatiale afin de permettre l'exploration visuelle interactive de ces grandes masses de données. Cela répond à un besoin de l'astronomie moderne: la réalisation d'études statistiques sur de grands volumes répartis sur tout le ciel.

Dans un premier temps, on étudiera les techniques d'exploration côté client ([Datavore], [Crossfilter]) sur des jeux de données limités à quelques centaines de milliers d'objets. Le développement d'un prototype permettra de déterminer les avantages et limites de cette approche.

Pour des jeux de données plus importants (de 10 millions à 1 milliard d'objets), on se tournera vers les techniques décrites dans [nanocubes], [imMens] ou encore [MapD].
Le but de cette seconde phase sera de développer un service multi-résolution de génération dynamique de tuiles, afin de parvenir à développer l'équivalent de http://www.nanocubes.net/view.html#twitter mais en utilisant des catalogues de sources astronomiques avec certains critères (couleurs, magnitudes, types d'objet, etc).

Les languages utilisés seront Javascript pour la partie cliente, Java ou Python pour la partie serveur.

Le stage sera encadré au CDS par Thomas Boch (ingénieur de recherche) et François-Xavier Pineau (ingénieur de recherche).


URLs:

Datavore : http://vis.stanford.edu/projects/datavore/
Crossfilter : http://square.github.io/crossfilter/

nanocubes : http://nanocubes.net/
imMens : http://vis.stanford.edu/papers/immens
MapD : http://istc-bigdata.org/index.php/mapd-a-way-to-map-big-data-faster/

Documents de travail

Stage (juin - août 2014)

Juin

  • 2 : accueil ; recherche d'informations sur Datavore et Crossfilter ; première prise en main de Datavore ;
  • 3 : tests sous Datavore avec jeu de données fourni ; Prototype fonctionnel (l'utilisateur peut uploader un CSV et faire une recherche exacte sur un champs), mesures de temps affichées. Optimisation quasi-terminée, il demeure un bug à corriger.
  • 4 : bug corrigé ; Tests de performances, rédaction de notes (cf lien plus bas) sur Datavore. Tests sous Crossfilter, prototype fonctionnel sur petits échantillons mais anormalement lent sur grands échantillons ; Lecture de la doc de PourOver et Tamper ; Première prise en main de D3
  • 5 : travail sur la matrice avec D3. Bug remarqué car Datavore ne trie pas lui-même les colonnes selon leur type (string/numérique). La matrice marche avec des tableaux numériques mais plante quand on introduit des chaines de caractères. Implémentation de fonctions permettant de distinguer en amont le type des colonnes et de retirer pour D3 les colonnes non numériques. Le script ne marche étrangement pas à tous les coups -> bug à corriger.
  • 6 : travail sur D3. Corrections sur les types, correction d'une erreur dans le code de dv.js. Optimisation de dv.js. Traitement des données manquantes (par la moyenne de la colonne). Centrage et réduction des valeurs. Mais bug toujours présent.
  • 10 : correction des bugs cités précédemment, améliorations ; affichage capricieux de la matrice de corrélations
  • 11 : réorientation en utilisant une autre méthode de "binning" (voir article ici). Résultats plus satisfaisants. Corrections & améliorations à faire.
  • 12 : améliorations de la matrice de corrélations ; début du filtre par sélection
  • 13 - 18 : améliorations matrice ; corrections sur les échelles ; interface -> choix composantes, taille blocs et rayons des points ; filtre de sélection ;
  • 19-20 : traitement des données manquantes, corrections de bugs, améliorations
  • ---------------------------------------------------------------------------------------------------------------------
  • 23-24 : installation de nanocubes, prise en main, premiers tests
  • 25-27 : quelques adaptations de nanocubes à nos besoins. Tests sur les DMPs. Questions posées aux développeurs car documentation pas très riche. Test sur fichier de 8 millions d'objets. Découverte de bugs. Intégration tuiles astronomiques
  • 30-1 : préparation serveur, tests sur serveur

Juillet

  • ...

Août

  • ...

Sauvegardes

  • à définir au cas par cas suivant le sujet du stage

Liens utiles

Comparaison Datavore/dc.js/PourOver

  • Fonctionnalités
  • Facilité de mise en oeuvre
  • Performances (temps d'exécution)
  • Occupation mémoire

Jeux de données

  • Données SIMBAD autour du grand nuage de Magellan (LMC) :
    wget -O simbad-test.csv "http://cdsxmatch.u-strasbg.fr/QueryCat/QueryCat?catName=SIMBAD&mode=cone&pos=LMC&r=3deg&format=csv&limit=1000000"
  • Données VizieR 2MASS 2° autour de Orion
  • Données VizieR GUMS 0.7° autour de rho oph

Outils

Versions testables

Testé sur ...

Documentation

  • ...

Informations/travaux divers

Bibliographie

Crossfilter

Liens intéressants liés au sujet

Travail post stage éventuel

Liste des améliorations à envisager

Bugs connus

*
Topic revision: r23 - 2014-07-04 - ThomasBoch
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback