亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > SQL Server > 正文

SQL Server 2012:SQL Server體系結構——一個查詢的生命周期(第1部分)

2024-08-31 00:54:34
字體:
來源:轉載
供稿:網友
SQL Server 2012:SQL Server體系結構——一個查詢的生命周期(第1部分)

為了縮小讀取操作所涉及范圍,本文首先著眼于簡單的SELECT查詢,然后引入執行更新操作有關的附加過程。最后你會讀到,優化性能時SQLServer使用還原工具的相關術語和流程。

關系和存儲引擎

如圖所示,SQL Server被分為2個主要引擎:關系引擎存儲引擎。關系引擎有時也被稱為查詢處理器,因為它的主要功能是查詢優化和執行。它包含檢查查詢語法和準備查詢樹的命令解析器;查詢優化器毫無疑問是任何數據庫系統中皇冠上的寶石;查詢執行器對執行(查詢計劃)負責。

存儲引擎對所有數據輸入、輸出管理負責。它包含用來處理行、索引、頁、分配和行版本等修改的輸入、輸出請求的存取方法緩存區管理器,與SQL Server主要內存用戶緩沖池打交道。它還包含處理用來維持一致性(ACID)的數據鎖和管理事務日志的事務管理器。

緩沖池

在進入查詢生命周期之前你需要知道的其它主要組件是緩沖池,在SQL Server中是最大的內存用戶。緩沖池里包含SQL Server中的所有不同緩存,包括計劃緩存和數據緩存,計劃緩存會接在透過它生命周期的查詢后的章節談到。

一個簡單的SELECT查詢

在這個例子中,使用的查詢細節不重要——沒有join的簡單SELECT語句,因為你只是發起一起簡單的讀取請求。從客戶端開始,那里你首先接觸的組件是SQL Server網絡接口(SNI)。

SQL Server網絡接口(SNI)

SQL Server網絡接口(SNI)是建立客戶端和服務器端網絡連接的協議層。它由數據庫引擎和SQL Server本地客戶(SQL Server Native Client:SNAC)都用到的一系列API組成。SNI代表在SQL Server 2000里建立的網絡庫和包含在操作系統里的微軟數據訪問組件(Microsoft Data access Components:MDAC)。

SNI不是被直接配置的;你要配置在客戶端和服務器端的網絡協議。SQL Server支持下列協議:

  • 共享內存(Shared memory)——簡單、快速,共享內存是用來連接本地(與SQL Server一樣的計算機)運行客戶端的默認協議。只能用在本地,沒有配置屬性,當從本地機器連接時始終是首次嘗試的。
  • TCP/ip——這是最常用于SQL Server的訪問協議。它通過指定IP地址和端口號使你可以連接到SQL Server。通常,當你指定一個連接實例時它會自動發生。你的內部命名解析系統解析實例名的主機名為IP地址,不管你為默認實例連接到默認TCP 1433端口還是用SQL瀏覽服務為命名實例使用UDP 1434找到正確的端口。
  • 命名管道(Named Pipes)——TCP/IP和命名管道(Named Pipes)是在架構里被使用的兼容協議。命名管道(Named Pipes)被開發來用于局域網(LANs),但也可以被不高效的用于低速網絡,例如廣域網(WANs)。

使用命名管道(Named Pipes)首先需要在為SQL Server配置管理器(SQL Server Configuration Manager)使它生效(如果你要遠程連接的話),然后創建一個使用命名管道(Named Pipes)作為協議連接到服務器的SQL Server別名。

命名管道(Named Pipes)使用TCP 445端口,在2個電腦間的任何防火墻里請確保這個端口被打開,包括Windows防火墻。

  • VIA——虛擬接口適配器(Virtual Interface Adapter:VIA)是兩個系統間高性能通訊的協議,它需要在終端和專門連接口都要有特制硬件。

與命名管道(Named Pipes)一樣,使用VIA協議首先需要在為SQL Server配置管理器(SQL Server Configuration Manager)使它生效,然后創建一個使用虛擬接口適配器(Virtual Interface Adapter:VIA)作為協議連接到服務器的SQL Server別名.雖然SQL Server 2012還支持VIA協議,從以后的版本開始它會被移除,因為新安裝時需要避免這個協議被安裝。

不管使用哪種協議,一旦連接被建立,SQL Server網絡接口(SNI)在服務器上與表格數據流(TDS)終結點(下面會介紹)創建一個完全連接,用它來發送請求和接收數據。這里追隨透過它生命周期的查詢的目的是,你發送SELECT語句且在等待接收結果集。

表格數據流終結點(Tabular Data Stream(TDS) Endpoints)

TDS是微軟所有最先由Sybase設計用來與數據庫服務器交互的協議。使用例如TCP/IP的網絡協議一旦連接被接通,與相關TDS終結點的聯系會被創建,它在客戶端與服務器端之間擔當著通信點。

每個網絡協議都有一個TDS終結點,并且還有一個會被專用網絡連接(dedicated administrator connection:DAC)使用。一旦連通性被創建,TDS消息會被用做客戶端與服務器端間的溝通。

SELECT語句是穿過TCP/IP協議(TCP/IP是默認協議)作為TDS消息發送給SQL Server。

協議層(PRotocal Layer)

當SQL Server中的協議層(Protocal Layer)收到你的TDS包,它會倒轉SQL Server網絡接口(SNI)的工作,把包拆開找出里面包含的請求是什么。協議層(Protocal Layer)同樣對把結果和狀態消息打包并作為TDS消息發回給客戶端負責。

我們的SELECT語句在TDS包里標記為”SQL命令“類型的消息,因為它傳給下一個組件,命令分析器(Command Parser),開始走向執行的道路。

上圖顯示了我們的查詢現在到哪里了。在客戶端,語句被SQL Server網絡接口(SNI)打包在TDS包里并發送給SQL Server中的協議層(Protocal Layer),在那里被拆包,識別為SQL命令,這個代碼被SQL Server網絡接口(SNI)發送給命令解析器(Command Parser)。

命令分析器(Command Parser)

命令分析器(Comamnd Parser)的角色是處理T-SQL語言事件(language events)。它首先檢查語法并通過協議層(protocol layer)返回給客戶端任何語法錯誤。如果語法是有效的,然后下一步就是生成查詢計劃(query plan)或查找已存在的計劃。查詢計劃(query plan)包含SQL Server將如何去執行這段代碼的細節。它通常被稱為執行計劃(execution plan)。

為了檢查查詢計劃(query plan),命令分析器(Comamnd Parser)會生成T-SQL的散列(hash)并核對計劃緩存(plan cache)來決定是否有合適的計劃已經存在。計劃緩存(plan cache)是在緩沖池(buffer pool)里用來緩存查詢計劃(query plan)的區域。如果找到匹配的,從緩存里這個計劃會被讀取并傳給查詢執行器(Query Executor)去執行。(下一篇將介紹如果沒有找到匹配會發生什么。)


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
狠狠躁18三区二区一区| 久久久久久午夜| 亚洲成人精品在线| 国产suv精品一区二区三区88区| 国产成人拍精品视频午夜网站| 亚洲色图第三页| 亚洲最大av网| 欧美在线视频在线播放完整版免费观看| 韩国国内大量揄拍精品视频| 欧美理论电影网| 久久在线免费视频| 亚洲精品一区在线观看香蕉| 国产成人拍精品视频午夜网站| 久久久久久网址| 91福利视频在线观看| 国产精品大陆在线观看| 日韩视频欧美视频| 欧美极度另类性三渗透| 亚洲电影免费观看高清完整版在线观看| 国产精品白嫩初高中害羞小美女| 亚洲人成网站999久久久综合| 日韩精品免费视频| 久久成人综合视频| 美女av一区二区| 日韩在线视频中文字幕| 77777亚洲午夜久久多人| 欧美巨大黑人极品精男| 国产专区欧美专区| 亚洲精品日产aⅴ| 久久精品视频在线| 亚洲网站在线播放| xvideos亚洲| 亚洲美女视频网| 国产精品va在线| 国产精品美女在线观看| 亚洲国产精品美女| 欧美巨大黑人极品精男| 伊人精品在线观看| 亚洲第一av在线| 欧美精品少妇videofree| 中文字幕在线视频日韩| 国产精品久久精品| 久久伊人精品天天| 日本欧美在线视频| 亚洲精品电影网在线观看| 亚洲国语精品自产拍在线观看| 91久久在线观看| 欧美日韩一区二区在线播放| 日韩电影免费观看在线| 国产日韩欧美黄色| 中文字幕亚洲欧美日韩在线不卡| 热re91久久精品国99热蜜臀| 一区二区三区视频观看| 国产做受高潮69| 久久人人爽人人爽人人片亚洲| 91国内免费在线视频| 成人免费淫片视频软件| 亚洲最大福利网| 国产欧美精品在线| 日韩av中文字幕在线播放| 91久久精品国产91久久| 亚洲国产成人爱av在线播放| 国产成人精品日本亚洲专区61| 欧美日韩黄色大片| 亚洲级视频在线观看免费1级| 欧美最近摘花xxxx摘花| 欧美一区二区三区精品电影| 久久久久久国产| 亚洲视频视频在线| 2021国产精品视频| 91久久国产婷婷一区二区| 亚洲精品xxxx| 国产一区二区精品丝袜| 亚洲国产小视频在线观看| 欧美黑人一级爽快片淫片高清| 日韩中文字幕视频| 久久久久女教师免费一区| 欧美日韩国产精品一区二区三区四区| 91久久精品一区| 久久影院资源网| 欧美激情亚洲自拍| 国产精品户外野外| 亚洲视频在线看| 国产午夜精品免费一区二区三区| 日韩精品免费在线视频观看| 国模gogo一区二区大胆私拍| 91精品国产网站| 亚洲欧洲日产国产网站| 久久福利网址导航| 国产视频在线观看一区二区| 国产成人精品免高潮在线观看| 国产欧美精品一区二区三区-老狼| 亚洲最大成人在线| 国产精品中文久久久久久久| 中文字幕精品久久久久| 欧美日韩在线视频首页| 91久久久久久久一区二区| 色婷婷综合久久久久中文字幕1| 久久精品国产一区| 欧美日韩裸体免费视频| 尤物九九久久国产精品的特点| 国产精品草莓在线免费观看| 日韩av网站在线| 亚洲国产精品成人一区二区| 精品久久久久久久久久国产| 最新亚洲国产精品| 成人免费网站在线| 狠狠做深爱婷婷久久综合一区| 精品亚洲夜色av98在线观看| 91精品国产91久久久久久吃药| 亚洲激情电影中文字幕| 在线看国产精品| 久久国产精品影视| 亚洲在线免费看| 亚洲欧美日韩爽爽影院| 亚洲一区精品电影| 菠萝蜜影院一区二区免费| 欧美精品videossex性护士| 欧美一级bbbbb性bbbb喷潮片| 色琪琪综合男人的天堂aⅴ视频| 亚洲第一免费播放区| 日本一欧美一欧美一亚洲视频| 日韩精品视频在线免费观看| 国产精品国产三级国产aⅴ浪潮| 在线视频日本亚洲性| 欧美日韩人人澡狠狠躁视频| 欧美在线视频观看| 亚洲欧美激情精品一区二区| 日韩av免费在线播放| 精品福利一区二区| 在线观看视频亚洲| 欧美精品久久久久久久免费观看| 欧美性猛交xxxx富婆| 精品偷拍各种wc美女嘘嘘| 中文日韩在线观看| 久久综合亚洲社区| 精品呦交小u女在线| 久久精品99久久久香蕉| 91高潮在线观看| 91性高湖久久久久久久久_久久99| 亚洲天堂男人天堂| 97在线观看免费高清| 欧美人在线视频| 国产精品视频区| 欧美日韩国产第一页| 国产aⅴ夜夜欢一区二区三区| 精品亚洲一区二区| 国产精品一二三在线| 亚洲伊人一本大道中文字幕| 中文字幕亚洲欧美一区二区三区| 亚洲欧美日韩中文视频| 国产成人精彩在线视频九色| 日韩av成人在线观看| 91精品中文在线| 亚洲自拍偷拍在线| 成人美女av在线直播| 亚洲最大成人免费视频| 日韩电影免费在线观看| 国产美女久久精品| 国产日韩欧美综合| 成人性生交大片免费观看嘿嘿视频| 亚洲日本欧美日韩高观看| www.日韩免费| 亚洲电影成人av99爱色|