国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

淺談SQL Server內部運行機制

數據庫 SQL Server
要想成為一個好的Sql優化高手,首先要做的一件事無疑就是了解sql語句在SQL Server中是如何執行的。在這一系列中,我們將開始sqlserver優化系列講解,本 講為優化系列的開篇文章,在本篇文章中,我們將重點講解SQL Server體系結構。

對于已經很熟悉T-SQL的讀者,或者對于較專業的DBA來說,邏輯的增刪改查,或者較復雜的SQL語句,都是非常簡單的,不存在任何挑戰,不值得一提,那么,SQL的哪些方面是他們的挑戰 或者軟肋呢?

那就是sql優化。然而,要想成為一個好的Sql優化高手,首先要做的一件事無疑就是了解sql語句在SQL Server中是如何執行的。在這一系列中,我們將開始sqlserver優化系列講解,本講為優化系列的開篇文章,在本篇文章中,我們將重點講解SQL Server體系結構。

在正式講解之前,我們先來看看如下問題,你是否遇到過,若你遇到過且成功解決,那么這篇文章,你可以跳過。

為了測試需要,我們先模擬插入5億3千多萬條數據。

 

  1. SELECT COUNT(1) FROM BigDataTest 

 

 

 

 

(一)查詢緩慢問題

*,臨時表,表連接,子查詢等造成的查詢緩慢問題,你能解決嗎?

(二)內存泄漏

如下查詢了8分2秒,然后內存溢出,你知道問題嗎?

 

  1. SELECT * FROM BigDataTest 

 

 

 

 

(三)經常聽說如下概念,你都能解決嗎?

事務與鎖(請參考我另一篇文章:淺談SQL Server事務與鎖(上篇)https://www.cnblogs.com/wangjiming/p/8396986.html,ACID,隔離級別,臟讀,分表分庫,水平拆分,垂直拆分,高并發等

一、SQL Server體系結構抽象

 

 

 

 

二、SQL Server體系結構概述

SQL Server核心體系結構,大致包括六大部分:客戶端訪問工具、SQL Server 網絡接口(SQL Server Network Interface,SNI)、關系引擎、存儲引擎、

磁盤和緩沖池。下圖為SQL Server核心體系大致輪廓圖。

 

 

 

 

(一)SQL Server客戶端訪問工具

 

 

 

 

SQL Server客戶端訪問工具,提供了遠程訪問技術,它與SQL Server服務端基于一定的協議,使其能夠遠程訪問數據庫,就像在本地操作數據庫一樣,如我們經常用的

Microsoft SQL Server Management Studio。

SQL Server客戶端訪問工具是比較多的,其中比較流行的要數Microsoft SQL Server Management Studio 和Navicat(Navicat在MySQL中也是比較常用的)了,至于其他工具,本篇文章就不列舉了,感興趣的讀者朋友,可以查詢一下。

(二)SQL Server網絡協議

 

 

 

 

SQL Server網絡協議,又叫SQL Server網絡接口(SNI),它是構成客戶端和服務端通信的橋梁,它與SQL Server服務端基于一定協議,方可通信,如我們在客戶端輸入一條查詢語句SELECT * FROM BigDataTest,這條語句,只有客戶端和服務端基于一定協議,方可被服務端解析,否則,被視為無效語句。

SQL Server網絡協議,由一組API構成,這些API供SQL Server數據庫引擎和SQL Server本地客戶端調用,如實現最基本的CRUD通信。

SQL Server 網絡接口(SQL Server Network Interface,SNI)只需要在客戶端和服務端配置網絡協議即可,它支持一下協議:

(1)共享內存

(2)TCP/IP

(3)命名管道

(4)VIA

(三)關系引擎

 

 

 

 

關系引擎,也叫查詢引擎,其主要功能是負責處理SQL語句,其核心組件由三部分組成:命令分析器、查詢優化器和查詢執行器。

(1)命令分析器:負責解析客戶端傳遞過來的T-SQL語句,如客戶端傳遞一條SQL語句:SELECT * FROM BigDataTest,它會檢查該語句的語法結構,若語法

錯誤,它會將錯誤返回給協議層,然后協議層將錯誤返回給客戶端;如果語法結構正確,它會根據查詢命令生成查詢計劃或尋找一個已存在的查詢計劃(先在緩沖池計劃緩存中查找,若找到,則直接給查詢執行器執行,若未找到,則會生成基于T-SQL的查詢樹,然后交給查詢優化器優化)

(2)查詢優化器:負責優化命令解析器生成的T-SQL查詢樹(基于資源的優化,而非基于時間的優化),然后將最終優化結果傳遞給查詢執行器執行。查詢優化器是基于

“資源開銷”的優化器,這種算法評估多種可執行的查詢方式,并從中選擇開銷***的方案作為優化結果,然后將該結果生成查詢計劃輸出給查詢執行器。注意,查詢優化器是“基于資源開銷***”而非“基于方案***”,也就是,查詢優化器的最終優化結果未必是***的方案,但一定是資源開銷***的方案。

(3)查詢執行器:負責執行查詢。假若查詢執行器接收到命令解析器或查詢優化器傳遞過來的SQL語句:SELECT * FROM BigDataTest,它通過OLE DB接口傳遞到存儲引擎,再傳遞到存儲引擎的訪問方法。

(四)存儲引擎

 

 

 

 

存儲引擎,本質就是管理資源存儲的,它的核心組件包括三部分:訪問方法、事務管理器和緩沖區管理器。

(1)訪問方法:訪問方法本質是一個接口,供查詢執行器調用(該接口提供了所有檢索數據的代碼,接口的實際執行是由緩沖區管理器來執行的),假若查詢執行器傳遞一條SQL語句:

SELECT * FROM BigDataTest,訪問方法接收到該請求命令后,就會調用緩沖區管理器,緩沖區管理器就會調用緩沖池的計劃緩存,在計劃緩存中尋找到相應的結果集,然后返回給關系引擎。

(2)緩沖區管理器:供訪問方法調用,管理緩沖池,在緩沖池中查詢相應資源并返回結果集,供訪問方法返回給關系引擎。

(3)事務管理器:主要負責事務的管理(ACID管理)和高并發管理(鎖),它包括兩個核心組件(日志管理器和鎖管理器),鎖管理器負責提供并發數據訪問,設置隔離級別等;日志管理器負責記錄所有訪問方法操作動作,如基本的CRUD。

(五)緩沖池

 

 

 

 

緩沖池駐于內存中,是磁盤和緩沖區管理器的橋梁SQL Server中,所有資源的查詢都是在內存中進行的,即在緩沖池中進行的,假若緩沖池接收到緩沖區管理器傳遞過來的的一條SQL語句:SELECT * FROM BigDataTest,緩沖區管理器數據緩存先從磁盤數據庫中取滿足條件的結果集,然后放在緩沖池數據緩沖中,然后以結果集的形式返回給緩沖區管理器,供訪問方法返回給關系引擎的查詢執行器,然后返回給協議層,協議層再返回給客戶端。注意,這里操作的是緩沖池中數據,而不是磁盤DB中的數據,并且操作的緩沖池數據不會立即寫入磁盤,因此就會造成查詢到結果與BD中的結果不一致,這就是所謂的臟讀。

緩沖池主要包括兩部分:計劃緩存(生成執行計劃是非常耗時耗資源的,計劃緩存主要用來存儲執行計劃,以備后續使用)和數據緩存(通常是緩存池中容量***的,消耗內存***,從磁盤中讀取的數據頁只要放在這里,方可調用)

(六)磁盤

 

 

 

 

磁盤主要是用來存儲持久化資源的,如日志資源,數據庫資源和緩存池持久化支援等。

三、一個查詢的完整流程

如下為一個比較完善的查詢過程,即第二部分查詢語句:SELECT * FROM BigDataTest 整個過程。

 

 

 

 

四、參考文獻

【01】《SQL Server 2012 深入解析與性能優化 第3版》Christian Bolton,Justin Langford,Glenn Berry,Gavin Payne,Amit Banerjee,Rob Farley著 

責任編輯:龐桂玉 來源: 數據庫開發
相關推薦

2019-05-10 14:00:21

小程序運行機制前端

2019-08-15 10:17:16

Webpack運行瀏覽器

2015-11-20 11:20:54

js開發

2009-02-03 14:00:20

PHP運行PHP調用PHP原理

2009-12-11 10:52:37

PHP運行機制

2010-02-01 17:19:30

C++運行機制

2019-10-11 09:00:00

JavaScriptEvent Loop前端

2010-01-05 16:10:21

.NET Framew

2023-05-26 08:01:01

FacebookVelox機制

2010-02-23 10:15:22

WCF運行機制

2012-03-06 10:22:00

程序

2016-12-13 14:12:25

程序機制

2015-11-16 11:17:30

PHP底層運行機制原理

2016-12-14 14:41:20

Hello World程序運行機制

2010-09-28 11:05:49

jQuery

2009-10-22 17:10:04

CLR和JRE運行機制

2010-05-06 17:54:54

Oracle鎖

2017-07-12 14:58:21

AndroidInstant Run

2022-02-11 23:11:09

Kubernetes集群容器化

2018-03-15 16:45:47

前端JavaScriptthis
點贊
收藏

51CTO技術棧公眾號

亚洲精品系列| 中文字幕免费不卡| 成人精品视频一区| 91chinesevideo永久地址| 国产经典视频一区| 豆国产96在线|亚洲| 97在线精品国自产拍中文| 18videosex性欧美麻豆| 国产无人区一区二区三区| 最新av在线免费观看| 精品网站在线| 欧美一区二区三级| 女人裸体免费网站| 中文字幕+乱码+中文字幕一区| 国产aⅴ精品一区二区三区黄| 蜜臀av免费一区二区三区| 最新亚洲国产精品| 三级在线播放| 丁香视频免费观看| 99视频精品| 美脚丝袜一区二区三区在线观看| 性人久久久久| 亚洲图片欧美激情| www插插插无码免费视频网站| 欧美~级网站不卡| 国产精品欧美日韩久久| 精品国产91| 欧美最猛性xxxxx(亚洲精品)| 免费不卡中文字幕在线| 日韩毛片中文字幕| 欧美7777| 欧美性大战久久久久久久蜜臀| 亚洲欧洲日产国码无码久久99| 国产乱人伦偷精品视频免下载 | 久久久久亚洲精品| 奇米亚洲欧美| 日韩av电影手机在线| 欧美精品三级| 国产精品一区二区三区在线| 国产一区二区三区四区三区四| 国产成人精品久久久| 少妇精品久久久| 国产美女精品视频免费观看| 精东粉嫩av免费一区二区三区| 就去色蜜桃综合| 丁香婷婷综合五月| 色欧美激情视频在线| 在线播放91灌醉迷j高跟美女| 亚洲福利影院| 97se国产在线视频| 影音先锋日韩在线| 日韩精品极品视频在线观看免费| 久久精品国产一区二区三区免费看 | caoliu在线| 日韩av网址在线观看| 极品美女一区二区三区| 一区二区三区|亚洲午夜| 中文字幕一区二区三区在线观看 | 欧美日韩一卡二卡三卡| 超碰成人97| 六月婷婷在线视频| 欧美不卡视频一区| 国产一区二区三区四区五区 | 国产欧美久久久精品影院| 婷婷av在线| 免费一区二区三区在在线视频| 久久精品视频免费观看| 捆绑调教日本一区二区三区| 高清国产在线一区| 91精品国产综合久久久久| 裤袜国产欧美精品一区| 久久精品国产一区二区三区| 99热这里有精品| 韩国成人av| 欧美高清视频看片在线观看| 免费观看又污又黄在线观看国产| 好看的日韩精品视频在线| 一区二区三区欧美久久| 欧美三区不卡| 成人天堂yy6080亚洲高清| 国产精品一区而去| 亚洲综合一二区| 婷婷电影在线观看| 日韩美女在线观看一区| 母乳一区在线观看| 91网页在线观看| 国产iv一区二区三区| 最全影音av资源中文字幕在线| 欧美mv日韩mv亚洲| 国产精品无遮挡| 欧美激情另类| 久久精品网站视频| 在线不卡的av| 一区二区三区国产在线| 自拍日韩亚洲一区在线| 国产偷自视频区视频一区二区| 国产毛片视频网站| 欧美美女一区二区| 青青草国产精品亚洲专区无| 嫩草香蕉在线91一二三区| 97人人模人人爽人人少妇| 亚洲国产精品黑人久久久| 日韩中文影院| 欧美一区二区在线| 精品国产3级a| 日韩中文字幕麻豆| 久久视频免费| 久久精品国产大片免费观看| 成 年 人 黄 色 大 片大 全| 色综合久久中文综合久久97| 成人看片爽爽爽| 中文字幕第一页亚洲| 黑丝一区二区| 久久精品a一级国产免视看成人| 欧美精品第一页在线播放| 成人毛片老司机大片| 日韩电视剧在线观看免费网站| 日韩免费久久| aaa在线观看| 日韩av在线电影观看| 欧美一级视频精品观看| 丝袜诱惑制服诱惑色一区在线观看| 青青青草原在线| 快播日韩欧美| 在线视频精品一| 亚洲成人免费看| 新67194成人永久网站| 欧美日韩一区综合| 国产精品日韩成人| 欧美国产美女| 澳门成人av| 欧美在线播放| 欧美激情一区二区三区全黄| 成人亚洲性情网站www在线观看| 成人亚洲激情网| 狠狠色狠狠色综合日日小说| 成人av动漫在线观看| 视频在线91| 国产伦精品一区二区三区照片91| 欧美最猛性xxxxx直播| 亚洲欧洲精品一区二区三区| 羞羞色国产精品网站| 国产三级三级看三级| 99999精品视频| 成人激情视频免费在线| 一区二区三区www| 欧美视频中文字幕| 日韩欧美国产午夜精品| 日韩视频在线一区二区三区| a篇片在线观看网站| 亚洲精品在线免费看| 亚洲精品综合久久中文字幕| 国产精品资源站在线| 偷偷要色偷偷| 久久黄色免费看| 久草在线在线视频| 3d动漫一区二区三区| 国产老女人精品毛片久久| 久久久av网站| 欧美性色视频在线| 91香蕉视频导航| 国产精品麻豆欧美日韩ww| 蜜桃精品wwwmitaows| 国产精久久久| av在线之家电影网站| 天堂在线观看一卡二卡三卡四卡| 第四色亚洲色图| 在线观看男女av免费网址| 99香蕉久久| 美女www一区二区| 欧美日韩一区二区三区视频| 91精品国产麻豆国产自产在线| 亚洲成人免费看| 久久久久亚洲蜜桃| 亚洲视频在线一区二区| 色先锋aa成人| 韩剧1988免费观看全集| 国产系列第一页| 桃色一区二区| 九九视频精品免费| 亚洲人成电影网站色| 999在线观看视频| 三区四区电影在线观看| 国产激情在线| 黄色成人在线观看网站| 日韩精品视频无播放器在线看| 性史性dvd影片农村毛片| 不卡视频观看| jizz一区二区三区| av丝袜在线| 国产美女久久| 丝袜美腿一区二区三区动态图| 国产福利资源一区| 偷拍欧美精品| 成a人片亚洲日本久久| 伊人色综合久久天天| 国产亚洲综合久久| 成人免费a级片| 男人的天堂免费在线视频| 中文精品久久|