Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

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

51PARTAGES

10  0 
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 ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de egann538
Membre actif 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?
1  0 
Avatar de Traroth2
Membre chevronné 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/
0  0 
Avatar de 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.
0  0 
Avatar de alassanediakite
Membre expert https://www.developpez.com
Le 21/05/2014 à 19:31
Salut
Merci Arsene Newman.
Je précise le lien pour le beta.
@+
0  0 
Avatar de mapmip
Membre averti https://www.developpez.com
Le 22/05/2014 à 9:51
Si PostgreSQL pouvait fournir des fonctionnalités de type graph database, ça serait super !
0  0