MOOC Architecture de l’information https://www.france-universite-numerique-mooc.fr/courses/ENSDeLyon/14002/session01/about Web et bases de données Module 2 : Bases de données sur le Web Christine Dufour, Université de Montréal, 14/04/15 CC-BY-SA (https://creativecommons.org/licenses/by-sa/3.0/fr/) [D2] Les atouts des bases de données en font des environnements bien utiles sur le Web. Plusieurs contextes y sont en effet propices à l’exploitation des bases de données, des contextes où l’on veut intégrer, sur un site Web, [D2/1] une collection d’items possédant par exemple une structure de données récurrente et qui peut [D2/2] impliquer de très grands volumes de données et [D2/3] d’utilisateurs. [D2/4] La facilité de réutilisation des informations consignées dans des bases de données est particulièrement utile dans le cas de sites Web dont le contenu varie de manière régulière. [D2/5] Il est ainsi possible de mettre plus facilement à jour les données à même la base de données, les pages Web étant alors générées automatiquement, lorsqu’un internaute y accède, à partir des contenus de la base de données. C’est le cas, par exemple, du bottin ou de l’annuaire du personnel d’une institution disponible en ligne. L’administrateur de la base de données sous-jacente à ce bottin met à jour les informations en fonction des changements de personnel de l’institution. Ainsi, l’internaute qui accède au bottin en ligne verra, en temps réel, les changements qui y sont apportés. Pensons, par exemple, aux sites d’achats où l’on peut magasiner des produits. On y retrouve habituellement un catalogue présentant l’ensemble des produits que les clients peuvent choisir et acheter. Voilà un contexte parfait pour intégrer une base de données! [D3] Examinons plus avant un exemple d’un tel site que vous connaissez bien : Amazon, et analysons-le à l’aide des éléments définis précédemment. [D3/1] La réalité ici, ou le domaine d’application, est celle d’un site de commerce électronique, c’est-à-dire d’un site permettant de faire des transactions comme des achats, des ventes, des retours, pour la vente de livres, de DVD, et de bien d’autres types de produits accessibles par Amazon. [D3/2] On y devine trois collections principales d’items. D’une part il y a l’ensemble des produits, le catalogue en quelque sorte. D’autre part, il y a l’ensemble des clients qui ont un compte sur le site pour y faire des achats. Finalement, Amazon servant en quelque sorte de portail pour différents distributeurs, ces derniers représentent potentiellement aussi une collection. Les items de chacune des collections possèdent une structure d’information similaire : pour les produits, par exemple, on retrouve un intitulé, une description, un prix; pour les clients, on y consigne entre autres notre nom, nos coordonnées, nos identifiants bancaires. [D3/3] Les items des collections peuvent être reliés, le client étant relié à un produit acheté, le produit pouvant être associé à un distributeur particulier. [D3/4] Toutes ces données sont, sans contredit, des données évolutives mais persistantes. On ne veut pas qu’un client soit supprimé sans que cela soit le geste volontaire soit du client ou d’un administrateur du site! [D3/5] Parmi les enjeux particuliers à ce contexte se retrouvent, bien entendu, la capacité du système de base de données à gérer un très grand volume de données et un très grand nombre d’accès simultanés, le tout rapidement, mais aussi de manière fiable. Selon le site les500.fr, Amazon aurait eu quelque 209 millions de clients actifs en 2013 (http://www.les500.fr/fiches-entreprises/amazon.html). [D3/6] Comme il s’agit d’un site d’achat, un autre enjeu d’importance est en effet la sécurité des données, comme on y retrouve des données bancaires et des transactions monétaires. C’est ainsi « tolérance zéro » pour la perte ou la corruption de données. Le vol des données confidentielles sur les clients n’est pas sans conséquence, elles viennent miner la confiance des clients dans les sites d’achats, diminuant potentiellement les ventes. La majorité des sites assurent cette sécurité. La FEVAD - qui est la Fédération du e-commerce et de la vente à distance - annonçait que le commerce électronique mondial avait augmenté de près de 24% en 2013 pour atteindre 1 552 milliards d’euros (soit un peu plus de 2 000 milliards de dollars canadiens) (http://www.fevad.com/espace-presse/le-e-commerce-mondial-a-augmente-de-23-6-en-2013-et-a-atteint-1-552-milliards-d-euros). Un autre contexte propice aux bases de données est celui des blogues, ces sites d’information présentant des billets sur différents sujets en ordre chronologique inversé. [D4] Prenons l’exemple de TechCrunch, un blogue rapportant des nouvelles sur les technologies. [D4/1] S’y trouve regroupée, comme pour tout blogue, une collection de billets. De plus, comme il s’agit d’un blogue avec des auteurs multiples, on y retrouve des fiches décrivant le profil de certains de ses auteurs. Chaque billet possède une structure récurrente : on y retrouve un titre, un moment de mise en ligne, un auteur, le contenu du billet, des statistiques sur son partage, une catégorie. Lorsqu’une fiche existe pour un auteur, on y trouve une brève biographie. [D4/2] Un billet est associé à la fiche de son auteur, la fiche d’un auteur étant associée à l’ensemble de sa production ainsi qu’à son profil dans une autre base de données connexe appelée Crunchbase. [D4/3] Au-delà de ces observations qui indiquent qu’une base de données se cache derrière TechCrunch, un indice qui ne trompe pas est la mention « Powered by wordpress.com » que l’on retrouve en bas de page. Wordpress, une plateforme libre pour les blogues, enregistre les informations d’un blogue dans une base de données qui permet de reconstruire, à la demande, les différentes pages du blogue. [D4/4] Les enjeux pour ce site sont un peu différents de ceux de l’exemple précédent. La question de la capacité à bien gérer les accès multiples demeure, ainsi qu’à gérer un volume d’information non négligeable. [D4/5] Mais comme il ne s’agit pas d’un site où l’on fait des achats, la sécurité est un enjeu moins critique bien qu’il demeure important : aucun administrateur de site n’aime voir son site piraté et ses informations corrompues ou effacées. Pour TechCrunch, un enjeu potentiel est d’arriver à bien supporter le développement d’une communauté autour de son site, en particulier par les capacités de partager les articles qu’on y retrouve. Maintenant que nous avons pris le temps de bien comprendre ce qu’est une base de données et d’illustrer la présence de ces dernières sur le Web, ainsi que certains enjeux qui en découlent, nous porterons notre attention, dans le chapitre suivant, à un modèle de données particulier, le modèle relationnel.