IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PostgreSQL Discussion :

Performance et résillience de PostgreSQL


Sujet :

PostgreSQL

  1. #1
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    794
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 794
    Points : 987
    Points
    987
    Par défaut Performance et résillience de PostgreSQL
    Bonjour,

    Dans le cadre d'un projet nous devons sélectionner une base de données, je voudrais donc avoir vos avis concernant PostgreSQL.

    Le contexte nous travaillons sur une application distribuée fonctionnant actuellement sur une dizaine de serveurs. A terme elle tournera sur plus d'une centaine de machines, afin de stocker certaines informations nous employons actuellement SQL server 2008 x64. Concernant la charge il y aura environs 1million de transaction XA avec différents niveaux d'isolation et plusieurs Go d'écriture (ça peut aller jusqu'au To).

    Autant dire que la base sera mise à rude épreuve.

    On nous a demandé d'évaluer plusieurs bases de données afin de réduire les coûts (perso j'adore SQL server mais bon ...), je voudrais donc avoir vos avis concernant PostgreSQLen terme de performance, concurrence, de support du language sql, de fiabilité.

    Cordialement.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 768
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 768
    Points : 52 571
    Points
    52 571
    Billets dans le blog
    5
    Par défaut
    Au niveau des transaction PG ne permet pas de les piloter directement dans des procédures comme le fait SQL Server. En effet le BEGIN TRANSACTIOn n'existe pas et PG considère toujours qu'une fonction (il n'y a pas de procédure dans PG) est atomique...

    De plus PG fonctionne nativement en mode de verrouillage optimiste et ne supporte que 2 niveaux d'isolation équivalent au READ COMMITTED SNAPSHOT et au SERIALIZABLE de SQL Server.

    En sus, du fait du verrouillage optimiste, PG gère le magasin de ligne (row versionning) à l'intérieur de chaque page ce qui augmente de façon très sensible le volume des données. Pour nettoyer cela il faut faire passer l'outil VACUUM régulièrement ou le mettre en AUTOVACUUM, mais dans ce cas, avec une forte activité transactionnelle on obtient des ralentissements considérables et des deadlocks !

    Au niveau de la journalisation des transactions, PG utilise un seul journal par instance pour toutes les bases ce qui créé un point de contention globale. Même si vous n'avez qu'une seule base de production, le fait que les objets temporaires de SQL Server soient créés dans une base différentes, permet, avec un placement et dimensionnement judicieux des fichiers d'obtenir des performances très supérieures, les journaux de transactions étant toujours le premier point de contention des SGBDR....

    Seul avantage au niveau de PG, c'est la possibilité de faire de la journalisation asynchrone (mais danger..) ce que vient d'ailleurs de reprendre SQL Server en version 2014 via la "delayed durability".

    Enfin au niveau des performances transactionnelle intrinsèques, intéressez vous à SQL Server 2014 et les tables "In Memory" ainsi que les procédures compilées nativement, ce qui permet souvent de booster les performances d'un facteur de 8 à 50 dans certains cas de figure, donc une réelle économie d'échelle !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

Discussions similaires

  1. [MariaDB] Performance et résillience de MariaDB
    Par redcurve dans le forum MySQL
    Réponses: 0
    Dernier message: 20/10/2014, 22h24
  2. Limite performances serveur Linux/Postgresql
    Par jinpol dans le forum Administration
    Réponses: 17
    Dernier message: 07/11/2008, 12h22
  3. Performances de PostgreSQL
    Par SYSYSY dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 30/09/2008, 14h04
  4. Performance de PostGresql
    Par atao dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 08/01/2004, 10h20
  5. [ POSTGRESQL ] Problème de performance
    Par Djouls64 dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 26/05/2003, 16h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo