[MSSQL] ODBC Driver 的差異


話說,Web Server 上的 SQL Server 在 DELETE 命令的效能一直不彰,想到 SQL Server 2017 有好幾個 ODBC Driver 可以選,就先 google 搜尋瞧瞧。

SQL Server ODBC Driver

SQL Server ODBC Driver

從圖上可以看到,主要有 5 個可選擇的 ODBC Driver :

  1. ODBC Driver 13 for SQL Server
  2. ODBC Driver 17 for SQL Server
  3. SQL Server
  4. SQL Server Native Client 11.0
  5. SQL Server Native Client RDA 11.0

在這篇詢答中,討論了 4 種,是 1/3/4/5

Differences Between Drivers for ODBC Drivers: https://stackoverflow.com/questions/39440008/differences-between-drivers-for-odbc-drivers

主要是說:


ODBC Driver for SQL Server

適合用在各種語言與作業系統的通用驅動程式

SQL Server

是為了相容 SQL Server 2000 以前,可以用,但效能不好。

SQL Server Native Client

在 SQL Server 2016 的視窗環境下最好選擇

SQL Server Native Client RDA

相容 SQL Server Compact 3.5 ,但未來會被移除,最好不要使用。


在 SQL Server 2014 時,我使用 SQL Server Native Client 11.0 ,在 SQL Server 2017 時,我使用 ODBC Driver 17 for SQL Server ,該不會這就是我的效能瓶頸吧?

先把網頁服務停止,將驅動程式更換為 SQL Server Native Client 11.0 ,重啟服務,剛好碰到整點數百站點資料回傳,頓時發現,CPU Loading 更高,系統卡的更死。

由於碰上大量資料正在回傳,先擺一會讓他執行完,趁這個時機搜尋其他文章:

這幾篇是贊成使用 SQL Server Native Client 的:

How and When to Use MS SQL Server Native Client: https://www.mertech.com/blog/how-and-when-to-use-sql-server-native-client

SQL Server: Native client vs. ODBC? https://stackoverflow.com/questions/5343428/sql-server-native-client-vs-odbc

但是微軟官方的說法是建議使用 ODBC Driver for SQL Server :

SQL Server Native Client: https://docs.microsoft.com/zh-tw/sql/relational-databases/native-client/sql-server-native-client

Windows 上適用於 SQL Server 的 Microsoft ODBC 驅動程式: https://docs.microsoft.com/zh-tw/sql/connect/odbc/windows/features-of-the-microsoft-odbc-driver-for-sql-server-on-windows

我自己則是等資料回傳完後,再用 ODBC Driver 17 for SQL Server 跑,在整點回傳時,效能看起來是比前一小時好。

當然具體要詳細測試才知道,但就初步來看,我的系統跑 ODBC Driver 17 for SQL Server 比跑 SQL Server Native Client 11.0 要好。

 

Categories: 工作點滴 | 標籤: | 發表留言

文章分頁導航

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

在WordPress.com寫網誌.

%d 位部落客按了讚: