999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

列式數(shù)據(jù)庫Ver tica的特性分析

2011-02-27 05:42:42唐亞男
電腦與電信 2011年5期
關(guān)鍵詞:排序數(shù)據(jù)庫優(yōu)化

唐亞男

(亞信聯(lián)創(chuàng)科技(中國)有限公司,北京 100086)

1.前言

與以往常見的行式關(guān)系型數(shù)據(jù)庫不同,Vertica是一種基于列存儲(Column-Oriented)的數(shù)據(jù)庫體系結(jié)構(gòu),這種存儲機(jī)構(gòu)更適合在數(shù)據(jù)倉庫存儲和商業(yè)智能方面發(fā)揮特長。

常見的RDBMS都是面向行(Row-Oriented Database)存儲的,在對某一列匯總計(jì)算的時(shí)候幾乎不可避免的要進(jìn)行額外的I/O尋址掃描,而面向列存儲的數(shù)據(jù)庫能夠連續(xù)進(jìn)行I/O操作,減少了I/O開銷,從而達(dá)到數(shù)量級上的性能提升。同時(shí),Vertica支持海量并行存儲(MPP)架構(gòu),實(shí)現(xiàn)了完全無共享,因此擴(kuò)展容易,可以利用廉價(jià)的硬件來獲取高的性能,具有很高的性價(jià)比。

2.Vertica數(shù)據(jù)庫的體系結(jié)構(gòu)

如圖1,展示的是單節(jié)點(diǎn)上的Vertica的基本體系結(jié)構(gòu)。

圖1 體系結(jié)構(gòu)

作為關(guān)系型數(shù)據(jù)庫,Vertica的查詢SQL也是在前端被解析和優(yōu)化的。但與傳統(tǒng)的關(guān)系型數(shù)據(jù)庫有所不同,Vertica內(nèi)部是混合存儲的,包括兩種不同的存儲結(jié)構(gòu):寫優(yōu)化器(WOS)和讀優(yōu)化器(ROS)。

(1)寫優(yōu)化器WOS(W rite-Optim ized Store)

是位于主存儲器上的一個(gè)數(shù)據(jù)結(jié)構(gòu),用于有效的支持?jǐn)?shù)據(jù)插入和更新操作;數(shù)據(jù)的存放是無序的,非壓縮的。

(2)讀優(yōu)化器ROS(Read-Optimized Store)

是磁盤物理存儲,存放的是排序和壓縮后的數(shù)據(jù)庫大塊數(shù)據(jù),因此這里的查詢相比于WOS性能更好。

(3)Tuple Mover進(jìn)程

是Vertica內(nèi)部的一個(gè)進(jìn)程,定期的以大數(shù)據(jù)塊的形式把數(shù)據(jù)從WOS移到ROS,由于是對整個(gè)WOS操作,Tuple Mover一次能非常有效的排序很多記錄,最后批量把它們寫入磁盤。

在Vertica內(nèi)部,不論是WOS還是ROS都是按列存儲的。

舉個(gè)例子:

表Sales包含字段(order-id、product-id、sales-date、customerid、sales-price),Vertica會存儲至少五個(gè)不同的列(邏輯上展示給用戶的是一張表)。通過分開存儲這些列,Vertica能夠只返回用戶特定查詢的列。

在Vertica中,每一列可以存在于不同的Projections中,如可以給Sales表建立兩個(gè)Projection:其中sales-prices包含order-id、product-id、sales-date、sale-price四 列 , 另 一 個(gè)salescustomers包含了order-id、product-id、customer-id三列。每個(gè)projection都可以指定單獨(dú)的排序,例如:命名為salescustomers的projection可能會按custmoer_id排序存儲,這對于“統(tǒng)計(jì)某個(gè)客戶訂購了哪些產(chǎn)品”這類查詢就非常有效。借助于這種存儲方式,對每個(gè)查詢Sql,Vertica的Database Designer工具會自動使用最優(yōu)的projections,從而能很快地響應(yīng)用戶的請求。

當(dāng)然,這種多個(gè)projections冗余存儲的方式會占用更多的磁盤空間,對此,Vertica也給出了很好的解決方案。高效的列壓縮模式能夠最多把數(shù)據(jù)壓縮掉90%,不但大大減少了磁盤的使用,同時(shí)由于Vertica能夠直接處理壓縮數(shù)據(jù),這樣查詢性能和查詢時(shí)的CPU負(fù)載都大大降低了。

3.Vertica的關(guān)鍵特性分析

在數(shù)據(jù)倉庫領(lǐng)域,人們會更多的關(guān)注數(shù)據(jù)庫的查詢性能。Vertica的查詢響應(yīng)受到多個(gè)因素的影響。

舉個(gè)簡單的例子,如上提到的Sales表,如果要計(jì)算出商品的平均銷售價(jià)格,可以用:

SELECT date,AVG(sales-price)FROM sales GROUPBY sales-date這樣的語句來實(shí)現(xiàn)。對于這樣的典型查詢語句,系統(tǒng)的主要開銷在磁盤訪問(disk I/O)和CPU處理兩個(gè)方面(分布式的情況下還需考慮網(wǎng)絡(luò)I/O),通常情況下disk I/O和CPU計(jì)算是同時(shí)進(jìn)行的,這樣我們不難得出結(jié)論:如果disk I/O用了D秒,CPU處理用了C秒,則整個(gè)查詢的響應(yīng)時(shí)間是D和C兩者中的最大值。

理解了以上一般SQL語句的處理過程,我們就可以進(jìn)一步的分析一下Vertica數(shù)據(jù)庫在查詢方面的優(yōu)勢在哪里。

3.1 列定向(Column-orientation)

由于大多數(shù)的查詢都是要從磁盤讀取數(shù)據(jù),因此可以說disk I/O在很大程度上決定了一個(gè)查詢的最終響應(yīng)時(shí)間。從上面的示例可以看出,Vertica只需要讀取sales-date,sales-price兩列,而行式存儲的數(shù)據(jù)庫則要讀取全部的5列,列式數(shù)據(jù)庫的優(yōu)勢不言而喻。

3.2 壓縮機(jī)制(Aggressive Compression)

在數(shù)據(jù)存儲方面,Vertica利用內(nèi)部的特定算法對數(shù)據(jù)進(jìn)行壓縮處理。這樣的機(jī)制會大大減少disk I/O的時(shí)間(D),同時(shí)由于Vertica對掃描和聚合等操作也在內(nèi)部進(jìn)行了優(yōu)化,可以直接處理壓縮后的數(shù)據(jù),這樣CPU的工作負(fù)載(C)也減少了。如上例中的AVG聚合函數(shù),Vertica是不需要將壓縮數(shù)據(jù)先做類似解壓這種處理的,因此查詢性能得到優(yōu)化。

3.3 讀優(yōu)化存儲(Read-Optim ized Storage)

Vertica的數(shù)據(jù)庫存儲容器ROSContainer專門為讀操作進(jìn)行了優(yōu)化設(shè)計(jì),且其中的數(shù)據(jù)是經(jīng)過了排序和壓縮處理的,即每個(gè)磁盤頁上不會有空白空間,而傳統(tǒng)的數(shù)據(jù)庫一般會在每頁上預(yù)留空間以便日后的insert操作來使用。

3.4 多種排序方式的冗余存儲

為了高可用性和備份恢復(fù)的需要,Vertica會按照不同的排序方式對數(shù)據(jù)做冗余存儲,這不但避免了大量的日志操作,也為查詢帶來了便利。Vertica的查詢優(yōu)化器會自動選擇最優(yōu)的排序方式來完成特定的查詢。

3.5 并行無共享設(shè)計(jì)

Vertica支持完全無共享海量并行存儲(MPP)架構(gòu),隨著硬件Server的增加,多個(gè)CPU并行處理,性能也可以得到線性的擴(kuò)展,這樣用戶使用廉價(jià)的硬件就可以獲得較高的性能改善。

3.6 其他管理特征

除了有優(yōu)越的性能以外,Vertica在數(shù)據(jù)庫管理方面也進(jìn)行了非常人性化的設(shè)計(jì)。

Vertica Database Designer是一個(gè)界面化的日常管理工具,并且能為用戶作出詳盡的DB層物理設(shè)計(jì)方案,大大減少了日后的性能調(diào)優(yōu)方面的開銷。

Vertica通過K-Safety值的設(shè)置,完成了數(shù)據(jù)庫的備份恢復(fù)機(jī)制,并保證了高可用性。

對于數(shù)據(jù)庫中的每個(gè)表每個(gè)列,Vertica都會在至少K+1個(gè)節(jié)點(diǎn)上存儲,如果有K個(gè)節(jié)點(diǎn)宕機(jī),依然能夠保證Vertica DB是完整可用的;當(dāng)損壞的節(jié)點(diǎn)恢復(fù)時(shí),Vertica自動完成節(jié)點(diǎn)間的熱交換,把其他節(jié)點(diǎn)上的正確數(shù)據(jù)恢復(fù)過來。通過這種機(jī)制也保證了Vertcia庫的節(jié)點(diǎn)數(shù)目可以自由伸縮而不會影響到數(shù)據(jù)庫的操作。

Vertica通過兩種技術(shù)來實(shí)現(xiàn)在線的持續(xù)數(shù)據(jù)裝載而不會影響到數(shù)據(jù)庫的訪問。

首先,Vertica通常運(yùn)行在快照隔離(Snapshot Isolation)模式下,該模式下查詢讀取的是最近的一致的數(shù)據(jù)庫快照,這個(gè)快照是不能被并發(fā)的update或delete操作更改的,因此查詢操作也不需要占用鎖,這種方式保證了數(shù)據(jù)裝載(insert)和其他查詢能互不干擾。另外,Vertica可以把數(shù)據(jù)直接裝載到WOS結(jié)構(gòu)中,WOS中的數(shù)據(jù)是不排序或索引的,所以裝載速度會很快,然后再由Tuple Mover進(jìn)程在后臺把數(shù)據(jù)移入ROS中,由于TupleMover的操作是大塊讀取(bulk-load)的,所以性能也很好。

4.結(jié)語

綜上所述,Vertica在設(shè)計(jì)上充分考慮和利用了列式存儲的優(yōu)越性,使數(shù)據(jù)庫的整體性能、易用性及可靠性方面都達(dá)到了較高的水平,同時(shí)Vertica提供了大量的管理監(jiān)控工具及APIs接口等,給使用者帶來了方便,因此這幾年的發(fā)展速度也很快,值得我們關(guān)注。

[1]程瑩.云計(jì)算時(shí)代的數(shù)據(jù)庫研究[J],電信技術(shù),2011,(01).

[2]尹東方.列式存儲在知識發(fā)現(xiàn)系統(tǒng)中的應(yīng)用與實(shí)現(xiàn)[D].中國優(yōu)秀碩士學(xué)位論文全文數(shù)據(jù)庫,2010,(07).

[3]石菲.列式數(shù)據(jù)庫持續(xù)突破[J].中國計(jì)算機(jī)用戶,2009,(09).

[4]Pedro Furtado.Model and procedure for performance and availability-w ise parallel warehouses,Distributed and Parallel Databases,2009,(02).

[5]Zack Jourdan;R.Kelly Rainer;Thomas E.Marshall.Business Intelligence:An Analysis of the Literature,Information Systems Management,2008,(03).

[6]Willian H.Inmon.Building the Data Warehouse,4 edition,Wiley Education,2005:327-389.

猜你喜歡
排序數(shù)據(jù)庫優(yōu)化
超限高層建筑結(jié)構(gòu)設(shè)計(jì)與優(yōu)化思考
排序不等式
民用建筑防煙排煙設(shè)計(jì)優(yōu)化探討
關(guān)于優(yōu)化消防安全告知承諾的一些思考
一道優(yōu)化題的幾何解法
恐怖排序
節(jié)日排序
刻舟求劍
兒童繪本(2018年5期)2018-04-12 16:45:32
數(shù)據(jù)庫
數(shù)據(jù)庫
主站蜘蛛池模板: 国产菊爆视频在线观看| 看看一级毛片| 国产精品成人一区二区| 另类欧美日韩| 国内老司机精品视频在线播出| 色有码无码视频| 超清人妻系列无码专区| 超清无码一区二区三区| 成人午夜久久| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 亚洲人成网站色7777| 伊人天堂网| 男女精品视频| 专干老肥熟女视频网站| 老色鬼欧美精品| 有专无码视频| 不卡无码h在线观看| 98超碰在线观看| 亚洲欧美日韩动漫| 亚洲一区二区在线无码| 国产黄网永久免费| 中文成人无码国产亚洲| 伊人精品视频免费在线| 五月激情综合网| 思思99思思久久最新精品| 亚洲精品中文字幕无乱码| 国产综合色在线视频播放线视| 91免费片| 五月婷婷综合色| 91视频国产高清| 中文字幕亚洲专区第19页| 日韩精品一区二区三区大桥未久 | 五月六月伊人狠狠丁香网| 99精品国产自在现线观看| 亚洲精品另类| 国产精品福利尤物youwu| 国产农村妇女精品一二区| 久久99精品久久久久纯品| 亚洲无码高清视频在线观看| av在线人妻熟妇| 国产91高跟丝袜| 亚洲国产午夜精华无码福利| 日本爱爱精品一区二区| 亚洲欧洲日本在线| 欧美性色综合网| 九九视频在线免费观看| 国产超薄肉色丝袜网站| 四虎亚洲国产成人久久精品| 免费a级毛片视频| 欧美日韩国产高清一区二区三区| 国产精品久久久久久影院| 少妇露出福利视频| 国产免费黄| 一级毛片免费播放视频| 国产精品成人观看视频国产| 精品乱码久久久久久久| 免费中文字幕在在线不卡| 大学生久久香蕉国产线观看| 日本黄色不卡视频| 精品乱码久久久久久久| 精品久久久久久成人AV| 亚洲成人黄色网址| 亚洲综合久久一本伊一区| 欧美成人亚洲综合精品欧美激情| 欧美一级高清片欧美国产欧美| www成人国产在线观看网站| 白浆视频在线观看| 又猛又黄又爽无遮挡的视频网站 | 亚洲乱码精品久久久久..| 国产va欧美va在线观看| 国产91麻豆免费观看| 欧美午夜视频在线| 亚洲 日韩 激情 无码 中出| 亚洲色欲色欲www在线观看| 亚洲中文字幕日产无码2021| 丰满人妻一区二区三区视频| 色婷婷成人网| 国产真实乱子伦精品视手机观看 | 亚洲经典在线中文字幕| 香蕉网久久| 国产成人区在线观看视频| 国产福利在线观看精品|