Le W3C appelle les développeurs à tester trois nouveaux standards
Sur le stockage et l'utilisation hors-ligne de bases de données

Le , par Gordon Fowler, Expert éminent sénior
Le W3C vient de publier un nouveau projet de normalisation pour le Web. Cette fois-ci, il s'agit de normaliser le stockage de contenus hors-ligne via trois APIs standardisées.

Pour faire simple, les navigateurs ne servent plus simplement à surfer. Ils exécutent de plus en plus de tâches (cf. les Google Apps ou Microsoft Office 2010 en ligne).

Le stockage de données hors-ligne prend donc de plus en plus d'importance puisqu'il permet au navigateur de continuer à faire tourner ce nouveau type d'applications hébergées sans connexion internet.
On pense bien évidemment à Gears de Google ou aux "super-cookies" du HTML 5.

Le premier standard proposé se nomme Indexed Database API.
Comme son nom l'indique, l'API vise à transférer le moteur d'une base de donnée du Web vers le cache du navigateur.
En JavaScript, elle permettrait de stocker et d'effectuer des requêtes sans être connecté, la base étant en local.

Rien de très nouveau ?

Certes, mais jusqu'ici chaque développeur réalisait sa propre solution pour arriver à ce résultat. Le W3C propose, lui, de standardiser tout cela pour diffuser plus rapidement la techno, faciliter le travail des développeurs et surtout accélérer la transition d'un Web "statique" vers un Web dynamique (Rich-Media, Cloud, etc.).
Cette transition étant, rappelons-le, le cheval de bataille du W3C.

La deuxième proposition a été baptisée Web Storage.
Si Indexed Database API est spécialement conçue pour les "grosses" bases, WebStorage API ne concerne lui que les petites quantités de données à traiter.

Enfin, le W3C travail sur Web SQL Database.
Identique à Index Database, à une différence près, Web SQL Database ne concerne que les données stockées en SQL tandis que le premier standard évoqué concerne aussi les bases non-relationnelles.

En phase de projet (voire de pré-projet), le W3C invite les développeurs à tester ces propositions et à lui faire part de leurs avis.

Le succès - ou l'échec - de ces normes sera également conditionné par son adoption par les principaux acteurs du marché.

Pablo Castro, Software Architect chez Microsoft (chargé de SQL Server) a d'ores et déjà laissé entendre que ce projet lui semblait une excellente idée.

Un premier bon signe ?

Source : Les propositions du W3C pour IndexedDB, Web Storage, Web SQL DataBase et la réponse de Pablo Castro

Lire aussi

Débat Développement Web : Les normes W3C sont-elles utiles ?

Le W3C se penche sur l'avenir du HTML 5 du SVG et de l'IPv4

[ame="http://www.developpez.net/forums/showthread.php?t=833089"]Formulaire Web : XForms 1.1 devient une recommandation du W3C[/ame]

OWL 2 : le nouveau standard du W3C veut faciliter l'intégration d'informations. S'imposera-t-il avec le Web Sémantique ?

Les Rubriques Développement Web et SGBD (news, tutos, forums) de Developpez.com

Et vous ?

Allez-vous tester ces APIs du W3C (et pourquoi) ?
N'hésitez pas à nous faire part de vos impressions et de vos retours d'expérience


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de temoanatini temoanatini - Membre averti http://www.developpez.com
le 11/01/2010 à 13:04
Pour ma part, je me demande juste à quelle point cela va influer sur la consommation des différents navigateurs.
Enfin... j'entends bien que ça ne risque pas de diminuer les ressources nécessaires mais la question est plutôt a quel point est-ce qu'ils vont grossir ?
Avatar de spawntux spawntux - Membre confirmé http://www.developpez.com
le 11/01/2010 à 16:10
Hello

Moi je pense surtout que ca vas posé un bon gros probleme de secu
Avatar de duplo duplo - Membre habitué http://www.developpez.com
le 11/01/2010 à 16:41
Les navigateurs sont pourtant déjà suffisamment lourd comme sa !

De plus, être "hors ligne" a t'il encore vraiment un sens de nos jours ?
Avatar de Julien Bodin Julien Bodin - Membre éclairé http://www.developpez.com
le 11/01/2010 à 16:48
Je m'interroge également énormément sur la sécurité. Si ils arrivent à trouver une solution là dessus ça peut offrir des perspectives très intéressantes
Avatar de ILP ILP - Membre averti http://www.developpez.com
le 11/01/2010 à 16:52
Citation Envoyé par duplo  Voir le message
De plus, être "hors ligne" a t'il encore vraiment un sens de nos jours ?

Pour le grand public, peut-être pas. Mais pour certains professionnels c'est une nécessité. Enregistrer des informations alors qu'ils sont en déplacement comme des mesures ou des positions contrôlées par exemple.
Et souvant les outils utilisés ont des mémoires limitées et pas d'accès à Internet (encore moins au haut-débit ).
Avatar de duplo duplo - Membre habitué http://www.developpez.com
le 11/01/2010 à 16:56
Bon j'admet que sa ferais aussi un grand bien a la bande passante...

Reste la question de sécurité.
Avatar de Lyche Lyche - Expert confirmé http://www.developpez.com
le 11/01/2010 à 16:57
Citation Envoyé par ILP  Voir le message
Pour le grand public, peut-être pas. Mais pour certains professionnels c'est une nécessité. Enregistrer des informations alors qu'ils sont en déplacement comme des mesures ou des positions contrôlées par exemple.
Et souvant les outils utilisés ont des mémoires limitées et pas d'accès à Internet (encore moins au haut-débit ).

Tu parles, avec un téléphone portable on peut se connecter sur le net avec un débit raisonnable, pourquoi ne pas la présenter cette solution pour les professionnels en déplacements?
Avatar de gwinyam gwinyam - Membre chevronné http://www.developpez.com
le 11/01/2010 à 23:20
Citation Envoyé par duplo  Voir le message
Les navigateurs sont pourtant déjà suffisamment lourd comme sa !

De plus, être "hors ligne" a t'il encore vraiment un sens de nos jours ?

Oui, sur les terminaux mobiles. Oups, il y a t'il quelque chose de prévu pour ça? Je crois pas
Avatar de McBenny McBenny - Nouveau membre du Club http://www.developpez.com
le 13/01/2010 à 9:49
Hello,

Une base de données contient des tas de choses qui ne sont pas utiles toutes en même temps. En fonction de la situation, on émet une requête pour sélectionner des données et les afficher.
Si on veut stocker la base de données localement, on va télécharger la totalité de la base, au cas où... donc une quantité énorme de données pour une utilisation qui sera forcément partielle voir tout à fait minime.
=> Où est l'économie de bande passante ?

Que dire d'informations "sensibles" stockées dans la base de données ? Si les coordonnées de connexion d'un membre de site sont stockées dans la base, celles des autres membres aussi non ? et quand bien même elles seraient cryptées, une fois la base téléchargée, on a tout le temps...
=> Où est la confidentialité ?

Le principe d'une base de données est aussi d'être évoluable, en fonction d'actions des utilisateurs, tant en front-office qu'en back-office. Si je télécharge une base à 8h00, que vaut-elle à 12h00 ? Vous allez me dire qu'on les mettra à jour à 12h00 ? D'accord. Mais alors à 10h00, elles valaient quoi les données ? Je la fais courte, la solution est donc bien la connexion persistante.
=> Quelle validité ont les données une fois téléchargées ?

Si je suis à côté de la plaque dîtes-le moi, ne ma laissez pas dans l'ignorance.
Avatar de Lenoa Lenoa - Futur Membre du Club http://www.developpez.com
le 13/01/2010 à 11:47
Pour la normalisation !
Sinon, c'est plus pour les autres, moi, je ne les utiliserai sûrement pas trop ...
Sinon, McBenny, tu as dû mal comprendre. On ne stocke pas la BDD du site sur ton portable (bon courage pour la BDD de Yahoo Answer et ses quelques To ).
On stocke sur ton ordinateur une BDD spécifique à tes besoins (si j'ai bien compris). En gros, cela te permet de stocker ce que tu veux en JS, sans être limité par les cookies.
Avatar de jpv74 jpv74 - Futur Membre du Club http://www.developpez.com
le 13/01/2010 à 12:56
Avant le présent message, la somme des informations "variables et spécifiques de cette page" pesaient 8.761 octets.

Cependant le réseau web a transporté 518.203 octets … pour l'afficher.

Heu … n'y a t-il pas un peu de gaspillage ?
(rentabilité inférieure à 2%)

- NON pour un visiteur de hasard ou très occasionnel.
- NON (quoique ?) pour ceux dont le terminal a déjà à peine assez de mémoire pour stocker ses applications permanentes et les faire tourner … (mais que coûte aujourd'hui 1 Go de mémoire ?)
- OUI dans tous les autres cas.

Ceci est le fruit de la politique actuelle de l' « illimité ».
(analogue à l'époque où ni l'eau, ni la qualité de l'air n'étaient des ressources rares)

Dans le cas présent et pour les usagers habituels d'une telle structure de page (la majorité des membres inscrits … et des visiteurs), ne serait-il pas plus rentable en économie globale de n'utiliser les serveurs que comme pourvoyeurs des dernières informations éphémères …

… et de laisser le navigateur local faire la mise en page avec ses ressources stockées localement.

Combien de fois par an « www.developpez.net/forums/ » modifie sa structure de page ?

La règle serait simple :
- Tout block d'information envoyé par un serveur contiendrait son « horizon de validité ».

- L'initiative serait restituée à l'outil local (client) pour appeler les ressources qu'il n'aurait pas (ou plus) stocké localement (et pas seulement en mémoire volatile).

- Décharger les serveurs de la mise en page client (mais pas de son ou ses savoir-faire par défaut) … pour en charger exclusivement le terminal client.

Une telle révolution conceptuelle est conforme à la philosophie du Net :
« Le client se voit restituer le droit d'être le "centre de son univers" ».

Et dans son univers, le client choisit pour des raisons de confidentialité, de sécurité et de coût … ce qu'il stocke en local (serveur interne avec des copies et des originaux), ce qu'il stocke dans un serveur 100% privé et personnel sur la toile … et ce qu'il va chercher chez des « fournisseurs "serveurs d'informations" » choisis par lui (gracieusement ou avec abonnement et/ou avec publicité).

J'en ai déjà assez dit … pour que chacun mesure :
- le changement de philosophie,
- la modification de répartition des pouvoirs entre clients et serveurs,
- le bouleversement de la façon dont la plus part "développent",
- etc …

« Cloud Computing » n'est qu'un mot marketing …en concurrence avec d'autres.
Chaque acteur sur le Net tente de tirer la couverture à soi (normal, non ?).
"In fine", c'est le client qui l'emportera toujours …mais quand ?

Peut-être quand tout individu sur terre pourra correctement se connecter …où qu'il soit ponctuellement et quand il le voudrait ?

La période actuelle, celle du déploiement géographique de cette nouvelle industrie, n'est que transitoire : jusqu'à ce qu'au moins 80% ( ? ) de la population humaine y ait accès (il y aura toujours des irréductibles).

Aujourd'hui, c'est le droit à être connecté que chacun paye et surpaye (abonnements illimités) …et non pas l'usage réel qu'il en fait (transport d'informations) … d'où ce gaspillage monstre (dont bénéficie les "spammeurs" sauvages et les institutionnels : "Google", …).

Tant que le marché se développe … les FAI (transporteurs) laissent faire … jusqu'à quand ?

NON, il n'investiront pas dans de nouvelles infrastructures …qui après cette période se retrouveraient largement excédentaires … donc suicidaires dans un marché saturé et concurrentiel.

Lequel osera faire le premier pas ? … et quand ? … vers de tels réseaux "low-cost" de transport d'informations numérisées ?

Les réseaux mobiles (3G et suivants) ne révèlent-ils pas déjà la tendance ?
Offres d'emploi IT
Web sémantique et machine learning (H/F)
Atos - Midi Pyrénées - Toulouse (31000)
Ingénieurs d'études expérimentés webMethods ou Tibco
COOPTALIS - Nord Pas-de-Calais - Région lilloise
Ingénieur études et développement Web confirmé
METSIA - Provence Alpes Côte d'Azur - Marseille (13000)

Voir plus d'offres Voir la carte des offres IT
Responsable bénévole de la rubrique Développement Web : Xavier Lecomte -