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

Décisions SGBD Discussion :

[Comparatif] Performances SIG : PostGreSQL/PostGIS vs SQL Server Spatial


Sujet :

Décisions SGBD

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut [Comparatif] Performances SIG : PostGreSQL/PostGIS vs SQL Server Spatial
    Comparatif sig et performances.



    Frédéric Brouard a réalisé un test de comparaison de performance des cartouches spatiales dans deux moteurs de base de données.

    Le présent test consiste à comparer la performance d'une dizaine de requêtes identiques sur le plan logique, consacrées au traitement spatial des données entre PostgreSQL et Microsoft SQL Server dont le SIG de chacun propose les mêmes fonctionnalités du standard OGC.

    Les requêtes ont porté sur les données spatiales disponibles librement auprès de l'État français en matière de géographie politique et routière (GEOFLA et ROUTE 500)
    .

    Vous pouvez lire le comparatif ici : http://g-ernaelsten.developpez.com/t...-performances/


    Et vous ?

    Que pensez-vous de ce comparatif?
    Utilisez-vous d’autres bases de données pour vos SIG? Lesquelles ?

  2. #2
    Membre expérimenté

    Inscrit en
    Juin 2008
    Messages
    307
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 307
    Par défaut
    Article très intéressant. AU delà du bench ça m'a permis de connaitre des fonctionnalités intéressantes. J'ai été étonné de voir que les données liées au routes étaient gratuites.

  3. #3
    Membre confirmé
    Profil pro
    Architecte logiciel
    Inscrit en
    Décembre 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte logiciel

    Informations forums :
    Inscription : Décembre 2008
    Messages : 77
    Par défaut
    J'ai une interrogation: quelle configuration l'auteur a fait sur PostgreSQL ? et sur SQL Server ?
    Par exemple, sur certaines requêtes, on signale que SQL Server fait du parallélisme à la différence de PostgreSQL. Mais la version 9.6.x n'active pas le parallélisme par défaut et certains paramètres de base sont assez limités.

    A moins que le but était de montrer les performances des 2 serveurs "out of the box" ?

  4. #4
    Rédacteur
    Avatar de eclesia
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    2 111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 111
    Par défaut
    Dommage que SQL-Server ne respecte pas le standard pour les requetes SIG : ISO/IEC 13249-3 SQL/MM

    +1 pour PostgreSQL

  5. #5
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut
    Citation Envoyé par csperandio Voir le message
    A moins que le but était de montrer les performances des 2 serveurs "out of the box" ?
    C'est en effet le cas comme le précise l'article :
    Les installations des deux SGBDR sont standard. Aucun réglage particulier n'a été mis en œuvre au niveau des serveurs.

  6. #6
    Membre confirmé
    Profil pro
    Architecte logiciel
    Inscrit en
    Décembre 2008
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte logiciel

    Informations forums :
    Inscription : Décembre 2008
    Messages : 77
    Par défaut
    Citation Envoyé par aieeeuuuuu Voir le message
    C'est en effet le cas comme le précise l'article :
    Mon impatience de lire le test m'a fait sauter cette partie

    Je ne sais pas si ce genre de test est pertinent sur le plan des performances. On voit que SQL Server a des réglages de performances par défaut alors que pour PostgreSQL le choix a été de réduire les ressources utilisées (je parle du serveur et non de PgAdmin). Je tiens à signaler que je n'ai pas de préférence: j'ai juste fait des tests avec PostgreSQL (pour voir si c'était une bonne solution de remplacement à Oracle pour nos besoins), ce qui m'a permis d'appréhender son fonctionnement.

    Néanmoins, cela a permis de voir ce que l'on peut faire comme type de requêtes dans ce contexte

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2010
    Messages : 8
    Par défaut
    Bonjour,
    je réagis ici car je suis assez choqué par le contenu de ce comparatif.

    Comme csperandio l'a très justement fait remarquer, le seul intérêt de cet article est de comparer les configurations "out of the box" des deux serveurs, certainement pas leurs performances en situation de production.

    L'utilisation de données spatiales en devient tout à fait anecdotique.

    Pour information, la configuration par défaut de PostgreSQL est extrêmement conservatrice en terme de ressources (work_mem = 4MB, shared_buffers = 128MB). Totalement inadaptée à la manipulation de données spatiales.
    Quelques minutes de recherche sur internet auraient suffit à l'auteur pour y trouver les paramètres à ajuster ainsi que les valeurs recommandées pour un environnement de production.

    Je remarque aussi un très grand déséquilibre dans la maîtrise des deux SGBD.
    Deux exemples au hasard :

    Pour SQL Server, nous avons créé une base de nom DB_GEO en mode de récupération simple afin d'éviter une journalisation continue et sans purge des transactions.
    Et pourquoi ne pas avoir fait de même pour PostgreSQL, qui journalise en continu par défaut ? Parce que l'auteur ne savait pas que c'était le cas, ni qu'il état possible de désactiver la journalisation dans PostgreSQL je suppose.


    NOTA : la commande PG dump est bloquante, car elle pose un verrou de type lecture (AccessShareLock) pendant toute la durée de la sauvegarde, verrou qui peut ne pas être acquis si une transaction est en cours. Ceci empêche donc les sauvegardes à chaud contrairement à SQL Server qui effectue un snapshot de la base, ce qui n'empêche nullement des transactions en cours, ni le démarrage de nouvelles transactions au cours de la sauvegarde
    C'est FAUX !! ACCESS SHARE n'est bloqué que par ACCESS EXCLUSIVE, qui n'est posé que par les requête de modification de structure de la base de données (DDL). Une telle affirmation sans vérification est assez scandaleuse ! Un minimum de lecture de la documentation de PostgreSQL serait la bienvenue (une simple recherche Google aussi, car cette documentation est très bien indexée). https://www.postgresql.org/docs/9.6/...t-locking.html

    Et une autre remarque qui pourrait être risible si elle n'était aussi affligeante :
    les commandes de sauvegardes et de restaurations de PostGreSQL sont très mal documentées et peu d'exemples montrent comment faire telle ou telle sauvegarde et encore moins, restauration. Nous avons perdu plus de quatre heures en tentatives diverses et essais infructueux avant de trouver la bonne syntaxe par tâtonnement.
    4h ? Pour au final utiliser les paramètre par défaut de pg_dump ? --blobs est inclu par défaut, comme le précise la lecture de la documentation de pg_dump, lecture qui doit prendre 10 minutes au maximum. 4h de tâtonnement pour cela, ça laisse songeur, voire dubitatif...

    Au mieux, pour la restauration, PostGreSQL met deux fois plus de temps que SQL Server en mode non compressé en utilisant huit threads.
    Deux fois plus de temps pour une base de données journalisée contre une base de données non journalisée ? Quelle incroyable surprise !!!


    Il serait de bon aloi que l'auteur corrige son article, ou mieux le réalise dans des conditions un tant soit peu proches de la réalité.

  8. #8
    Membre Expert
    Avatar de alassanediakite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2006
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Mali

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 1 599
    Billets dans le blog
    8
    Par défaut
    Salut
    Citation Envoyé par MaitrePylos Voir le message
    Que pensez-vous de ce comparatif?
    Il nuit à la crédibilité de developpez.com
    @+

Discussions similaires

  1. Comparatif Performance Application Serveur Apache/Php contre Tomcat/Java
    Par w3blogfr dans le forum Serveurs (Apache, IIS,...)
    Réponses: 1
    Dernier message: 04/12/2009, 09h33
  2. Réponses: 9
    Dernier message: 16/05/2008, 15h04
  3. [SGBDR|SGBDO] Existe-t-il un comparatif de performance ?
    Par neguib dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 17/02/2006, 16h29
  4. [SGBDR][XML] Quel est le comparatif des performances ?
    Par kritopal dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 28/11/2005, 11h56
  5. Comparatif performance SGBD...
    Par glouglou dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 19/05/2004, 19h30

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