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éveloppement SQL Server Discussion :

Pilote ODBC SQL SERVER, latence et performance


Sujet :

Développement SQL Server

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2012
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Pilote ODBC SQL SERVER, latence et performance
    Bonjour à tous,

    je travaille sur un ERP qui utilise une connexion ODBC pour se connecter avec le client natif SQL SERVER 11.0.

    Je me demandais s'il existait des éléments particuliers qui peuvent faire que ce pilote "cause" de la latence. Je m'explique:
    - l'application utilise des curseurs (no comment...) et est compatible avec Oracle et SQL SERVER
    - Sur SQL SERVER, on a une grosse différence entre un segment à 1Gbps et à 10Gbps, que l'on ne retrouve pas sous Oracle.
    - Sur Oracle, en utilisant l'instant client, on a des temps de réponses bien meilleurs en restant sur un segment de réseau 1Gbps.

    Je sais que le fait d'utiliser les curseurs et donc de fetcher les lignes coûtent cher, mais c'est assez étrange que cela coûte beaucoup plus cher sous SQL SERVER que sous Oracle.

    Soit dit en passant, on a le même comportement depuis SQL 2008, et cela continue avec SQL 2014. Quelques personnes m'on dit à un moment donné d'utiliser un autre client, mais Microsoft recommande d'utiliser le pilote ODBC. Il me semble aussi que le pilote a été optimisé par Microsoft il y a déjà quelques années.

    Je suis preneur de tout élément qui pourrait m'aider à comprendre.

  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 761
    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 761
    Points : 52 547
    Points
    52 547
    Billets dans le blog
    5
    Par défaut
    La différence majeure entre Oracle et SQL Server en matière de curseurs est que oracle, travaillant par defaut en versionning de ligne (copie des informations) et SQL Server en "live" sur les données, l'un bloque au niveau de la lecture (SQL Server) et l'autre uniquement si les données sont mises à jour à travers le curseur.

    Pour remédier à cela, différentes solutions :

    1) au niveau des curseurs, les ouvrir avec les options :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    LOCAL  FORWARD_ONLY STATIC  READ_ONLY
    2) globalement au niveau de la base
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER DATABASE SET READ_COMMITTED_SNAPSHOT ON
    Ceci fera fonctionner votre base en versionning de ligne par défaut (comme Oracle) au lieu du niveau d'isolation READ COMMITTED qui est plus bloquant.

    ATTENTION : il y a des implications dans les deux cas !

    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/ * * * * *

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2010
    Messages
    90
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 90
    Points : 71
    Points
    71
    Par défaut
    Pourrais tu developper (sans jeu de mots ^^) plus ta réponse s'il te plait ?
    Expliquer plus en details en somme....
    Ca m'interesse beaucoup, et tu as piqué ma curiosité

    merci

  4. #4
    Membre actif
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Avril 2006
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 141
    Points : 210
    Points
    210
    Par défaut
    Bonjour,

    Quelle langage utilisez vous pour developper.
    Si vous utilisé C# ou VB.net avec ADO.Net je vous conseil d'utilisé les Factory, ensuite vous pourrez implémenter une nouvelle base de donnée en 1 à 2 j max.

    De plus vous devriez gagner en performance (SqlClient étant le driver le plus optimisé à ma connaissance pour la connexion à sqlserver)

    Cordialement,
    DSI et développeur du logiciel Lulidb
    http://www.lulidb.com - outils de gestion de base de données orienté développer.

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 761
    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 761
    Points : 52 547
    Points
    52 547
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par FraocH Voir le message
    Pourrais tu developper (sans jeu de mots ^^) plus ta réponse s'il te plait ?
    Expliquer plus en details en somme....
    Ca m'interesse beaucoup, et tu as piqué ma curiosité

    merci
    http://georges.gardarin.free.fr/Livr...ansactions.pdf
    Paragraphes 4 et 5


    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. La préversion du pilote ODBC SQL Server pour Linux disponible
    Par Hinault Romaric dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 01/12/2011, 19h09
  2. Problème pilote ODBC Sql Server - Eclipse
    Par Cabiai dans le forum JDBC
    Réponses: 5
    Dernier message: 20/04/2011, 10h15
  3. Lien ODBC SQL Server
    Par Praline dans le forum Oracle
    Réponses: 1
    Dernier message: 20/10/2006, 14h04
  4. Creation de ODBC sql Server
    Par lessoy dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 26/05/2006, 15h11
  5. ODBC SQL Server VC++
    Par afan dans le forum MFC
    Réponses: 10
    Dernier message: 19/03/2004, 10h06

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