麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

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

揭秘SQL Server 2014有哪些新特性(1)-內存數據庫

2024-08-31 01:02:21
字體:
來源:轉載
供稿:網友
微軟SQL Server 2014提供了眾多激動人心的新功能,但其中最讓人期待的特性之一就是代號為” Hekaton”的內存數據庫了,內存數據庫特性并不是SQL Server的替代,而是適應時代的補充,現在SQL Server具備了將數據表完整存入內存的功能。那么今天我們就先來看看內存數據庫
 
 

簡介

   SQL Server 2014提供了眾多激動人心的新功能,但其中我想最讓人期待的特性之一就要算內存數據庫了。去年我再西雅圖參加SQL PASS Summit 2012的開幕式時,微軟就宣布了將在下一個SQL Server版本中附帶代號為Hekaton的內存數據庫引擎。現在隨著2014CTP1的到來,我們終于可以一窺其面貌。

內存數據庫

    在傳統的數據庫表中,由于磁盤的物理結構限制,表和索引的結構為B-Tree,這就使得該類索引在大并發的OLTP環境中顯得非常乏力,雖然有很多辦法來解決這類問題,比如說樂觀并發控制,應用程序緩存,分布式等。但成本依然會略高。而隨著這些年硬件的發展,現在服務器擁有幾百G內存并不罕見,此外由于NUMA架構的成熟,也消除了多CPU訪問內存的瓶頸問題,因此內存數據庫得以出現。

    內存的學名叫做Random Access Memory(RAM),因此如其特性一樣,是隨機訪問的,因此對于內存,對應的數據結構也會是Hash-Index,而并發的隔離方式也對應的變成了MVCC,因此內存數據庫可以在同樣的硬件資源下,Handle更多的并發和請求,并且不會被鎖阻塞,而SQL Server 2014集成了這個強大的功能,并不像Oracle的TimesTen需要額外付費,因此結合SSD AS Buffer Pool特性,所產生的效果將會非常值得期待。

SQL Server內存數據庫的表現形式

    在SQL Server的Hekaton引擎由兩部分組成:內存優化表和本地編譯存儲過程。雖然Hekaton集成進了關系數據庫引擎,但訪問他們的方法對于客戶端是透明的,這也意味著從客戶端應用程序的角度來看,并不會知道Hekaton引擎的存在。如圖1所示。

揭秘SQL Server 2014有哪些新特性(1)-內存數據庫

圖1.客戶端APP不會感知Hekaton引擎的存在

    首先內存優化表完全不會再存在鎖的概念(雖然之前的版本有快照隔離這個樂觀并發控制的概念,但快照隔離仍然需要在修改數據的時候加鎖),此外內存優化表Hash-Index結構使得隨機讀寫的速度大大提高,另外內存優化表可以設置為非持久內存優化表,從而也就沒有了日志(適合于ETL中間結果操作,但存在數據丟失的危險)

    下面我們來看創建一個內存優化表:

    首先,內存優化表需要數據庫中存在一個特殊的文件組,以供存儲內存優化表的CheckPoint文件,與傳統的mdf或ldf文件不同的是,該文件組是一個目錄而不是一個文件,因為CheckPoint文件只會附加,而不會修改,如圖2所示。

揭秘SQL Server 2014有哪些新特性(1)-內存數據庫

圖2.內存優化表所需的特殊文件組

我們再來看一下內存優化文件組的樣子,如圖3所示。

揭秘SQL Server 2014有哪些新特性(1)-內存數據庫

圖3.內存優化文件組

    有了文件組之后,接下來我們創建一個內存優化表,如圖4所示。

揭秘SQL Server 2014有哪些新特性(1)-內存數據庫

圖4.創建內存優化表

   目前SSMS還不支持UI界面創建內存優化表,因此只能通過T-SQL來創建內存優化表,如圖5所示。

揭秘SQL Server 2014有哪些新特性(1)-內存數據庫

圖5.使用代碼創建內存優化表

    當表創建好之后,就可以查詢數據了,值得注意的是,查詢內存優化表需要snapshot隔離等級或者hint,這個隔離等級與快照隔離是不同的,如圖6所示。

揭秘SQL Server 2014有哪些新特性(1)-內存數據庫

圖6.查詢內存優化表需要加提示

    此外,由創建表的語句可以看出,目前SQL Server 2014內存優化表的Hash Index只支持固定的Bucket大小,不支持動態分配Bucket大小,因此這里需要注意。

與內存數據庫不兼容的特性

    目前來說,數據庫鏡像和復制是無法與內存優化表兼容的,但AlwaysOn,日志傳送,備份還原是完整支持。

性能測試

   上面扯了一堆理論,大家可能都看郁悶了。下面我來做一個簡單的性能測試,來比對使用內存優化表+本地編譯存儲過程與傳統的B-Tree表進行對比,B-Tree表如圖7所示,內存優化表+本地編譯存儲過程如圖8所示。

揭秘SQL Server 2014有哪些新特性(1)-內存數據庫

圖7.傳統的B-Tree表

揭秘SQL Server 2014有哪些新特性(1)-內存數據庫

圖8.內存優化表+本地編譯存儲過程

   因此不難看出,內存優化表+本地編譯存儲過程有接近幾十倍的性能提升。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 未成年人在线观看 | 国产成视频在线观看 | 国产女同玩人妖 | 日本免费一区二区三区四区 | 久久影院免费观看 | 日本免费中文字幕 | 国产一级免费电影 | 欧美日韩在线播放 | 一级毛片免费高清视频 | 久久情爱网 | 午夜国内精品a一区二区桃色 | 色婷婷一区二区三区 | 精品成人免费一区二区在线播放 | 久久久久久久九九九九 | 欧美特一级片 | 国产精品一区免费在线观看 | 粉嫩av一区二区三区四区在线观看 | 成人羞羞视频在线观看免费 | 在线小视频国产 | 免费久久久| 国产精品高潮视频 | h视频免费观看 | 国产精品观看在线亚洲人成网 | 国产一级毛片高清 | 中文字幕免费在线观看视频 | 圆产精品久久久久久久久久久 | 欧美人一级淫片a免费播放 久久久久久久久91 国产99久久久久久免费看 | 欧美一区二区三区不卡免费观看 | 黄视频免费在线观看 | 国产精品剧情一区二区在线观看 | 久久久精品精品 | 亚洲精品一区二区三区在线看 | 毛片免费一区二区三区 | 欧美成人午夜一区二区三区 | 欧美激情区 | 羞羞答答视频 | 日韩精品a在线观看 | 日韩精品久久久久久久九岛 | 久久久久九九九女人毛片 | 日本68xxxx | 国产精品久久久久久影视 |