Actualités Emploi Start-up Evénements 01 Avis d'expert Vidéos Indicateurs Distribution Telecharger Pro Livres blancs

Une base de données mondiale

Google, Microsoft, et quelques start up s'appuient sur les formats RSS et Atom, ainsi que sur les URI pour accéder facilement à n'importe quelle donnée distante, puis la transporter d'un serveur à l'autre.
envoyer
par mail
imprimer
l'article
partager sur Viadeo
partager sur Facebook
partager sur LinkedIn
partager sur Scoopeo
partager sur Technorati
partager sur Digg
partager sur Delicious
partager sur Google
partager sur Myspace
partager sur Yahoo!

Depuis l'apparition du web, les informaticiens partent du principe que derrière toute URL se trouve une page HTML ou un document (PDF, image, etc.). Pourtant, le mécanisme d'adressage des URL n'impose aucun format de données. Que se passerait-il si l'on remplaçait les pages HTML par des fichiers ou des flux XML contenant des données structurées ? “ Le web se transformerait alors en une gigantesque base de données ”, estime Tom Coates, chercheur chez Yahoo. Une simple URL, aide, en effet, à échanger des données métier structurées d'un progiciel à l'autre (mode point à point) en empruntant le réseau public ! Caractéristique du web 2.0, cette démarche repose sur des technologies qui existent depuis des années. Alors que personne n'y avait pensé, elle est maintenant utilisée par des services grand public comme Del.icio.us (partage de favoris en ligne) ou Flickr (partage de photos). Tout porte à croire qu'elle le sera demain par l'ensemble des éditeurs.

Cette approche s'appuie sur les architectures Rest et Ajax, la redécouverte du rôle des URI (Uniform Resource Identifier), et une extension de l'usage de RSS (Really Simple Syndication). Rest (Representational State Transfer) s'est imposée comme l'architecture de référence pour échanger des données d'un site à l'autre en mode asynchrone. Elle consiste simplement à écrire, modifier, ou supprimer un fichier XML sur un serveur web en s'appuyant sur les en-têtes du protocole HTTP 1.1. La lecture d'un fichier XML aide à récupérer des données, l'écriture à en ajouter ou à modifier, etc. Bien entendu, Rest ne propose qu'un mécanisme d'échange, dont HTTP est le protocole. Les fichiers XML échangés sont donc les interfaces de services.

Depuis le succès de Rest, d'autres formats, protocoles, et architectures d'échange sont apparus. Et notamment Ajax (Asynchronous Javascript and XML). Ce motif de conception rend possible l'échange de données entre le client web et le serveur. Il repose sur une structure de données aux formats Javascript avec JSON, texte avec YAML, etc. Les échanges Ajax servent surtout à alimenter des composants d'interface graphique avec des services web métier.

Les URI, SQL du web 2.0

En parallèle des échanges entre clients et services, RSS aide à mettre en œuvre l'équivalent d'un mode push. Ce format de données créé par Netscape en 1999 pour faciliter l'échange d'actualités entre sites web définit une enveloppe XML contenant un titre, une URL pointant vers l'article, une description, une date de publication, un auteur, et d'autres balises, dont un champ libre “ commentaires ”. RSS repose sur un échange client-serveur, où le client vient lire la liste des derniers articles (un fichier XML, en fait) à une adresse donnée. “ Rien n'empêche de remplacer les informations de l'article par des données. Le titre de l'article peut alors être un identifiant ; plutôt que de pointer vers un article, l'URL peut pointer vers un document XML contenant les données ”, note Jérémy Chatard, directeur technique de la SSII Breek. Même le champ libre “ commentaires ” défini par RSS peut contenir une structure XML, et donc des données.

Rest, Ajax, et RSS fonctionnent parfaitement pour des échanges réguliers de données, en mode point à point, d'un logiciel à l'autre. En revanche, elles ne fournissent aucun mécanisme d'adressage des données. Il restait donc à inventer un langage de requête, tel SQL, pour les compléter. De nombreuses start up du web 2.0 proposent d'utiliser les URI à cet effet. Elles exposent ainsi les objets métier qu'elles manipulent au travers d'URI qui pointent sur des pages web ou des fichiers XML. La structure publique de sites tels que Flickr ou Del.icio.us rend possible d'adresser un objet métier particulier et ses propriétés de façon prédictible et stable. Pour trouver la liste des photos d'un individu, il suffit, par exemple, de taper l'URL “ flickr.com/photos/identifiant_utilisateur ”. Les albums sont disponibles en ajoutant “ /sets ” derrière le nom de l'utilisateur, les photos correspondant à un mot-clé particulier le sont en ajoutant “ /tags ”, etc. Dans un contexte professionnel, l'objet “ photo ” pourrait être remplacé par l'objet “ client ”, l'objet “ album ” par l'objet “ commande ”, etc. “ La structure apparente du site devient donc un véritable langage de requête, car elle s'appuie elle-même sur la structure des objets métier sous-jacents. Cette structure remplace SQL ”, confirme Patrick Chanezon, architecte chez Google.

Peu à peu, chaque service en ligne cherche à utiliser un format de message standard pour échanger ses structures de données. “ RSS et Atom ont été retenus pour jouer le même rôle qu'ODBC ”, explique Patrick Chanezon. Microsoft et Google sont deux fervents défenseurs de cette approche. Microsoft a étendu RSS avec Simple Sharing Extensions (SSE) pour synchroniser un flux RSS dans les deux sens : émetteur et récepteur. “ SSE est donc particulièrement intéressant pour synchroniser une application qui a été utilisée en mode déconnecté ou pour mettre à jour en permanence deux progiciels ”, détaille Sami Jaber, directeur technique de Valtech Toulouse. Microsoft propose aussi Simple List Extension (SLE), déjà adoptée par Amazon, eBay, et Yahoo. Disponible sous licence Creative Commons, SLE s'appuie sur un système d'annotation de flux RSS pour créer automatiquement dans le navigateur une interface graphique interactive aidant à manipuler - afficher, trier, grouper, etc. - les données du flux RSS. “ SLE transforme un simple flux RSS en une application basique sans nécessiter de développement ”, résume Alain Le Hégarat, responsable marketing et ventes, division développeurs et plate-forme d'entreprise chez Microsoft. Il est même possible de rechercher localement (au sein des données chargées dans le navigateur) une information à l'aide d'un mot-clé.

Google veut imposer son format d'échange

De son côté, Google a lancé Google Data API (GData) il y a déjà quelques mois. S'appuyant sur RSS et Atom, elle “ fournit un protocole simple et standard pour lire et écrire des données sur le web ”, explique le moteur de recherche. GData ajoute à RSS et Atom un langage de requête propre à Google, un verrou optimiste pour les transactions, et un système d'authentification. Google compte imposer son format d'échange de données en le rendant obligatoire pour manipuler la plupart des API permettant d'accéder à ses services en ligne : Calendar, Spreadsheets, Base, etc.

Enfin, l'éditeur RSS Bus propose carrément un ESB allégé, basé sur RSS. Son bus d'échange est composé de connecteurs (pour S3 d'Amazon, LDAP, FTP, CSV, SQL, etc.), qui encapsulent n'importe quel format de données dans une enveloppe RSS pour véhiculer de façon standard le flux entre un client et un serveur, ou entre deux serveurs. Pour Google, Microsoft, et RSS Bus, le web est en voie de devenir la plus grande base de données distribuée du monde.

RSS et Atom, les nouveaux ODBC du web

RSS et Atom deviennent des formats d'échange de données d'un ordinateur à l'autre. Ils jouent le même rôle qu'ODBC et JDBC dans leurs environnements respectifs. Cette standardisation facilite l'agrégation des services et sources de données du web 2.0.

Comment échanger les données

Atom. Ce standard propose une enveloppe XML, aidant à transporter n'importe quelle donnée. Atom repose sur les mêmes principes que RSS.
RSS. Ce flux offre une enveloppe XML, conçue pour exposer un fil d'information. Le client appelle une URL, qui lui transmet le flux de données sous la forme d'un fichier XML normé.
YAML. C'est un langage de sérialisation de données. La sérialisation a lieu en mode texte et repose sur des structures de données très simples. YAML supporte les références.
JSON. Ce concurrent plus connu de YAML, Javascript Object Notation s'appuie sur la notation des objets Javascript pour transmettre des structures de données.
PHP. SerialYahoo propose une API facilitant l'échange des données directement au format natif de sérialisation de PHP.

Atom. Ce standard est composé de deux spécifications : une enveloppe et un protocole de publication. Ce dernier indique comment utiliser HTTP pour publier et mettre à jour une ressource web.
Rest. Ce protocole s'appuie sur les verbes HTTP (put, delete, etc.) pour lire, écrire, et supprimer un fichier XML sur un serveur distant.
Soap. Un protocole d'échange synchrone, que l'on oppose souvent à Rest. Il est surtout utilisé pour transporter un message d'un service à l'autre.
SSE. Ce flux améliore le protocole RSS en y ajoutant un mécanisme de synchronisation bidirectionnel.
GData. L'API Google Data ajoute à RSS et Atom le support de l'authentification, des transactions (verrou optimiste), et des requêtes.

Ces protocoles de transport de données s'appuient sur HTTP pour transporter des flux entre deux ordinateurs.

Avis d'expert : Patrick Chanezon, évangéliste API chez Google

“ À terme, le standard Atom pourrait bien supplanter RSS ”

“ C'est son successeur sur le plan technique. En attendant, la technologie Simple Sharing Extensions (SSE), de Microsoft, s'avère très intéressante, car elle transforme RSS en un mécanisme universel de réplication. Elle a d'ailleurs été développée par Jack Ozzie, l'un des fondateurs de Lotus Notes. ”

“ Contrairement à RSS, Atom est un standard défini par l'IETF ”

“ Tous les experts le considèrent comme une version plus moderne et plus efficace que RSS. SSE fonctionne aussi avec Atom. C'est pour ces raisons que nous soutenons ce standard chez Google. Dans le cadre d'applications professionnelles, on peut voir Atom comme un nouveau format d'enveloppe destiné aux services web Rest. Lorsque son API de publication sera standardisée, Atom pourrait devenir le tuyau par lequel circuleront de nombreuses données métier. ”

publicité
à lire aussi
SUR LES MÊMES THÈMES
L'indispensable gestion des compétences
Un processeur 100 cœurs pour Linux
Dell et Juniper dans les réseaux pour centres informatiques
Les métiers de l'informatique évoluent au CA
Un marchand d'armes rachète BBN
Externalisation : les DSI français restent assez conservateurs
Microsoft ouvre le format .PST d'Outlook
Ubuntu 9.10, le plus cloud des Linux
01Informatique
01 INFORMATIQUE
L'hebdo de référence des décideurs informatiques.
Micro Hebdo
MICRO HEBDO
L'hebdo qui vous simplifie la micro
et Internet.
L'Ordinateur Individuel
L'ORDINATEUR INDIVIDUEL
Le mensuel informatique qui vous informe et vous conseille.
Tous droits réservés © 1999 - 2009 Internext - 01net.