1 Présentation d’OpenRefine

1.1 Fonctionnalités principales

OpenRefine permet de réaliser de manière interactive différentes opérations sur des données présentées de manière tabulaire :

  • Exploration
  • Correction et harmonisation
  • Transformation
  • Restructuration
  • Enrichissement

Les opérations sont enregistrées et reproductibles.

Les opérations simples sont réalisables à partir d’un menu mais l’utilisation du langage GREL (spécifique à OpenRefine) ou de Python est nécessaire pour profiter du potentiel de l’outil.

L’outil est surtout utilisé pour traiter des données textuelles, même si des fonctions mathématiques sont présentes. Ce n’est pas un outil d’analyse statistiques ni un tableur.

Les données sont présentées dans des cellules comme dans un tableur, mais…

  • L’outil n’est pas fait pour saisir des données, ni pour réaliser des calculs ou des graphiques
  • Les opérations s’appliquent à toute une colonne (il est possible techniquement d’éditer une cellule individuellement mais cette pratique est marginale)
  • Les formules sont séparées des données et ne sont pas contenues dans les cellules
  • L’affichage est paginé : on ne peut pas voir plus de 50 lignes d’un coup

1.2 Positionnement

D’autres outils ont des fonctions qui peuvent se rapprocher d’OpenRefine, même s’ils n’appartiennent pas à la même catégorie.

  • Outils dédiés à la préparation de données
    • OpenRefine (téléchargeable, gratuit)
    • Workbench data (gratuit, opensource, en ligne ) [En cours de développement, destiné à un public de data journalistes]
    • Trifacta (gratuit mais version gratuite limitée à 100 Mo, en ligne)
    • Talend data preparation ( payant mais version gratuite limitée à 30000 lignes, à installer)
    • Tableau prep (téléchargeable, payant)
  • Outils dédiés à l’analyse de données
    • Data science studio (payant mais version gratuite fonctionnelle, à installer)
    • Knime (gratuit, à installer)
    • Rapidminer (payant mais version gratuite limitée à 10000 lignes, à installer)
  • Outils dédiés à l’agrégation de données issues de sources multiples (Extract-transform-load)
  • Tableurs
    • MS Excel
    • Libreoffice (gratuit, à installer)
    • Google Sheets (gratuit, en ligne)
  • Scripts
    • R
    • Python
    • et bien d’autres langages
Avantages d’OpenRefine Inconvénients
Fonctions absentes des tableurs traditionnels Langage spécifique
Interface graphique Modèle de données contraint (tabulaire)
Totalement libre et gratuit Pas adapté au “big data”
Installation PC, Linux, Mac Ne traite pas de données en flux
Enregistrement des opérations réalisés Gourmand en mémoire
Maîtrise des données Pas de fonction collaborative
Large communauté d’utilisateurs Formats d’imports limités
Extensibilité (plug-ins) Ergonomie dépassée

Performance

Difficile de donner des chiffres exacts, tout dépend des opérations réalisées et de la mémoire vive allouée au programme! Avec 2 Go on traite sans problème au moins 100 000 lignes avec de nombreuses colonnes, et au moins 500 000 avec 3 ou 4 colonnes).

OpenRefine n’est pas fait pour traiter des “big data” (plusieurs millions de lignes…), mais un ensemble d’opérations peut être répété automatiquement ou manuellement sur plusieurs fichiers, on peut donc découper un gros fichier en fichiers plus petits et les traiter les uns après les autres.

1.3 Licence et mode de développment

Logiciel opensource et gratuit, développement communautaire.

Environ 5 développeurs très impliqués en 2020, mais une communauté plus importante de contributeurs occasionnels (testeurs, traducteurs, etc.) et une large communauté d’utilisateurs.

1.4 Historique

2009 : logiciel Gridworks développé en opensource par Metaweb, destiné à faciliter l’alimentation de leur base de connaissance sémantique Freebase

2010 : rachat de Metaweb par Google. Nouveau nom: Google Refine

2012 : Google cesse son soutien et l’outil devient communautaire. Nouveau nom: OpenRefine

Développement redynamisé depuis 2017 :

La feuille de route prévoit des évolutions importantes en 2021 (refonte complète de la documentation, de l’interface…).

Versions récentes

2.5 (2013). Dernière version compatible avec certaines extensions

2.7 (juin 2017)

2.8 (novembre 2017)

3.0 (septembre 2018)

3.1 (novembre 2018)

3.2 (juillet 2019)

3.3 (janvier 2019)

3.4 (septembre 2020)

Pour la liste des changements, voir l’annexe Annexe : Liste des changements depuis OpenRefine 2.7

1.5 Quelques exemples d’utilisation

1.5.1 Bibliothèques, archives, musées

1.5.3 Histoire et SHS

1.6 Documentation et références

1.6.1 Sites officiels

1.6.3 Base de connaissance et groupes de discussion

Conversations sur Twitter

1.6.4 Pour aller plus loin

Voir la liste de références en Annexe