Dans le cas de processus tels que l’intégration des données, la migration des données,
l’automatisation des entrepôts de données, la synchronisation des données,
l’extraction automatique de données ou d’autres projets de gestion des données,
la qualité de l'étiquetage conditionnera la qualité des données qui seront analysées
pour en tirer des informations exploitables.
..glossary::
étiquetage des données
Un label est associé à une donnée pour savoir par exemple quelle est
sa provenance.
**E**\ xtraire les données
-----------------------------
- **Extraire les données** c'est, dans ce cas, charger depuis le système de fichiers en local,
les fichiers CSV et XML.
..note:: Pas besoin de collecte et agrégation des données.
Les Sources de datas sont présentes en local dans l'application.
..admonition:: TODO
Il faudra les enlever de l'arborescence flask pour les mettre dans
un :term:`référentiel de données`.
Datasource CSV::
./app/static/csv/corpus-agnes-bourgogne.csv
./app/static/csv/corpus-charles-i.csv
./app/static/csv/actors.csv
Datasource XML :
Dans `./app/static/xml/` :
..image:: img/xml.png
Le référentiel de données
--------------------------------
@ -215,68 +118,16 @@ La **T**\ ransformation des données
La transformation des données consiste à convertir les données d’un format source dans un format cible. Cela peut inclure un nettoyage des données par une modification des types de données, une suppression des données invalides ou des doublons, une agrégation des données, un enrichissement des données ou d’autres transformations.
- La transformation des données
- normalisation
- dédoublonnage
- vérification
- classement
- partage des données
Autres types de transformation :
- Cleaning
- Filtering
- Joining
- Sorting
- Splitting
- Deduplication
- Summarization
"The data cleaning and organization stage is the transformation stage."
..rubric:: Quel type de transformation des données et pourquoi ?
Il s'agit surtout de les structurer, ce que faisait, avant, le storage
dans une base de données relationnelle.
Aujourd'hui, l'organisation des datas ne relève plus de la responsabilité du storage
(`cohérence de type ACID <http://monge.univ-mlv.fr/~dr/XPOSE2011/BDD/acid.html>`_),
le storage n'ayant que la responsabilité de type `BASE <http://monge.univ-mlv.fr/~dr/XPOSE2011/BDD/acid.html>`_
Que signifie le data reshaping ?
--------------------------------------
On parle de data shape shifting ou data reshaping.
- data shape shifting (changement de forme des datas)
- data reshaping avec pandas
- data reshaping avec les schémas, que ce soient les schémas d'une database
ou bien les librairies de schémas d'une structure de données.
Avant, on utilisait uniquement les databases pour faire du data reshaping.
La database etait vue comme cela :
- PostgreSQL as a data processing engine,
- sqlite as a data processing engine.
La visualisation des pipelines
----------------------------------
Aujourd'hui, on utilise plutôt des librairies de validation de schémas (pydantic, JSON schema,
XML schema...)
Utiliser l'outil fournit avec kedro, lancer la commande::
Le chargement des données (**L**\ oad)
----------------------------------------
kedro viz
- mettre ces données dans un storage (dans ce contexte, une database nosql
de type mongodb).
On obtient une interface de ce type :
..note:: concernant le storage, un serveur mongo n'est pas gourmand en ressources
et reste dans le cadre d'outil "low tech" à mon avis.
..image:: img/kedro-viz.png
On peut aussi utiliser une base nosql qui ne soit pas un serveur
(comme pour sqlite dans le monde des databases relationnelles).
..note:: Chacune de ces étapes fait aujourd'hui l'objet d'un pipeline
indépendant.
Par exemple, dans le "data understanding", la question de l'extraction