Sybase

Sybase 中 FETCH_CURSOR jconnect_implicit_1 的含義

  • January 16, 2020

情況

我正在嘗試通過 JDBC 從 Sqoop 連接到 Sybase ASE 15.7 版時對性能進行故障排除。

雖然我自己無法檢查事情,但以這種方式提取數據似乎比使用另一個工具(使用 ODBC)慢 10 倍。

觀察

DB 團隊觀察到以下情況:

在此處輸入圖像描述

問題:

是什麼意思FETCH_SIZE jconnect_implicit_1:

當然,也歡迎其他有關可能導致性能問題的提示。


數據庫團隊認為這意味著為每一行製作了一個游標,可能是因為這個連結包含一些模糊相似的東西,但我懷疑它意味著其他的東西,因為我沒有找到任何 Oozie 的引用導致這通過 JDBC(我們強制執行更大的在 oozie 命令中獲取大小)。

即使fetch size 設置為 1,也不意味著將為每一行創建一個游標;它只是意味著驅動程序將請求將打開游標的行逐一發送給客戶端,而不是批量發送。仍然低效,但不是那麼低效。但是,沒有跡象表明 fetch size 設置為 1。jconnect_implicit_1:似乎只是綁定變數的自動生成的名稱。我相信 Sqoop 獲取大小可以通過--fetch-size命令行參數來控制。

引用自:https://dba.stackexchange.com/questions/257565