Accélérer SQLDans JMP 13.2.1, le script JSL "Open Database("DSN=mysql", sql)" est beaucoup plus lent que l'exécution de la même requête SQL "select" sur MySQL Workbench ou sur la ligne de commande mysql sur le même PC. DSN pointe vers le pilote MySQL ODBC installé localement sur mon PC Win10 (mysql-connector-odbc-5.3.7-winx64.msi). La différence de vitesse de chargement est très visible lorsque "select" renvoie de nombreuses lignes, par exemple 1 million de lignes de données. J'aimerais que JMP améliore cette connexion de données et cette vitesse de chargement dans la prochaine version.
Accès aux donnéesRe : Accélérer SQL - Statut changé en : Livré@frankz nous avons examiné cela et évalué ses performances dans notre dernière version de JMP, la version 17.Il semble que ce ne soit plus un problème.Je m'excuse de ne pas avoir répondu plus tôt, mais j'espère que vous trouverez cela pris en charge dans les versions plus récentes de JMP.Si ce n'est pas le cas, veuillez nous en informer.
Re : Accélérer SQL - Statut changé en : AcquisSalut @frankz , Merci pour votre suggestion! Nous avons enregistré votre demande et la prendrons en considération.
Re : Accélérer SQLComme @pmroz suggéré, en utilisant le Interface d'appel Oracle (OCI) au lieu d'ODBC pourrait être une meilleure solution à ce problème - si votre base de données le supporte (je ne peux pas commenter OCI car je ne l'ai jamais utilisé moi-même), je voudrais souligner qu'il existe un logiciel (pour une base de données spécifique, interrogée via SQL) qui utilise ODBC et fonctionne beaucoup plus rapidement que JMP dans les mêmes circonstances (voir mon post, 05-03-2018), donc juste atteindre ce niveau serait une réelle amélioration pour JMP. Au vu de l'âge de cet appel (sans amélioration perceptible à cet égard de JMP13 à JMP15), j'en suis personnellement arrivé à la conclusion que la combinaison JMP/SQL n'est probablement pas la voie à suivre (si vous pouvez l'éviter), si vous avez besoin de récupérer plus qu'un nombre modéré d'enregistrements d'une base de données.
Re : Accélérer SQL@pmroz cela peut-il être implémenté dans JMP ?Je trouve moi aussi qu'il faut jusqu'à 20 minutes pour exécuter une requête sur une base de données Oracle dans JMP, alors qu'il ne faut qu'environ 20 secondes pour exécuter une requête identique à l'aide d'Excel.En fait, chaque fois que j'ai comparé les performances entre JMP et Excel (au cours des 8 dernières années), JMP est beaucoup plus lent qu'Excel.
Toute aide serait grandement appréciée !!!
Re : Accélérer SQLJ'aimerais une augmentation des performances pour JSL Open Database() ou Execute SQL().
D'après les conseils d'Oracle de Burleson, http://www.dba-oracle.com/phys_odbc_slow.htm :
Les bases de données soumises à un trafic élevé peuvent rencontrer des problèmes de performances lorsque ODBC est utilisé. De nombreuses applications Oracle connaissent une surcharge accrue car la connexion via ODBC est moins efficace que l'utilisation d'un appel d'API natif à la base de données. Il est donc recommandé de remplacer ODBC par un outil de communication natif tel que Oracle Call Interface (OCI) . ODBC fonctionne généralement bien pour les requêtes de base de données occasionnelles, mais est trop lent pour être un élément permanent dans la plupart des applications de production.
Re : Accélérer SQLGros coup de coeur pour ça.... J'ai trouvé une énorme différence avec Oracle en comparant les requêtes avec JSL Open Database() et Benthic Golden ou SQL Developer en utilisant le même SQL (JMP14).J'ai pu effacer cette différence en jouant avec les paramètres de la source de données.Dans mon cas, augmenter la "Fetch Buffer Size".Mais tout à fait d'accord qu'il semble que JMP pourrait/devrait être plus intelligent à ce sujet puisque les autres applications le sont.J'ai aussi un cas plus récent où je vois peut-être à nouveau le décalage.Peut-être que ce SQL différent veut un paramètre différent, mais Golden semble n'avoir aucun problème... pouah.
Re : Accélérer SQLIl en va de même si vous utilisez la fonction JSL "Open Database" pour une requête sql d'une base de données PI System (OSIsoft, www.osisoft.com ). Dans ce cas , DSN pointe vers un pilote PI ODBC installé localement sur mon ordinateur portable Win7Pro. "Open Database" est beaucoup plus lent que l'exécution de la même requête sql via PI SQL Commander sur le même appareil . C'est un véritable goulot d'étranglement pour tout ce qui dépasse 100 000 lignes de données - un support solide pour ce souhait de JMP !