Oracle vs PostgreSQL

Faut-il utiliser Oracle ou utiliser un logiciel libre? Ces derniers sont-ils fiables?

Il y a plusieurs alternatives à Oracle pour gérer des bases de données importantes. Ici nous allons faire une comparaison avec PostgreSQL. Mais Cassandra, utilisée par Facebook et d'autres sites sociaux traitant des millions de transaction par jour est une autre possibilité.

PostgresSQL, que l'on appelle aussi postgres est dérivé de Ingres, d'ou le nom post-gres. Plus performant que MySQL (mais plus difficile à installer), c'est un produit entièrement libre et qui connait une forte croissance.

Qui utilise PostgreSQL?

Quelques entreprises connues:

Les sites web à plus fort trafic utilisent différentes alternatives à Oracle.

En 2014, le NHS, service de gestion des patients de Grande-Bretagne (80 millions de personnes) a reconverti son infrastructure, abandonnant Oracle au profit de Riak, une solution NoSQL. Riak est un système clé-valeur. Les économies se font à la fois sur le logiciel et le matériel.
Dans le même temps l'état de l'Oregon aux USA fait un procès à Oracle car le système de gestion de patients qu'ils ont mis en place est un désastre.

Benchmark et comparaison

On considère PostgreSQL équivalent en terme de performances à Oracle. L'un ou l'autre est plus rapide selon les fonctions, ou le temps passé en optimisation.

Oracle vs PostgreSQL
Fonction Oracle PostgreSLQ
SQL
x x
Intégrité référentielle
x x
Transaction
x x
Unicode
x x
Interface graphique
x x
Taille de base maximale
Illimitée Illimitée
Taille de table maximal
4 GO 32000 GO
Taille de colonne maximale
8 Ko 16000 GO
Nombre de colonnes maximal
1000 250-1600
Taille maximale de blob
Illimitée 1 GO
Taille maximale de varchar
4 KB 1 GO
Nombre de bits pour un nombre
128 bits Illimité
Date: Année la plus lointaine
9999 5874897
Longueur de nom de colonne en car.
30 63
Types d'index différents
6/10 10/10
Capacités SQL
11/11 10/11
Fonctions et procédures
x x
Modes de partitionnements
4/6 4/6
Compatibilité aux OS courants
4/5 5/5

La capacité SQL qui manque à PostgreSQL est la requête parallèle qui consiste à diviser une même requête en parties qui pourront être exécutées en même temps. Cela n'a rien à voir avec les requêtes simultanées d'utilisateurs multiples.

On accorde généralement à Oracle une plus grande facilité pour mettre en place des clusters et des partitions. Cela fait une différence sur de très grandes bases de données, avec des milliards de lignes.

Le prix

Oracle:

Les prix s'entendent pour un coeur de processeur. Si on utilise un processeur à quatre coeurs sur un serveur, il faut multiplier le prix par quatre.

PostgreSQL:

Conclusion

PostgreSQL et Oracle sont des systèmes équivalents bien que l'un soit gratuit et l'autre très onéreux. Rien ne justifie l'emploi d'Oracle plutôt que PostgreSQL, sauf pour certaines catégories de très grandes bases de données.
Des entreprises spécialisées nombreuses proposent leurs services pour l'installation, le développement, la maintenance des SGDB, dans les deux cas.

Avec les nouvelles fonctions apportées par la version 9.3 de PostgreSQL, beaucoup d'utilisateurs estiment que MongoDB aussi perd de son intérêt, sauf lorsqu'il est utilisé avec Node.js.

Outils

Documents

Forum

Article Oracle vs PostgreSQL

24-05-2011 14:57:02

lefty

Bonjour, Après une discussion avec un collègue concernant la différence entre Oracle et PostgreSQL, celui ci m'a montré cette "page" concernant un comparatif entre ces deux bases de données.
Je voudrais déja commencer mon post par dire un grand MERCI pour la tranche de rigolade que cette page m'a fourni :) Reprenons en détail ce fameux article. Passons déja sur la soit disante liste des entreprises qui utilisent Posgre. Je ne suis pas certain que ca soit vraiment le cas mais bon admettons (notons quand meme le cas de Sony au vu de l'actu en ce moment ^^). Tu as l'air de dire dans ce poste que les grosses boites utilisent Postgre plutot que Oracle. Il faudrait quand meme dire que quasi toutes les grandes banques/assurances du monde sont sur Oracle. On peut rajouter des entreprises gens la SNCF, La poste... La liste des gros clients Oracle est longue...
En ce qui concerne les license il faut rappeler qu'il existe une version gratuite d'Oracle (la express edition) et que depuis 1an Oracle possède Mysql. On attaque maintenant la partie LOL de l'article : le comparatif. Déja apprend à lire en anglais et tu veras que les conclusion du powerpoint en lien sont que Oracle est le plus rapide et que Postgre est lent et génere du traffic réseau...
Mais bon c'était bien tenté :) On continu avec le tableau. Beaucoup de truc faux. Je vais pas en faire le listing complet. Je connais pas du tout Postgre donc je dirais rien sur cette colonne mais en tout cas pour la partie Oracle une bonne partie est fausse... (taille max de la table, taille max colonne, année lointaine...) La conclusion a fini par m'achever... Lire que Postgre et Oracle étaient des "systèmes équivalents" a bien fait rigoler tout mon bureau! "Rien ne justifie l'emploi d'Oracle plutôt que PostgreSQL" --> c'est bizarre qu'autant de boite utilisent Oracle alors si on a une si bonne base de données gratuite a coté... C'est facile de faire des articles complétement subjectifs avec des soit disant chiffres ou tableaux comparatif qui sortent de nul part! Et le pire c'est qu'après ça sert de référence à des gens qui tombent sur cette page... Alors oui utiliser PostgreSQL plutôt qu'Oracle pour la base de données d'un site web je suis totalement d'accord car au niveau gestion de petites et moyennes bases, les SGBD sont plutôt au même niveau mais bon quand on commence à passer sur des grosses bases la je suis pas sur qu'il reste beaucoup de base en Postgre...

24-05-2011 20:35:33

Webmaster

Bonjour Tous les avis sont les bienvenus, même s'ils sont critiques et quelque fois à la limite de la bienséance. Reprenons quelques points importants... "Tu as l'air de dire dans ce post que les grosses boites utilisent Postgre plutot que Oracle." Pas vraiment. Je donne une liste de sites importants qui ont fait ce choix, pour preuve que cela fonctionne en production. Je sais parfaitement que la plupart des grandes entreprises préfèreront Oracle ou n'importe quelle logiciel commercial, par manque d'information, principalement. Et puis elle feront payer les clients, alors pourquoi se priver. Pour le tableau, je ne l'ai pas réalisé moi-même, on s'en doute, il provient de sources sûres, mais ce sont des informations qui évoluent continuellement avec chaque nouvelle version des logiciels. Il ne sera exact qu'à un instant donné, même s'il est mis à jour. Je ne suis pas un fanatique de PostgreSQL, je veux juste le faire connaître et rappeler qu'il existe des solutions libres pour ceux qui veulent les utiliser. J"apprécie tout autant sinon plus un SGDB tel que Cassandra et le principe NoSQL (entendons par là l'extension en colonnes autant qu'en lignes). Et je peux citer un site Web qui l'utilise et n'a rien d'un site amateur: Facebook, avec quelques milliards de transactions par jour...

24-05-2011 20:35:33

Webmaster

Bonjour Tous les avis sont les bienvenus, même s'ils sont critiques et quelque fois à la limite de la bienséance. Reprenons quelques points importants... "Tu as l'air de dire dans ce post que les grosses boites utilisent Postgre plutot que Oracle." Pas vraiment. Je donne une liste de sites importants qui ont fait ce choix, pour preuve que cela fonctionne en production. Je sais parfaitement que la plupart des grandes entreprises préfèreront Oracle ou n'importe quelle logiciel commercial, par manque d'information, principalement. Et puis elle feront payer les clients, alors pourquoi se priver. Pour le tableau, je ne l'ai pas réalisé moi-même, on s'en doute, il provient de sources sûres, mais ce sont des informations qui évoluent continuellement avec chaque nouvelle version des logiciels. Il ne sera exact qu'à un instant donné, même s'il est mis à jour. Je ne suis pas un fanatique de PostgreSQL, je veux juste le faire connaître et rappeler qu'il existe des solutions libres pour ceux qui veulent les utiliser. J"apprécie tout autant sinon plus un SGDB tel que Cassandra et le principe NoSQL (entendons par là l'extension en colonnes autant qu'en lignes). Et je peux citer un site Web qui l'utilise et n'a rien d'un site amateur: Facebook, avec quelques milliards de transactions par jour...