PostgreSQL 9.5 renforce sa sécurité et sa gestion du Big Data

PostgreSQL 9.5 renforce sa sécurité et sa gestion du Big Data

Un festival de grosses données

Avatar de l'auteur
Vincent Hermann

Publié dans

Logiciel

12/01/2016 3 minutes
18

PostgreSQL 9.5 renforce sa sécurité et sa gestion du Big Data

Le système de gestion de bases de données PostgreSQL est désormais disponible en version 9.5. Il s’agit d’une mouture majeure, apportant un élément attendu depuis longtemps, UPSERT, ainsi qu’un renforcement significatif côté Big Data.

PostgreSQL 9.5 est donc disponible depuis quelques jours et apporte avec lui plusieurs évolutions importantes. La première est l’ajout d’UPSERT, une fonctionnalité réclamée depuis longtemps par les utilisateurs, du propre aveu de l’entreprise. UPSERT, pour « INSERT, ON CONFLICT UPDATE », permet de confier à la base de données le soin de gérer les modifications concurrentes des données, c’est-à-dire lorsqu’elles surviennent en même temps.

Modifications concurrentielles et sécurité plus fine

L’implémentation de cette fonctionnalité se veut particulièrement souple. Les développeurs auront le choix de la configurer comme ils l’entendent pour parer à toutes les éventualités. Par exemple, la clause « ON CONFLICT » peut permettre d’ignorer automatiquement les nouvelles données. Par ailleurs, la fonctionnalité a été prévue pour fonctionner de concert avec les autres et peut donc être utilisée dans tous les cas de figure.

Autre ajout important : Row Level Security. La fonctionnalité permet ainsi de contrôler les droits des utilisateurs par ligne et par colonne. Cette augmentation de la granularité devrait permettre une meilleure protection des bases de données contre les attaques par injection de code SQL. Selon PostgreSQL, cet ajout permettra à sa solution de concurrencer activement les autres dans certains domaines critiques, notamment dans la santé.

Nombreuses améliorations pour le Big Data

La nouvelle version 9.5 apporte en outre plusieurs améliorations liées au Big Data, c’est-à-dire au traitement des données volumineuses. Par exemple, un algorithme « clés abrégées » permet d’accélérer le tri des données textuelles et numériques. Conséquences, certaines requêtes triant des informations dans une base Big Data peuvent voir leurs performances multipliées par 2 à 12, et jusqu’à 20 pour la création d’un index. Les Foreign Data Wrappers, qui permettent d’utiliser le moteur de PostgreSQL pour interroger d’autres sources Big Data (comme Hadoop et Cassandra), prennent désormais en charge la commande IMPORT FOREIGN SCHEMA et le transfert des ordres JOIN, afin de simplifier les connexions.

La liste complète des améliorations peut être consultée sur le site officiel. Ceux qui souhaitent télécharger cette nouvelle version 9.5 pourront le faire depuis cette page. Pour rappel, ce SGBD open source est disponible sous Windows, OS X, Linux et Unix (BSD).

Écrit par Vincent Hermann

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Modifications concurrentielles et sécurité plus fine

Nombreuses améliorations pour le Big Data

Commentaires (18)


La licence PostgreSQL, elle est compatible avec d’autres licences open source plus connues ?




CGBD





SGBD


UPSERT <3


Il faut utiliser le bouton <img data-src=" /> .


Ben c’est très bien tout ça?


la granularité de la gestion des droits c’est bien mais ça empêchera pas les config à trous qui laissent un user admin/password …&nbsp;

bien joué pour UPSERT, je connaissais pas le concept et j’approuve ça va faire du bien !! :)



Et les évol bigdata c’est chouette aussi, on avance dans le bon sens. Par contre il y a encore trop peu de solutions NoSQL, c’est déjà chouette de voir un wrapper pour Cassandra, on pouvait déjà se dépatouiller il me semble, mais ça serait encore plus cool d’avoir une implémentation complète qu’on appelerait Quézac PostgreNoSQL ^__^ … Les BDD en FN3 c’est bien la plupart du temps, mais c’est aussi très lourd pour tout un tas d’usages qui profiteraient très bien du non relationnel.








SrBelial a écrit :



la granularité de la gestion des droits c’est bien mais ça empêchera pas les config à trous qui laissent un user admin/password …







C’est pas le problème de postgresql çà… Si l’admin laisse son sgbd en open bar c’est son problème <img data-src=" />









Crysalide a écrit :



La licence PostgreSQL, elle est compatible avec d’autres licences open source plus connues ?







C’est un dérivé de licence BSD et MIT. Autrement dit, c’est encore plus permissif que la GPL.









Crysalide a écrit :



La licence PostgreSQL, elle est compatible avec d’autres licences open source plus connues ?





À quel problèmes pense-tu en particulier ?



La licence de postgres est de type BSD (ancienne version), ça se marie généralement avec tout.



Autant je ne suis pas contre l’ajout de nouvelles fonctionnalités dans PostgreSQL, autant je peste car il lui manque toujours des fonctionnalités importantes :




  • Un vrai système de partitionnement : aujourd’hui la solution en place est m

  • Un système de pooling/load-ballacing de connexions (qui a dit Pgpool)

  • Un vrai système de sauvegarde

  • Un vrai système de réplication



    Ca permettrait à ce très bon SGBDR libre de se hisser au niveau de SQL Server, et Oracle


On peut dire la même chose de Oracle et SQL Server si tu vas par là… “Un vrai” ça veut rien dire, pose les critiques sur la table mais ne trolle pas dans le vide…








Tortue facile a écrit :



Autant je ne suis pas contre l’ajout de nouvelles fonctionnalités dans PostgreSQL, autant je peste car il lui manque toujours des fonctionnalités importantes :




  • Un vrai système de partitionnement : aujourd’hui la solution en place est m

  • Un système de pooling/load-ballacing de connexions (qui a dit Pgpool)

  • Un vrai système de sauvegarde

  • Un vrai système de réplication



    Ca permettrait à ce très bon SGBDR libre de se hisser au niveau de SQL Server, et Oracle





    Peux-tu préciser ce que tu entends par ces “vrais” systèmes ? (avec des détails techniques si possible)



c’est vrai :)


D’autant plus que c’est le gens de fonctionnalités qui peuvent se gérer au niveau du système.








gnumdk a écrit :



On peut dire la même chose de Oracle et SQL Server si tu vas par là… “Un vrai” ça veut rien dire, pose les critiques sur la table mais ne trolle pas dans le vide…







Poser les critiques sur la table, quand on parle de SGBD c’est fin <img data-src=" />



Ce que j’adore avec PostgreSQL c’est les contraintes sur les donnees&nbsp;(pas dispo sous MySQL)&nbsp;:&nbsp;http://www.postgresql.org/docs/9.5/static/ddl-constraints.html



Exemple :



CREATE TABLE products (&nbsp; &nbsp; product_no integer,&nbsp; &nbsp; name text,&nbsp; &nbsp; price numeric CHECK (price &gt; 0));

&nbsp;


partionnement c’est clairement pas tivial mais ca marche,

&nbsp;systéme de pooling comme avec toutes les bases, c’est a ton application a gérer ton pool. les driver postgres gére aussi le failover si tu veux.

&nbsp;load balancing&nbsp; c’est quand même plutôt dangereux (les slaves ne sont généralement pas au même niveau) gérer un cache est généralement plus facile. sinon, je ne connais aucune base qui le supporte sans ajout de composant (payant évidement) type pgpool.

sauvegarde: que veux tu de plus que le backup full a chaud + archiver les logs ?&nbsp;

replication : les slots de replication existe



&nbsp;sur les trucs marrant tu peux regarder l’extension pour avoir (avec certaine contrainte) du master / master, celle pour avoir du sharding …








tanguy_k a écrit :



Ce que j’adore avec PostgreSQL c’est les contraintes sur les donnees&nbsp;(pas dispo sous MySQL)&nbsp;:&nbsp;http://www.postgresql.org/docs/9.5/static/ddl-constraints.html



Exemple :



CREATE TABLE products (&nbsp; &nbsp; product_no integer,&nbsp; &nbsp; name text,&nbsp; &nbsp; price numeric CHECK (price &gt; 0));

&nbsp;





Euh on parle ici de SGBD ce qui exclut d’office MYSQL: les contraintes CHECK c’est super basique comme fonctionnalité pour un SGBD