Journal Postgresql, un retour d'expérience

Posté par  (site web personnel) . Licence CC By‑SA.
107
15
mai
2020

Un petit peu de contexte

J'ai rejoint une grande banque asiatique, à Londres, il y a de cela 10 ans, pour travailler sur un de leurs systèmes, une grosse application financière en C++. Quelques années plus tard, les affaires n'ayant pas fonctionné comme prévu, ils décident de se débarrasser de l'équipe à laquelle j'appartenais. Heureusement, une petite institution financière européenne s'est montrée intéressée par le système et l'équipe, et plutôt que je devoir payer des indemnités de licenciement, mon ancien (…)

PostgreSQL 11.0

Posté par  . Édité par Snark, ZeroHeure, Davy Defaud, BAud, Julien Jorge, palm123, Nils Ratusznik et NeoX. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
64
22
oct.
2018
Base de données

PostgreSQL est un système de gestion de base de données relationnelle. La version 11 est sortie ce 18 octobre 2018.

Logo PostgreSQL

Les principales nouveautés, détaillées en seconde partie de la dépêche, se sont concentrées sur la gestion des bases ayant un très gros volume de données.

Requêtes et jointures avec pgModeler (PostgreSQL)

Posté par  . Édité par BAud, Davy Defaud, Ysabeau 🧶 🧦, Benoît Sibaud, claudex et ZeroHeure. Modéré par claudex. Licence CC By‑SA.
64
29
jan.
2020
Base de données

Bon, voilà, j’ai développé ce greffon pour pgModeler (C++/Qt), et j’ai envie de le partager dans une petite dépêche.

Mes motivations principales étaient de pouvoir effectuer des requêtes dans mon logiciel de modélisation préféré, bien entendu, et le fait que les logiciels de modélisation que je connais ne prennent pas en charge les jointures existantes ou automatiques.

Votre client SQL est cool ? Mais est‑il cool à ce point ?! :)

Rapide présentation de pgModeler

pgModeler est un logiciel de modélisation de base de données. Bien que plutôt généraliste — si l’on s’en tient à un modèle logique des données — il est spécialisé PostgreSQL. Il permet entre autres de :

  • construire par interface graphique un modèle de base de données (tables, schémas, rôles…), mais bien plus ; en fait, il propose toutes les fonctionnalités offertes par PostgreSQL, allant jusqu’aux extensions PostGIS ;
  • créer une base de données à partir d’un modèle : passer de la représentation à l’implémentation ;
  • à l’inverse, créer un modèle à partir d’une base de données ;
  • comparer une instance PostgreSQL avec un modèle et produire — voire réintégrer — les différences entre schémas ;
  • administrer sa base, avec un module riche, mais qui n’égalera sans doute pas pgAdmin ;
  • produire un dictionnaire des données.

Des discussions sont en cours pour rendre pgModeler nativement compatible avec les autres systèmes de gestion de bases de données relationnelles (SGBDR) grâce à l’excellent extracto‑chargeur (ETL) pgLoader.

Interview de Dimitri Fontaine, contributeur majeur à PostgreSQL

Posté par  . Édité par ZeroHeure, Davy Defaud, Benoît Sibaud, Nils Ratusznik et palm123. Modéré par ZeroHeure. Licence CC By‑SA.
56
25
fév.
2018
Base de données

Contributeur de longue date au projet PostgreSQL, Dimitri Fontaine a publié il y a quelques mois un ouvrage consacré au développement d’applications et au « SGBD libre de référence » : Mastering PostgreSQL in Application Development. On s’est dit que cela pourrait être une bonne occasion pour avoir sa vision sur l’évolution de PostgreSQL et des rapports entre développeurs et bases de données.

OpenDBViewer 1.1.0

Posté par  (site web personnel) . Édité par bubar🦥, Xavier Teyssier, Davy Defaud et patrick_g. Modéré par patrick_g. Licence CC By‑SA.
53
29
août
2018
Base de données

Il y a presque un an, une dépêche annonçait le logiciel OpenDBViewer, sponsorisé par l’entreprise Jet1oeil et supervisé par moi‐même.

Il s’agit, comme son nom le suggère, d’un petit logiciel très léger écrit en C++/Qt pour lire et modifier les bases de données SQLite, MySQL et PostgreSQL. Le logiciel est sous licence GPL v3.

Avec la venue de stagiaires dans l’entreprise, nous avons pu développer de nouvelles fonctionnalités durant l’année afin d’encore améliorer son ergonomie.

PostgreSQL 9.0 est sorti

Posté par  . Modéré par tuiu pol.
Étiquettes :
49
20
sept.
2010
Base de données
PostgreSQL est sorti ce lundi 20 septembre en version 9.0.
Pour mémoire, PostgreSQL est un système de gestion de base de données relationnel-objet qui se veut le plus performant possible tout en respectant les standards SQL au maximum, la licence du code source est de type MIT.
Cette dernière version apporte plus de 200 améliorations (nouvelles fonctions, nouvelles commandes, ajout d'options...) et permet de migrer à partir d'une base 8.3 ou 8.4.

La principale nouveauté est la réplication intégrée par défaut, qui était une demande importante de la part des utilisateurs.
Même si elle est limitée à un seul maître et plusieurs esclaves, ceci devrait réjouir beaucoup d'utilisateurs.
Les autres nouveautés importantes sont détaillées en seconde partie de dépêche.

Journal PostgreSQL : ne faites pas ça !

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes :
47
8
jan.
2024

Le wiki officiel de PostgreSQL a une page assez méconnue et pourtant si utile que tout gros outil, en particulier ceux avec de l’historique, devraient avoir aussi. Cette page, c’est :

Don’t Do This

Comme le dit le titre, cette page est une liste de possibilités offertes par PostgreSQL à ne pas utiliser, au moins pas sans y réfléchir à deux fois. Les pièges peuvent venir de comportements dépréciés, particulièrement peu clairs ou importés d’autres SGBD. Chaque cas indique (…)

Migrer de Oracle à PostgreSQL : Ora2Pg

Posté par  (site web personnel) . Édité par baud123, Florent Zara, olivierweb et Yves Bourguignon. Modéré par claudex. Licence CC By‑SA.
Étiquettes :
45
13
mar.
2012
Base de données

Une nouvelle version 8.10 de Ora2Pg est sortie ce 2 mars 2012 ; cet outil, développé en Perl depuis 2005, permet d'exporter le schéma d'une base de données Oracle vers PostgreSQL. Il est disponible sous licence GPL3+.

Les fonctionnalités de migration automatique proposées concernent les schémas, mais aussi les données et — en partie — les fonctions voire les procédures PL/SQL :

  • export de schéma complet
    • tables, vues, séquences, index
    • droits/privilèges pour des utilisateurs et groupes
    • export des vues Oracle en tant que table PostgreSQL
  • export de données
    • par table
    • export complet des données ou par sélection via une clause WHERE
    • gestion des objets BLOB Oracle en tant que PG BYTEA
  • export des fonctions prédéfinies, triggers, procédures, packages
    • assistance simple à la conversion de code PL/SQL en code PL/pgSQL
    • pour le code spécifique PL/SQL, la conversion reste principalement manuelle

Ce genre d'outil permet de migrer un parc de bases de données Oracle vers un vrai gestionnaire de base de données relationnelles libre tel que PostgreSQL. Les retours d'expérience sont les bienvenus ! Cela peut être la première étape d'une migration, sans oublier d'effectuer les adaptations et tests de non-régression des développements applicatifs se connectant à votre base de données.

Postgresql 9.1

Posté par  (site web personnel) . Modéré par Bruno Michel. Licence CC By‑SA.
45
12
sept.
2011
Base de données

Postgresql, le moteur de base de données le plus avancé du monde libre vient de sortir en version 9.1. Contrairement à d'autres bases de données libres, Postgresql est développé par une communauté mondiale d'entreprises et de contributeurs indépendants.

Les nouveautés de cette version sont détaillées en seconde partie.

Microsoft achète Citus Data, spécialiste de PostgreSQL

Posté par  (site web personnel) . Édité par Davy Defaud, Benoît Sibaud, BAud, bubar🦥 et palm123. Modéré par ZeroHeure. Licence CC By‑SA.
40
26
jan.
2019
Microsoft

Microsoft vient de faire l’acquisition de Citus Data, une start‐up qui s’est fait un nom et une réputation avec le support de PostgreSQL. Cette entreprise forte d’une quarantaine de personnes constitue un noyau d’experts apportant à Microsoft une compétence nouvelle.

Développer en interne cette compétence aurait été long. Aussi, cette croissance externe permet de proposer sur Azure une alternative à SQL Server. Actuellement, PostgreSQL est le SGBD qui taille des croupières à Oracle, car il convient de la plus petite base de données à la plus grande.

Cette acquisition vient après celle de GitHub et renforce la compétence de Microsoft sur les logiciels libres. Est‐ce que Microsoft jouera honnêtement dans la cour des logiciels libres ou succombera à ses vieux démons ? Vos avis seront les bienvenus.

Sortie de PostgreSQL 9.2

Posté par  (site web personnel) . Édité par Davy Defaud, Nÿco, Benoît, claudex, baud123 et Florent Zara. Modéré par Florent Zara. Licence CC By‑SA.
Étiquettes :
40
10
sept.
2012
Base de données

Le gestionnaire libre de base de données relationnelle PostgreSQL vient de sortir en version 9.2. Cette version est principalement axée sur l’amélioration des performances.

Logo PostgreSQL

Des informations très détaillées se trouvent sur la page du wiki « What's new in PostgreSQL 9.2 ». La liste des principales nouveautés se trouve en seconde partie de dépêche.

Première beta de POCHE 1.0 disponible

33
8
août
2013
PHP

POCHE est une application web pour gérer une liste de lectures à lire plus tard. Grâce à un bookmarklet, vous sauvegardez facilement un lien dans votre POCHE. POCHE sauvegarde le contenu entier d’un lien : les textes et les photos sont enregistrés sur votre serveur (mais pas la pub!). Ensuite vous pouvez lire une page dans une vue confortable.

Logo Poche

C'est une alternative open source à Pocket / Readability / Instapaper. Vos données vous appartiennent et ne dépendent pas d'une société. Pour éviter ce qui nous est arrivé avec Google Reader, prenez les devants avec Pocket & co.

Journal Des emojis en SQL ? C'est possible… et on peut aller au-delà !

Posté par  (site web personnel, Mastodon) .
Étiquettes :
31
9
mar.
2019

Le saviez-vous ?

On peut utiliser des emojis en SQL, et pas seulement pour les manipuler : les emojis peuvent servir d'identifieurs !

Avec PostgreSQL, peut donc faire des choses comme :

CREATE TABLE 👤(
    🔑 INTEGER PRIMARY KEY,
    🗣 varchar(64), -- name
    🗓 DATE -- date of registration
);

Voire carrément :

CREATE TYPE  AS ENUM ('🤢', '☹', '😐', '🙂', '😍');

-- [...]

-- select
(…)

Journal Quelles solutions adopter pour améliorer un parc existant ? La suite !

30
1
fév.
2012

Deux ans plus tard, voici (enfin) un retour sur les choix que j'ai fais rapport à ce que j'indiquais ici.

  • Concernant l'accès aux données: j'ai opté pour le système de fichiers réparti et à tolérance de pannes MooseFS. C'est GPL, stable (il manque toutesfois une vraie recette pour la HA en ce qui concerne le serveur de métadonnées), extrêmement simple à configurer et faire évoluer. L'autre avantage, c'est que vous y accédez comme n'importe quel système de fichiers (…)

Exploitez vos SGBD grâce à dbSQWare

Posté par  (site web personnel) . Édité par Nÿco et claudex. Modéré par Pierre Jarillon. Licence CC By‑SA.
30
24
mai
2014
Base de données

Une petite précision tout d'abord sur ce qu'est un SGBD ! Voici ce que nous écrit Wikipédia à ce sujet "En informatique un système de gestion de base de données (abr. SGBD) est un logiciel système destiné à stocker et à partager des informations dans une base de données, en garantissant la qualité, la pérennité et la confidentialité des informations, tout en cachant la complexité des opérations."
Il en existe un grand nombre, plus ou moins libres et plus ou moins répandus. Dans les plus connus du monde libre, il y a notamment MySQL, PostgreSQL…

À l'heure actuelle, une grande majorité des applications voulant stocker de l'information le fait dans un SGDB. Par exemple, nombre de sites web sont développés en environnement LAMP dont le "M" vient de MySQL. Vient ensuite une autre précision à donner sur ce qu'est "l'exploitation" de ces SGBD. Cela regroupe en fait les tâches récurrentes (souvent automatisées) faites par les administrateurs de bases de données.

La première qui vient à l'esprit est celle de backup (sauvegarde). En général, quand on stocke de l'information, c'est que l'on ne veut pas la perdre ! Il est donc de bon ton d'avoir un système de backup efficace qui nous permettra de récupérer nos données perdues ou altérées en cas de problème (matériel, logiciel, erreur humaine…).

Viennent ensuite les tâches dédiées à la performance comme l'update statistics ou la réorganisation (là, on est dans le barbare pour certains, mais on tâchera d'écrire un article dessus si cela intéresse du monde).

Et enfin, il est bien de pouvoir avoir une vision globale de son parc de SGBD en terme de type, version, volumétrie… c'est ce que l'on appelle la gestion de la CMDB et du capacity planning.

Un outil a été développé dans ce sens pour regrouper toutes ces tâches (et bien d'autres), il s'agit de dbSQWare.