加快 SQL 速度在 JMP 13.2.1 中,JSL 腳本「開啟資料庫(「DSN=mysql」, sql)」比在 MySQL 工作台或同一台電腦上的 mysql 命令列上執行相同的「select」sql 查詢要慢得多。 DSN 指向我的 win10 電腦本機安裝的 MySQL ODBC 驅動程式(mysql-connector-odbc-5.3.7-winx64.msi)。當「select」傳回很多行(例如100萬行資料)時,載入速度差異非常明顯。希望 JMP 在下一個版本中改進此資料連接和載入速度。
資料存取回复:加快 SQL - 狀態更改為:已交付@弗蘭克茲我們對此進行了研究並評估了其在最新版 JMP(版本 17)中的表現。看來這不再是問題了。對於沒有盡快回复此問題,我深表歉意,但我希望您發現 JMP 的最新版本已解決此問題。如果沒有,請告訴我們。
回复:加快 SQL - 狀態更改為:已確認你好@弗蘭克茲, 謝謝你的建議! 我們已收到您的請求並將予以考慮。
回复:加快 SQL 速度作為@pmroz暗示,使用Oracle 調用接口 (OCI)而不是 ODBC 可能是解決這個問題的更好方法 - 如果您的數據庫支持它(我無法對 OCI 發表評論,因為我自己從未使用過它)我想強調的是,周圍有使用 ODBC 的軟件(對於特定數據庫,通過 SQL 查詢)和在相同情況下,它的工作速度比 JMP 快得多(請參閱我的帖子,03-05-2018),所以只需達到這個水平對於 JMP 來說將是一個真正的改進。 鑑於此調用的歷史(從 JMP13 到 JMP15 在這方面沒有明顯的改進),我個人得出的結論是,如果您需要從數據庫中獲取超過適度數量的記錄,則 JMP/SQL 組合可能不是最佳選擇(如果可以避免的話)。
回复:加快 SQL 速度@pmroz這可以在JMP中實現嗎?我也發現在 JMP 中運行對 Oracle DB 的查詢最多需要 20 分鐘,而使用 Excel 運行相同的查詢只需要大約 20 秒。事實上,每當我比較 JMP 和 Excel 的性能時(過去 8 年),JMP 都是很多比 Excel 慢。
任何幫助將不勝感激!!!
回复:加快 SQL 速度我希望 JSL Open Database() 或 Execute SQL() 的性能得到提高。
來自 Burleson 的 Oracle Tips, http://www.dba-oracle.com/phys_odbc_slow.htm :
使用 ODBC 時,高流量的數據庫可能會出現性能問題。 許多 Oracle 應用程序都會遇到開銷增加的情況,因為通過 ODBC 連接的效率低於使用本機 API 調用數據庫的效率。 因此,建議將 ODBC 替換為本機通信工具,例如 Oracle 調用接口 (OCI) 。 ODBC 通常適用於偶爾的數據庫查詢,但速度太慢,無法成為大多數生產應用程序中的永久固定裝置。
回复:加快 SQL 速度對此豎起大拇指...... 比較使用相同 SQL (JMP14) 的 JSL Open Database() 和 Benthic Golden 或 SQL Developer 的查詢,我發現 Oracle 存在巨大差異。我能夠通過擺弄數據源的設置來消除這種差異。就我而言,提高“獲取緩衝區大小”。但完全同意 JMP 似乎可以/應該在這方面更加聰明,因為其他應用程序都是如此。我最近還有一個案例,我可能會再次看到偏移。也許這個不同的 SQL 需要不同的設置,但 Golden 似乎沒有問題......呃。
回复:加快 SQL 速度如果使用 JSL 函數“打開數據庫”對 PI System 數據庫(OSIsoft、 www.osisoft.com )。 在這種情況下, DSN 指向本地安裝在我的 Win7Pro 筆記本電腦上的 PI ODBC 驅動程序。 “打開數據庫”比通過 PI SQL Commander 運行相同的 SQL 查詢慢得多在同一台機器上。 對於超過 100k 行數據的任何數據來說,這都是一個真正的痛苦/瓶頸 - 強烈支持這個 JMP 願望!