Utilitaire pour indexer des informations de la blockchain et dessiner des Plots. Focalisé sur la toile de confiance. http://datajune.coinduf.eu/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.0 KiB

DataJune

DataJune est un projet jouet consistant à indexer des informations de la blockchain pour servir les données sous forme de fichiers JSON, CSV, ou autre, pour permettre à n'importe qui de jouer facilement avec les données et produire des visualisations maison.

Ce projet peut combler temporairement des lacunes des API suivantes :

  • BMA
  • GVA
  • WotWizardGraphQL
  • Datapods

mais l'objectif est plutôt d'ajouter des informations qui n'y figureront jamais.

Pour l'instant, c'est un prototype "quick and dirty", je réfléchirai plus tard à une solution propre.

Installation

Pour l'instant, le paquet julia n'est pas prêt, il faut donc faire à la main :

  • installation de julia
  • installation des dépendances (HTTP, JSON, TOML, JLD2, Logging, ProgressMeter, OrderedCollections, Dates, LightGraphs, Statistics, Plots)
  • clonage du dépôt
  • ajout du chemin

Utilisation

Pour l'instant, pas d'interface. Les fonctions suivantes permettent d'exporter les données

DataJune.BlockchainBrowser.sync() # synchronisation des données via les chunks
data = DataJune.BlockchainBrowser.browse() # exploration des données et indexation
DataJune.LightGraphExporter.lightgraph_export(a, 3600*24) # export de la wot au format lightgraph avec un pas de temps de 1 jour
DataJune.StatsExporter.export_api_files() # parcours des fichiers lightgraph et export sous forme json
DataJune.DataPlotter.plot_member_count() # réalise le plot "members count" à propos des données exportés

Pour manipuler les donnés à la main

w = DataJune.WotHistory.WotSnapshot() # load first snapshot
DataJune.WotHistory.set_current_interval(w, 365) # load snapshot after one year 

Déploiement

En attendant de mettre en place une routine automatique, on peut envoyer les données manuellement sur datajune.coinduf.eu avec rsync :

rsync -ravc api/ hugo@datajune.coinduf.eu:/var/www/datajune/api
rsync -ravc plots/ hugo@datajune.coinduf.eu:/var/www/datajune/plots