Indexation - a podcast by Sylvain Abélard

from 2016-03-20T14:45

:: ::

Bonjour, bienvenue dans cet épisode 9 sur l’indexation dans les bases
de données. C’était l’étape logique juste après l’épisode 8 sur lamanière de ranger et rechercher des données.

On parlait dans l’épisode précédent de ranger des livres, et d’aller
les chercher. Les seuls outils pour cela étaient un ensemble d’étagèreset quelques règles non écrites. J’aime bien chercher les règles non
écrites : c’est ce qui permet de tout clarifier, et parfois de toutremettre en cause pour créer de nouvelles opportunités.

1) On voulait donner un ordre, mais lequel ? On supposait que la
personne qui range ses livres ne se pose pas la question, ou plutôtqu’elle a une réponse toute faite : probablement de haut en bas du
meuble, de gauche à droite par étagère.

Si c’est vous qui savez, qui rangez et qui cherchez, ça marche, mais
bien sûr il faut prévenir les autres personnes qui pourraient vouloirle faire aussi, sinon ils ne trouvent pas le livre (dommage) voire
pire : ils “cassent” votre rangement avec des livres en désordre, avecle coût en performance qu’on a vu.

2) On se basait sur le fait que la seule information est la tranche
du livre, avec titre et auteur. Mais on n’est pas obligés. On peutfaire un papier qu’on scotche à côté de notre étagère pour expliquer
le système de rangement.

Enrichir la structure

Et là encore, les bibliothèques existent depuis longtemps et ont tenté
plein de bonnes idées, pour finir par s’accorder sur un standard.

Les allées sont rangées par thèmes, qui ont des sous-catégories,
on colle à chaque livre une référence unique… et on souhaitetoutefois que ce soit facile à naviguer quel que soit la manière
dont nos lecteurs veulent aborder le problème.

On ne peut ranger nos livres physiquement que d’une façon, alors
on a recours à une “structure” encore plus complexe mais plusastucieuse : ajouter en plus des étagères de livres des fiches ou
dossiers, permettant de retrouver référence et section en fonctionde votre question.

Un catalogue va lister tous les livres par ordre alphabétique du nom
des auteurs. Quand un livre a trois auteurs, il sera présent troisfois dans ce catalogue et ce n’est pas grave parce que ces trois
lignes mèneront vers la même référence, et donc un seul exemplairephysique du livre.

Sur les tonnes de livres et les millions de pages cumulées des
ouvrages, vous venez d’ajouter trois lignes, même pas une feuille A4,pour simplifier la vie de tous vos lecteurs.

On a fait une structure plus complexe mais plus puissante.
Et tant qu’on y est, on va faire un catalogue par titre, un paréditeur, un par date, et des entrées par sujets pour pouvoir
répondre aux lecteurs qui cherchent des livres à la croisée dessujets, comme histoire et religion, science et bande dessinée, etc.

Indexation

Ces catalogues papier ont un nom : maintenant presque tout est
informatisé, mais avant on appelait ça des index. Et c’est tellementutile que de nombreux livres de référence ont aussi un ou plusieurs
index permettant de retrouver le contenu dans le livre.

Index est un mot que vous avez peut-être déjà entendu au sujet des
bases de données, j’y consacrerai peut-être un épisode mais a priorivous avez déjà compris comment ça marche, et surtout vous venez de
comprendre pourquoi un index est souvent très bien (pratique pour larecherche), mais qu’il a toujours un coût (écrire et mettre le
catalogue à jour), et que parfois on choisit de ne pas payer ce coûtcar ça n’a pas assez d’utilité, par exemple, de faire un catalogue de
livres en fonction des prénoms des personnages principaux etsecondaires.

Un mot sur la suite

On a balayé la plupart des catégories d’épisodes que je voulais faire :
un concept très abstrait mais utile (002. le cache),
un sujet simple mais plein de pièges à démystifier(004. la priorité des règles CSS),
un sujet business (005. achats IT B2B),
de la philosophie (006. le Vide, l’Unité et l’Infini),
et quelques pièges ou astuces dans Ruby on Rails(003. les requêtes N+1et007. les associations).

Avec001. listes chaînéeset008. structures de données et algos de rechercheje vise à dédramatiser un sujet souvent inquiétant dans les
premières années d’école d’informatique ou d’apprentissage en solodans les livres ou sur Internet. Dans la vraie vie vous utiliserez
rarement les listes chaînées mais plutôt une bibliothèque oules constructions de votre langage de programmation.
Bref c’est bon pour la culture, et pour donner des idées, maisje trouve très dommage qu’il y ait des barrières à l’entrée
alors qu’on pourrait tout de suite commencer à apprendre sur desprojets plus amusants.

Pour la suite, je vais essayer de tourner sur ce genre de sujets,
je suis preneur de vos retours sur twitter.
Merci et à bientôt !

Further episodes of Zen M-4 : Zen Metaphor

Further podcasts by Sylvain Abélard

Website of Sylvain Abélard