2 - Données structurées
Les données sont l'une des parties fondamentales de tout système informatique.
Cette activité pose le vocabulaire utilisé dans les autres activités et permet de répondre à trois questions :
- Pourquoi les données sont-elles devenues un enjeu ?
- Les données sont-elles si immatérielles que cela ?
- Comment parvient-on à structurer l'information ?
Evaluation ✎ : questions 01-06-07-08-09-10
1 - Evolution des capacités de stockage
Nous avons déjà vu plusieurs types de données :
- Un fichier-image est en fin de compte une suite de nombres RGB stockés sous forme d'octets.
- Un fichier-vidéo n'est rien d'autre qu'une succession d'images, donc des octets également
- Les textes sont placés en mémoire à l'aide d'un codage associant chaque caractère à un nombre (65 pour A, 66 pour B...). Un fichier-texte n'est donc qu'une suite de nombres (stockés sous forme ...d'octets)
- Un fichier-html n'est rien d'autre qu'un fichier-texte transmis au navigateur et donc, au final, une suite de nombres également.
Nous pourrions continuer longtemps ainsi et faire l'énumération de tous les contenus numériques (musiques, pdf, programmes) : au final, il ne s'agit que de suites d'octets qui encodent un certain contenu.
Dans cette partie, nous allons voir pourquoi les données sont devenues aujourd'hui si nombreuses et si présentes autour de nous.
1.1 : l'octet
L'unité de base du stockage de l'information en informatique est le bit. Il s'agit d'une case mémoire qui ne possède que deux états : Vrai ou Faux, Haut ou Bas ou encore plus simple :
0 ou 1
Si on prend deux bits, on aura alors 4 possibilités différentes : 22 :
00 ou 01 ou 10 ou ou 11
En réalité, on ne transmet jamais un seul bit à la fois. On transmet toujours les bits par groupe de 8 bits consecutifs : c'est ce qu'on nomme un octet. Puisqu'on a 8 bits, on a alors 28 possibilités. Soit 256 nombres différents allant de 0 à 255.
- 0 0 0 0 0 0 0 0 pour la première possibilité (0)
- 0 0 0 0 0 0 0 1 pour la deuxième possibilité (1)
- 0 0 0 0 0 0 1 0 pour la troisième possibilité (2)
- 0 0 0 0 0 0 1 1 pour la quatrième possibilité (3)
- 0 0 0 0 0 1 0 0 pour la cinquième possibilité (4)
- ...
- 1 1 1 1 1 1 1 1 pour la dernière possibilité et 256e possibilité (255)
C'est pour cela qu'un octet permet de stocker un nombre compris entre 0 et 255 uniquement.
1.2 : évolution des premiers supports de stockage
Au début de l'utilisation des systèmes automatisés, on utilisait des systèmes mécaniques et les données étaient codées sous forme de cartes perforées : on voyait bien les 0 et les 1 !
![Mutatis mutandis [CC BY-SA 3.0 (http://creativecommons.org/licenses/by-sa/3.0/)], via Wikimedia Commons Punched card](https://doc.infoforall.fr/activite/donnees/images/binaire/512px-Punched_card.jpg)
Puis vint un autre système de stockage, plus rapide mais toujours fortement mécanique : la bande magnétique.

L'avantage par rapport aux fiches ? Plus de vitesse et la possibilité de modifier l'enregistrement sans sortir du scotch !
En 1956, la société IBM crée un premier disque dur de 5 Mo. L’ensemble mesurait alors 1,52 x 1,73 x 0,74 m !

Le coût ? Environ 10 000 $ le Mo !
Le gros avantage du disque dur ? Un peu moins de mécanique encore : c'est un ensemble de disques qui tournent à grande vitesse. Moins d'usure que les deux systèmes précédents.
Au fil des ans, le prix du Mo et l'encombrement des disques durs à diminuer, démocratisant peu à peu son utilisation.
Dans les années 1984 sont apparus des systèmes de stockage de masse purement électroniques, sans pièce en mouvement : la carte SD et la clé USB.
Ce type de technologie remplace maintenant de plus en plus les disques durs classiques. Il s'agit des fameux disques durs SSD.
En 2007, le stockage a même l'air d'être devenu immatériel : on passe au stockage dans le "Cloud" avec Dropbox par exemple.

Mais en réalité, sous cette belle image de nuage tout mignon, se cache des Data Centers, c'est à dire un entassement d'ordinateurs. Et ils chauffent, quoi qu'on en dise...

Si vous voulez voir à quoi les Data Centers un peu plus propres du futur pourraient ressembler, vous pouvez suivre ce lien qui mène à une vidéo d'Orange stockée sur Dailymotion.
Bref, les prix ont baissé de façon drastique :
- en 1958 : 10000 $ le Mo
- en 2000 : 0.02 $ le Mo...
- en 2010 : 0.08 $ le Go, 8 cents pour mille fois plus de mémoire !
- et ça continue à baisser...
Bilan
Toutes les données informatiques sont stockées sous forme d'octets.
- Le prix de ce stockage a dramatiquement baissé depuis les années 2000.
- Les possibilités de récupérer des données facilement ont augmenté avec l'explosion d'Internet et du Web.
Conclusion : au début, les sociétés devaient sélectionner les données qu'elles enregistraient mais, aujourd'hui, elles peuvent se permettre de stocker un peu tout et n'importe quoi en attendant de voir si les informations vont réellement être utiles.
Les données sont donc devenus un produit créé en grande quantité et facile à stocker.
Pour finir, voyons quelques unes des unités à connaitre :
Capacités de stockage
Pour décrire la taille d'une donnée, on utilise :
- L'octet (un caractère)
- Le kilo-octet (ko) qui vaut 1000 octets (une courte histoire).
- Le Mega-octet (Mo) qui vaut 1000 ko et donc un million d'octets (un roman).
- Le Giga-octet (Go) qui vaut 1000 Mo et donc un milliard d'octets (un film).
- Le Téra-octet (To) qui vaut 1000 Go et donc mille milliards d'octets.
- Le Péta-octet (Po) qui vaut 1000 To et donc un million de milliards d'octets (en 2020, Google traitait plus de 24 Po d’informations chaque jour).
A titre informatif, en 2018, il y a eu 33 millions de To de données produites.
Le résumé en tableau :
Sous-unité | Valeur en octet | Equivalent au stockage |
---|---|---|
Un kilo (k) représente 103 | soit |
Un petit texte |
Un Méga (M) représente 106 | soit |
un livre ou une image HD |
Un Giga (G) représente 109 | soit |
un film |
Un Téra (T) représente 1012 | soit |
|
Un Péta (P) représente 1015 | capacité mémoire d'un cerceau humain selon certaines études | |
Un Exa (E) représente 1018 | ||
Un Zetta (E) représente 1021 | Production annuelle d'informations par Internet |
✎ 01° Fouiller dans la configuration de votre Smartphone ou de votre ordinateur pour trouver la place mémoire totale.
02° Les mémoires des smartphones sont-elles composées de disques durs classiques ?
...CORRECTION...
Non, ces mémoires sont des mémoires purement électroniques, sans composant mobile. Comme les cartes et disques durs SSD.
2 - Données structurées
En réalité, on ne stocke pas juste des données.
Donner un rapport de 30 000 pages écrits à un système informatique ne sert pas à grand chose. Pour être efficace, il faut fournir au système les informations dans un format bien défini.
C'est ce qu'on nomme des données structurées.
Nous allons voir ce que signifient tous ces termes.
Données non structurées
Une donnée non structurée est une donnée présente mais qu'un système automatisé aura bien du mal à retrouver.
Exemple
C'est une voiture de sport de couleur rouge et conduite par un moustachu qui porte des chemises à fleurs.
L'un de ses amis possède un bel hélicoptère. Celui-ci est plutôt marron mais possède également quelques lignes colorées dans des tons rouge, bleu et jaune.
03° Quel est le type et la couleur du premier véhicule ? Quel est le type et la couleur du second véhicule ?
...CORRECTION...
Véhicule : Voiture de sport --- Couleur : rouge
Véhicule : Hélicoptère --- Couleur : marron
Vous venez d'utiliser un centre de traitement de l'information super performant : votre cerveau.
Pas possible pour un ordinateur. Il existe une branche de la recherche informatique qui traite de cette capacité de donner du sens à un texte brut mais c'est loin d'être facile et rapide.
La meilleur façon pour qu'un ordinateur puisse traiter cela est de lui mâcher le travail : nous allons structurer les données.
Vocabulaire sur les Données structurées
Une donnée structurée est une donnée présentée selon un format connu et fixe.
Il peut s'agir par exemple d'un tableau à deux entrées.
Exemple
Identifiant | Type | Utilisation | Couleur |
---|---|---|---|
0 | Voiture | Sport | Rouge |
1 | Hélicoptère | Tourisme | Marron |
2 | Voiture | Sport | Rouge |
Cette fois, on voit qu'on pourra demander facilement à l'ordinateur de renvoyer les couleurs des véhicules : il suffit de trouver la bonne colonne. C'est beaucoup plus facile.
Les colonnes sont nommées les descripteurs.
Toutes les données présentes dans ce tableau partagent les mêmes descripteurs et les fournissent dans le même ordre :
ID - Type - Catégorie - Couleur.
Chaque ligne se nomme un enregistrement
La seule ligne qui ne soit pas un enregistrement est la toute première, en bleu foncé. Il s'agit de l'en-tête (header en anglais). Elle permet de connaître le nom et l'ordre des descripteurs.
La collection est le nom donné à l'ensemble des enregistrements, donc au tableau.
Collection | Attributs | |||
Identifiant(0) | Type(1) | Utilisation(2) | Couleur(3) | |
---|---|---|---|---|
Enregistrements | 0 | Voiture | Sport | Rouge |
1 | Hélicoptère | Tourisme | Marron | |
2 | Voiture | Sport | Rouge |
04° Répondre aux questions suivantes :
- Quels sont les descripteurs de la collection précédente ?
- Combien y-a-t-il d'enregistrements dans cette collection ?
- Quelle est la valeur qui correspond au descripteur d'indice 2 et à l'enregistrement d'indice 0 ?
...CORRECTION...
Il y a 4 descripteurs :
- Indice 0 : Identifiant
- Indice 1 : Type
- Indice 2 : Utilisation
- Indice 3 : Couleur
Il y a 3 enregistrements d'indice 0, 1 et 2.
La valeur d'indice 2 en descripteur et d'indice 0 en enregistrement correspond à sport
05° Quel est le seul attribut qui permette de distinguer le premier et le dernier enregistrement ?
...CORRECTION...
Il s'agit de l'identifiant. On rajoute TOUJOURS un identifiant qu'on définit soi-même. De cette façon, nous sommes certains de pouvoir distinguer deur enregistrements même si les contenus sont similaires.
✎ 06° Peut-on séparer deux individus uniquement à l'aide du nom et du prénom ? A quoi sert le numéro de sécurité sociale ?
3 - Exo Pokemons
Dans l'une des prochaines activités, nous allons travailler sur un jeu de données stocké dans un fichier dit CSV et qu'un tableau sait ouvrir et lire. Il contient les caractéristiques des Pokemons. En voici un extrait :

✎ 07° Combien d'enregistrement sont-ils visibles sur cette photo d'écran ?
✎ 08° Quelle est la lettre caractérisant le descripteur points de vie (HP pour Hit Points en anglais) ?
✎ 09° La cellule G4 sélectionnée fait référence à 82. Quel est le descripteur correspondant ?
✎ 10° Trouver le ou les Pokemons de type Feu qui possèdent une attaque supérieure à 80 et une défense supérieure à 80. Pensez-vous qu'on peut programmer facilement ce type de requête ?
4 - Trois formats de données structurées
Partie optionnelle en fonction du temps restant.
L'activité suivante repsrend les notions de toutes manières.
Voici 3 façons de stocker les données de façon structurée.
Dans les trois cas ci-dessous, vous allez voir qu'il s'agit ni plus, ni moins qu'un fichier texte dans lequel le système informatique pourra naviguer facilement.
4.1 - Le format CSV
CSV veut dire Comma-Separated Value : valeur séparée par des virgules.
- Le début et la fin de la collection sont simplement le début et la fin du fichier-texte.
- Une ligne par enregistrement.
- Chaque descripteur est fourni sur la ligne dans un ordre précis. C'est le passage à la ligne qui permet au système de détecter et séparer les enregistrements.
- Les valeurs des descripteurs sont séparées par des virgules ou des points virgules.
- Option : La première ligne peut contenir les noms des descripteurs et pas un enregistrement.
A titre d'exemple voici la représentation CSV d'un tableau contenant la collection ci-dessous :
Collection | Attributs | |||
Identifiant | Type | Utilisation | Couleur | |
---|---|---|---|---|
Enregistrements | 0 | Voiture | Sport | Rouge |
1 | Hélicoptère | Tourisme | Marron | |
2 | Voiture | Sport | Rouge |
Contenu du fichier vehicules.csv :
1
2
3
4 | Identifiant, Type, Utilisation, Couleur
0, Voiture, Sport, Rouge
1, Hélicoptère, Tourisme, Marron
2, Voiture, Sport, Rouge
|
Nous verrons qu'un tableur est capable d'ouvrir les fichiers CSV.
✎ 11° En utilisant un simple éditeur de texte comme Notepad ou Notepad++, réaliser un fichier CSV contenant au moins 3 chansons dont voici les descripteurs et leurs ordres :
- Le "nom" de la chanson
- L'"interprète" (le chanteur ou le groupe si c'est un groupe)
- Le "genre" du morceau (en minuscules): rap, pop, rock, ...
- L'année de "sortie" du morceau
- La durée en "minutes" sous forme d'un entier (inutile de rajouter les secondes)
- votre "notation" entre 0 (c'est nul) et 5 (c'est top)
Envoyer le fichier via l'ENT pour que je puisse centraliser les morceaux pour la prochaine séance.
4.2 - Le format XML
XML veut dire Extensible Markup Language : il s'agit d'utiliser des balises pour identifier le contenu, comme en HTML.
- Le début et la fin de la collection sont identifiés par l'utilisation d'une balise d'ouverture et de fermeture qui porte le nom de la collection, comme <collec> et </collec>.
- Le début et la fin d'un enregistrement sont identifiés par l'utilisation d'une balise d'ouverture et de fermeture qui porte le même nom pour tous les enregistrements, comme <vehicule> et </vehicule>.
- Chaque descripteur est également identifié par une balise spécifique ouverture-fermeture. On devra donc retrouver ces balises autant de fois qu'il y a d'enregistrements. Exemple : <type> et </type>.
A titre d'exemple voici la représentation XML d'un tableau contenant la collection ci-dessous :
Collection | Attributs | |||
Identifiant | Type | Utilisation | Couleur | |
---|---|---|---|---|
Enregistrements | 0 | Voiture | Sport | Rouge |
1 | Hélicoptère | Tourisme | Marron | |
2 | Voiture | Sport | Rouge |
Contenu du fichier vehicules.xml :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 | <collec>
<vehicule>
<identifiant>0</identifidant>
<type>Voiture</type>
<utilisation>Sport</utilisation>
<couleurn>Rouge</couleur>
</vehicule>
<vehicule>
<identifiant>1</identifidant>
<type>Hélicoptère</type>
<utilisation>Tourisme</utilisation>
<couleurn>Marron</couleur>
</vehicule>
<vehicule>
<identifiant>2</identifidant>
<type>Voiture</type>
<utilisation>Sport</utilisation>
<couleurn>Rouge</couleur>
</vehicule>
</collec>
|
4.3 - Le format JSON
JSON veut dire JavaScript Object Notation : il s'agit d'un format classique pour réaliser des échanges de données structurées en petites quantités en un serveur et un client.
- La collection est entourée par des crochets []. Le début correspond à [ et la fin à ].
- Chaque enregistrement est entouré par des accollades {}. Le début d'un enregistrement correspond à { et la fin à }.
- Chaque enregistrement est séparé des autres par une virgule.
- Chaque descripteur apparaît sous forme d'un string suivi du caractère de séparation : suivi de la valeur de ce descripteur pour cet enregistrement. Exemple : "type":"Sport".
- Chaque descripteur est séparé des autres par une virgule.
- Les valeurs peuvent être représentées soit comme des strings, soit comme des nombres.
A titre d'exemple voici la représentation JSON d'un tableau contenant la collection ci-dessous :
Collection | Attributs | |||
Identifiant | Type | Utilisation | Couleur | |
---|---|---|---|---|
Enregistrements | 0 | Voiture | Sport | Rouge |
1 | Hélicoptère | Tourisme | Marron | |
2 | Voiture | Sport | Rouge |
Contenu du fichier vehicules.json :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 | [
{
"identifiant":0,
"type":"Voiture",
"utilisation":"Sport",
"couleur":"Rouge"
},
{
"identifiant":1,
"type":"Hélicoptère",
"utilisation":"Tourisme",
"couleur":"Marron"
},
{
"identifiant":2,
"type""Voiture",
"utilisation":"Sport",
"couleur":"Rouge"
}
]
|
Activité publiée le 27 04 2021
Dernière modification : 27 04 2021
Auteur : ows. h.