PostgreSQL adopte un format basé sur JSON pour cibler le marché du NoSQL
La bêta de la version 9.4 disponible

Le , par Arsene Newman, Expert éminent sénior
Au moment où la tendance NoSQL(Not only SQL) gagne encore plus de terrain, il semblerait que PostgreSQL soit sur les traces de MongoDB, en effet le célèbre SGBD relationnel et objet PostgreSQL vient de faire une annonce fracassante, la version 9.4 est compatible NoSQL nativement et introduit un nouveau format qui lui est dédié.

Ainsi même si cette nouvelle mouture apporte pas mal de nouveautés, la principale réside dans le nouveau format de stockage JSONB (Binaire JSON), qui permet de stocker des objets JSON en binaire (le format JSON est supporté depuis la version 9.2). L’intérêt réside dans la facilitation de la manipulation des objets par les administrateurs. D’ailleurs Robert Haas, architecte de données de PostgreSQL, a étayé cela : « JSONB utilise un format de stockage interne non exposé aux clients, les valeurs d’un JSONB sont envoyées et reçues en utilisant la représentation de texte JSON ».

L’autre avantage du format JSONB est la possibilité de représenter des entiers et des flottants encodés sur plus de 64 bits ce qui n’est pas le cas du format BSON de MongoDB, « JSONB peut représenter des valeurs JSON arbitraires. La communauté PostgreSQL croit que les limites de ce type sont inacceptables et veut fournir la pleine puissance de JSON aux utilisateurs » a déclaré Haas. Toutefois, cette possibilité qu’offre JSONB doit être utilisée avec parcimonie, car elle a un impact important sur les performances du SGBD.

Parmi les autres nouveautés de la 9.4 :
  • Introduction d’une nouvelle API pour le décodage des données issues des flux de réplication, ce qui limite l’utilisation d’application tierce pour effectuer ce genre de tâche.
  • Nouvelle fonctionnalité Refresh Concurrently : fonctionnalité de visualisation permettant de connaitre des statistiques mises à jour en temps réel.
  • Nouvelle fonctionnalité Alter System Set : permet aux administrateurs de modifier la configuration de PostgreSQL en ligne de commande via SQL.
  • Autres fonctionnalités : Introduction du Dynamic Background Workers ; Manipulation des tableaux et des matrices ; Fonctionnalités pour les tables.
  • Améliorations des performances générales.


Enfin Haas s’est félicité du développement du SGBD : « on constate certainement une évolution de PostgreSQL avec de nouvelles capacités et possibilités popularisées par le NoSQL » avant de lancer une dernière piqûre destinée aux autres concurrents, en déclarant que la véritable innovation ne réside pas dans l’élaboration d’un nouveau format, mais plutôt dans la mise en place de nouvelles possibilités pour la manipulation des données, une tâche qui reste difficile.

Télécharger PostgreSQL 9.4 beta

Source : Notes de version

Et vous ?

Qu’en pensez-vous ?

Pensez-vous que cette annonce donne un net avantage à PostgreSQL par rapport aux autres SGBD ?

Pensez-vous que cette annonce amorce le début du support du NoSQL par les SGBD relationnels ?


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


 Poster une réponse

Avatar de egann538 egann538 - Membre habitué https://www.developpez.com
le 19/05/2014 à 12:18
C'est une bonne nouvelle, PostGreSQL reste plus que jamais au goût du jour.

En ce qui me concerne cela me donne plus de questions que de réponses. Je n'ai jamais pratiqué le NoSQL et commence juste à m'y intéresser. Jusque là j'étais persuadé que le NoSQL présentait surtout des avantages de scalabilité et de résistance aux pannes, dans le sens ou la base peut être distribuée/répliquée sur plusieurs serveurs. Cette évolution de PostGreSQL me pose les questions suivantes:

  1. Quel est l'intérêt du stockage JSON par rapport à l'export JSON de données d'une base relationnelle? Est-ce justement cela qui apporte de la souplesse dans le stockage et la récupération des données?
  2. Les données JSON sont-elles récupérables par du SQL, ou la base PostGreSQL devient-elle schizophrène?
  3. Dans quel(s) cas ai-je intérêt à migrer des projets utilisant des bases de données relationnelles vers du NoSQL?
  4. Existe-t-il des solutions de configuration automatiques de base NoSQL (type Spring Data JPA pour du relationnel)
  5. Matt reviendrait-il sur sa décision?
Avatar de Traroth2 Traroth2 - Expert éminent sénior https://www.developpez.com
le 19/05/2014 à 12:55
Pour pouvoir être compétitif par rapport à MongoDB, il faudrait qu'on puisse requêter sur le contenu des documents JSON. Et ça n'offre pas la pertinence que permet une pile Javascript de bout en bout, comme MEAN.

http://mean.io/
Avatar de bretus bretus - Membre éprouvé https://www.developpez.com
le 20/05/2014 à 9:00
Citation Envoyé par egann538  Voir le message
  1. Quel est l'intérêt du stockage JSON par rapport à l'export JSON de données d'une base relationnelle? Est-ce justement cela qui apporte de la souplesse dans le stockage et la récupération des données?

JSON apporte une souplesse sur la structure.

Citation Envoyé par egann538  Voir le message
  1. Dans quel(s) cas ai-je intérêt à migrer des projets utilisant des bases de données relationnelles vers du NoSQL?

Je pense qu'il est rarement intéressant de supprimer une base de données relationnelles au profit d'une base orientée clé/valeur, d'une base orientée document, d'une base orientée graphe.

Par contre, je pense qu'il est intéressant dans certains cas de faire de la complémentarité (le Not Only dans NoSQL).

A titre d'exemple, pour une application web écrite en PHP, tu peux utiliser un SGBDR pour stocker les données de l'application et un Memcached pour stocker les sessions (clé/valeur).

Citation Envoyé par egann538  Voir le message
  1. Existe-t-il des solutions de configuration automatiques de base NoSQL (type Spring Data JPA pour du relationnel)

Je ne connais pas Sprint Data JPA, mais on tombe vite sur des Spring Data MongoDB.
Avatar de alassanediakite alassanediakite - Membre émérite https://www.developpez.com
le 21/05/2014 à 19:31
Salut
Merci Arsene Newman.
Je précise le lien pour le beta.
@+
Avatar de mapmip mapmip - Membre actif https://www.developpez.com
le 22/05/2014 à 9:51
Si PostgreSQL pouvait fournir des fonctionnalités de type graph database, ça serait super !
Avatar de Hinault Romaric Hinault Romaric - Responsable .NET https://www.developpez.com
le 18/12/2014 à 19:30
PostgreSQL 9.4 mise sur la flexibilité, la scalabilité et les performances
la solution introduit le format JSONB pour cibler le marché du NoSQL

Le populaire système de gestion de bases de données relationnelles et objets PostgreSQL sort dans une nouvelle version majeure.

PostgreSQL 9.4 allie flexibilité, scalabilité et performances, pour offrir aux administrateurs et utilisateurs plus de souplesse et une meilleure expérience.

L’une des nouveautés les plus importantes de cette mise à jour est la prise en charge du nouveau type de données JSONB (Binaire JSON). Avec JSONB, les utilisateurs n’auront plus à choisir entre une organisation relationnelle et non relationnelle des données : ils peuvent utiliser les deux en même temps.

JSONB offre la possibilité d'effectuer des recherches rapides et d'exprimer des conditions de recherches simples en utilisant les index GIN (Generalized Inverted Index). De nouvelles fonctions permettent d'extraire et manipuler des données JSON, avec des performances qui atteignent, voire surpassent celles des bases de données orientées documents les plus populaires, selon le PostgreSQL Global Development Group.

Avec JSONB, les données relationnelles peuvent être facilement associées aux données issues de documents pour une intégration complète dans un même environnement de bases de données. Cette nouveauté offre ainsi à PostgreSQL la compatibilité avec NoSQL, permettant à la solution de cibler désormais ce marché.

« JSONB apporte PostgreSQL à la communauté des développeurs JavaScript, en permettant aux données JSON d’être stockées et interrogées nativement. Node.js et autres framework JavaScript coté serveur peuvent bénéficier de la sécurité et de la robustesse de PostgreSQL, tout en stockant les données dans leur format préféré. », a déclaré Matt Soldo, chef de produit Postgres chez Heroku.

Cette version fournit une nouvelle API pour lire, filtrer et manipuler le flux de réplication de PostgreSQL. Cette interface est la fondation de nouveaux outils de réplication, tels que la réplication bidirectionnelle, qui soutient la création de grappes de serveur PostgreSQL multimaître.

Côté performance, on va noter plusieurs améliorations qui permettront aux utilisateurs de mieux tirer avantage de leur serveur PostgreSQL. Il s’agit notamment des améliorations des index GIN, avec une taille réduite de 50% et une vitesse multipliée par 3 ; des vues matérielles qui peuvent être mises à jour en parallèle pour produire des rapports à jour plus rapidement ; le chargement plus rapide du cache des bases de données après un redémarrage avec pg_prewarm et l’écriture du journal des transactions plus rapidement grâce au parallélisme

PostgreSQL 9.4 est disponible en téléchargement gratuitement sous une licence open source.

Télécharger PostgreSQL 9.4

Consulter les notes de version

Source : Site du projet

Et vous ?

Utilisez-vous PostgreSQL ? Que pensez-vous de cette version ?
Offres d'emploi IT
Ingénieur conception en électronique de puissance H/F
Safran - Ile de France - Moissy-Cramayel (77550)
Architecte électronique de puissance expérimenté H/F
Safran - Ile de France - Villaroche - Réau
Consultant sap finance/controlling H/F
Safran - Ile de France - Vélizy-Villacoublay (78140)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil