SQL2005數據庫引擎結構(一)

SQL2005數據庫引擎結構(一)

 

 

 

 

 

------------------------------------------------------------------------

-- Author : HappyFlyStone

-- Date   : 2009-09-20 17:36:30

-- Version: Microsoft SQL Server 2005 - 9.00.2047.00 (Intel X86)

--      Apr 14 2006 01:12:25

--      Copyright (c) 1988-2005 Microsoft Corporation

--      Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)

--      轉載請註明出處,更多請關注:http://blog.csdn.net/happyflystone

------------------------------------------------------------------------

    今天重點從上層來看了一下SQL2005的數據庫引擎組件,並大體上說說如何協同工作,理解這些是有助更好的學習數據庫。聯機幫助一下,發現一個很重點的組件:SQLOS-SQL Operating System.先用圖來說明一下總體組成:

 

一、協議層

首先我們必須知道SQLSERVER邏輯都是客戶/服務器,不管是你在一臺單機上,還是前端應用分散在多臺不同操作系統的機器上,甚至COM+結構都是。接着我們簡單的來理解訪問架構,理解SQLSERVER的我們不如先來說說HTTP,不管我們是什麼平臺下的瀏覽器,或是MSXML對象,或是.NET的類我們都可以輕鬆訪問IIS,簡單的說也就是我們只要遵守標準的HTTP協議就可以訪問IIS。那我們的SQLSERVER也是這樣做的,只不過不HTTP協議而是表格格式數據流DTS(tabular data stream),對IIS和SQLSERVER來說HTTP與DTS兩者的差別僅是前者是公開協議而後者是MS非公開的內部協議(每一次數據庫升級DTS也會作相應的升級,同時確保向下的兼容性),所以不管是ODBC還是OLEDB、SQL Client、JDBC只是把數據請求轉換成DTS然後打包封裝成標準的通信協議(如TCP/IP)信息包最後送到服務器端。服務器端把通訊信息包解開送給ODS(Open Data Services),然後還原成標準的SQL語句並轉交給關係引擎。

SQLSERVER2005支持的通訊協議有四種:

1、        共享內存

這是最簡單的數據庫在本地的一種協議。同時不需要配置就可以使用。如果是

MDAC2.8以前的版本是不支持這個協議的,會自動切換到命名管道。

2、        命名管道

局域網內使用的一種協議,互爲對方進程提供數據,這些進程可以在本地,

也可以遠程。

3、        TCP/IP

使用是廣泛的協議,可以在不同硬件和操作系統間互相通訊。

4、        虛擬接口VIA

與專用VIA硬件有關。

 

    最後說一下TDS端點,2005已經使用TDS端點代表服務器連接,初始化安裝時,一共初始化5個端點,四個各一個,另一個給DAC使用。對於激動的DTS端點纔可以使用,處於非激活態的端點仍然存在,只是不能使用而已。

 

好,今天先說到這兒,下面我會重點說說關係引擎與存儲引擎。

請大家繼續關注我的blog: http://blog.csdn.net/happyflystone

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章