Gestion des données
Le service de gestion de données
Le schéma suivant présente les échanges entre chaque service lors de l’ingestion de données issue d’un processus externe. Chaque service est décrit plus précisément dans son chapitre.
Modèle - Domaine objet
Chaque entité métier (item) présente en base est un document. Chaque item possède un ensemble d’attributs qui peut être valorisé ou non. L’item est une unité atomique de lecture et de modification.
Un champ représente la définition d’un type métier. Par exemple une couleur est une chaîne de caractères d’une certaine longueur.
Une 'class' représente le type de l’objet stocké (lieu, voiture, personne, événement, attentat…). Une classe possède des attributs qui ont un nom et un champ qui représente son type. A noter que plusieurs attributs de la même classe peuvent utiliser le même champ.
Dans notre contexte, on appelle ontologie l’ensemble des règles qui définissent pour une classe donnée les attributs.
Les objets sont reliés entre eux dans un graph orienté et typé.
Chaque item est ajouté avec des meta-données système :
Métadata | Type | Mapping elastic |
---|---|---|
Identifiant de l'item |
|
|
Identifiant de l'item |
|
|
Identifiant de la class |
|
|
Identifiant du dataset |
|
|
Identifiant de la dataset definition |
|
|
Date d’insertion |
|
|
Date d’insertion |
|
|
Stockage des données des structurées
Plusieurs bases de données structurées sont disponibles :
-
Elasticsearch
-
Postgis
-
Kuzzle
-
Kuzzle Asset
-
Kuzzle Measure
Il est possible d’associer un stockage à une classe lors de sa création. Le stockage par défaut est Elasticsearch. Postgis est recommandé pour le stockage de données géodésiques lourdes et/ou complexes. Les stockages Kuzzle Asset et Kuzzle Measure sont utilisés pour le stockage de données iot.
Lors de la création d’une classe, un événement de création de classe est envoyé au service de gestion de données pour qu’il crée la structure de stockage associée à celle-ci.
-
Elasticsearch : création d’un index.
-
Postgis : création d’une table.
-
Kuzzle : création d’un index et d’une collection "provoly".
-
Dans le cas des stockages Kuzzle Asset et Kuzzle Measure, les index sont déjà présents. Aucun événement n’est envoyé.