亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于分片的高維稀疏數(shù)據(jù)存儲(chǔ)模式優(yōu)化研究

        2013-07-20 07:55:36邵慧萌舒紅平鄭皎凌許源平文立玉
        關(guān)鍵詞:分片存儲(chǔ)空間列式

        邵慧萌,舒紅平,鄭皎凌,許源平,文立玉

        成都信息工程學(xué)院 軟件工程系,成都 610225

        基于分片的高維稀疏數(shù)據(jù)存儲(chǔ)模式優(yōu)化研究

        邵慧萌,舒紅平,鄭皎凌,許源平,文立玉

        成都信息工程學(xué)院 軟件工程系,成都 610225

        1 引言

        1.1 問(wèn)題的提出

        本問(wèn)題來(lái)源于東汽工模具分廠質(zhì)量管理系統(tǒng),下面通過(guò)該系統(tǒng)中的“零件質(zhì)量表”說(shuō)明本文將要解決的問(wèn)題。

        在該工模具分廠零件質(zhì)量管理系統(tǒng)(數(shù)據(jù)庫(kù)采用Oracle數(shù)據(jù)庫(kù))的開(kāi)發(fā)維護(hù)過(guò)程中,發(fā)現(xiàn)存在例如“零件質(zhì)量表”的一類關(guān)系表。其中id為唯一主鍵,代表零件批次的編號(hào);除id外的其他各列,分別為某一批次的某一種不合格原因,其中某一批次的零件的不合格原因有多種。“零件質(zhì)量表”中數(shù)據(jù)如表1所示。

        “零件質(zhì)量表”除主鍵id外還有15個(gè)屬性列(維度),共有53 579條記錄,具有維度較高、數(shù)據(jù)量較大的特點(diǎn)。

        由于僅在主鍵id上建立了索引,在執(zhí)行查詢操作時(shí),Oracle將讀取表中所有的行,并檢查每一行是否滿足語(yǔ)句的WHERE限制條件。此時(shí),Oracle順序地讀取分配給表的每個(gè)數(shù)據(jù)塊,直到讀到表的最高水線處(High Water Mark,HWM,Oracle中用于標(biāo)識(shí)表的最后一個(gè)數(shù)據(jù)塊),即對(duì)整個(gè)關(guān)系表進(jìn)行全表掃描(Full Table Scan)[1-2]。對(duì)該表進(jìn)行的全表掃描將耗費(fèi)大量的磁盤讀寫(I/O),增大了系統(tǒng)開(kāi)銷,影響最終的查詢效率[3]。

        表1 零件質(zhì)量表

        另外,由于同一批次的零件只有一個(gè)或多個(gè)不合格原因,所以“零件質(zhì)量表”的不合格原因?qū)傩粤兄械膬?nèi)容是稀疏的。由于大量的空白數(shù)據(jù)的存在,Oracle數(shù)據(jù)庫(kù)對(duì)其進(jìn)行存儲(chǔ)時(shí)仍占用了固定的存儲(chǔ)空間,造成存儲(chǔ)空間的浪費(fèi)。

        為了后文表述的方便,這里將“零件質(zhì)量表”形式化地表述為下列樣式:

        其中id為關(guān)系表T_fact的唯一主鍵,cοli(1≤i≤n)為T_fact的其他屬性,并滿足如下特定:

        (1)n相對(duì)較大(例如n≥10);

        (2)cοli(1≤i≤n)列中對(duì)應(yīng)數(shù)據(jù)有大量空值存在。

        在“零件質(zhì)量表”中,cοl1,cοl2,…,cοln對(duì)應(yīng)各個(gè)不合格原因?qū)傩粤小1疚乃玫降姆?hào)如表2所示。

        表2 本文所用到的符號(hào)

        1.2 問(wèn)題的解決方案

        針對(duì)1.1節(jié)提出的問(wèn)題,采用列式存儲(chǔ)數(shù)據(jù)庫(kù)的思想,對(duì)表進(jìn)行了分片和過(guò)濾空值的操作。對(duì)原表進(jìn)行改造后,降低了磁盤讀寫(I/O),減小了系統(tǒng)開(kāi)銷,使查詢效率得到提高;同時(shí)過(guò)濾空值后達(dá)到節(jié)省磁盤空間的目的。

        2 相關(guān)工作

        傳統(tǒng)行存儲(chǔ)數(shù)據(jù)庫(kù)主要應(yīng)用于更新密集型的OLTP應(yīng)用中。在行存儲(chǔ)數(shù)據(jù)庫(kù)中,讀某個(gè)列必須讀入整行,這樣就在無(wú)形之中增加了I/O開(kāi)銷;每一行的數(shù)據(jù)寬度不等長(zhǎng),修改數(shù)據(jù)可能導(dǎo)致行遷移[4],并且在行存儲(chǔ)數(shù)據(jù)庫(kù)中,行遷移不可避免,通過(guò)增加每個(gè)塊的大小可以減少行遷移的可能性,但也會(huì)造成更大的空間浪費(fèi);在行數(shù)據(jù)較多的情況下,當(dāng)執(zhí)行insert操作插入數(shù)據(jù)時(shí),可能導(dǎo)致行鏈接[5-6]。

        隨著企業(yè)信息化程度的提高,只讀的OLAP查詢等分析型數(shù)據(jù)庫(kù)應(yīng)用的有著不同于傳統(tǒng)數(shù)據(jù)庫(kù)應(yīng)用的新需求,對(duì)高性能查詢處理有更高的要求。列存儲(chǔ)數(shù)據(jù)模型如Sybase IQ、C-Store和MonetDB已經(jīng)被證明在只讀的數(shù)據(jù)倉(cāng)庫(kù)查詢處理中具有非常好的性能[7-9]。很多實(shí)驗(yàn)也表明對(duì)于高選擇率、高投影率和大量聚集計(jì)算的OLAP查詢,列存儲(chǔ)的性能大大好于過(guò)行存儲(chǔ)[10-11]。

        以國(guó)內(nèi)市場(chǎng)占有率較高的列式存儲(chǔ)數(shù)據(jù)庫(kù)GBase 8a為例,它具有列式存儲(chǔ)數(shù)據(jù)庫(kù)查詢響應(yīng)時(shí)間短,不讀取無(wú)效數(shù)據(jù)、高壓縮比等優(yōu)點(diǎn)。它能夠降低I/O開(kāi)銷,同時(shí)提高每次I/O的效率,大大提高查詢性能。查詢語(yǔ)句只從磁盤上讀取所需要的列,其他列的數(shù)據(jù)是不需要讀取的。例如,有兩張表,每張表100 GB且有100列,大多數(shù)查詢只關(guān)注幾個(gè)列,采用列存儲(chǔ),不需要像行存數(shù)據(jù)庫(kù)一樣,將整行數(shù)據(jù)取出,只取出需要的列。磁盤I/O是行存儲(chǔ)的1/10或更少,查詢響應(yīng)時(shí)間提高10倍以上。另外它的壓縮比可以達(dá)到5~20倍以上,數(shù)據(jù)占有空間降低到傳統(tǒng)數(shù)據(jù)庫(kù)的1/10,節(jié)省了存儲(chǔ)設(shè)備的開(kāi)銷[12]。

        然而由于傳統(tǒng)行存儲(chǔ)數(shù)據(jù)庫(kù)與列存儲(chǔ)數(shù)據(jù)庫(kù)的底層物理存儲(chǔ)模式不同,使得用戶很難在同一數(shù)據(jù)庫(kù)系統(tǒng)中根據(jù)需要自由轉(zhuǎn)換兩種存儲(chǔ)模式來(lái)存儲(chǔ)數(shù)據(jù)及執(zhí)行查詢。同時(shí)企業(yè)同時(shí)部署行存儲(chǔ)和列存儲(chǔ)兩種數(shù)據(jù)庫(kù)系統(tǒng)也無(wú)疑增大了部署和維護(hù)開(kāi)銷,對(duì)于絕大部分企業(yè)都是無(wú)法承受的[13]。本文基于行存儲(chǔ)數(shù)據(jù)庫(kù),采用列式存儲(chǔ)數(shù)據(jù)庫(kù)的思想,對(duì)原始表進(jìn)行了分片和過(guò)濾空值的操作,達(dá)到降低磁盤讀寫(I/O),減小系統(tǒng)開(kāi)銷,提高查詢效率和節(jié)省磁盤空間的目的。

        3 數(shù)據(jù)表的分片設(shè)計(jì)及實(shí)現(xiàn)

        表T_fact具有多個(gè)屬性列(n≥10),直接對(duì)其執(zhí)行查詢操作(例如下面的sql語(yǔ)句)時(shí),需要對(duì)整個(gè)數(shù)據(jù)表進(jìn)行掃描,增大了系統(tǒng)開(kāi)銷,影響最終的查詢效率[14]。

        圖1 對(duì)“零件質(zhì)量表”進(jìn)行分片后表結(jié)構(gòu)的變化

        由此可知,每次查詢所占用的I/O空間數(shù)據(jù)塊為((n+1)×d)/D×t,其中d為平均每個(gè)屬性列所占字節(jié)數(shù)。

        在列式存儲(chǔ)[15]數(shù)據(jù)庫(kù)中,數(shù)據(jù)庫(kù)首先在各屬性列上執(zhí)行選擇操作,然后將各組的結(jié)果進(jìn)行連接,最后根據(jù)需要進(jìn)行分組、排序等操作后得到最終查詢結(jié)果,這樣就避免了對(duì)全表進(jìn)行掃描?;诹惺酱鎯?chǔ)數(shù)據(jù)庫(kù)的思想,對(duì)表進(jìn)行了分片操作。

        下面,舉一個(gè)例子進(jìn)行說(shuō)明:

        例1如圖1所示,將“零件質(zhì)量表”垂直分片。將“零件質(zhì)量表”分為“零件質(zhì)量表_刻線問(wèn)題表”,…,“零件質(zhì)量表_物件丟失表”,“零件質(zhì)量表_其他原因表”,“零件質(zhì)量表_報(bào)廢表”,共n張表。其中為了程序設(shè)計(jì)的方便,每個(gè)列表的表名是由原始表表名和當(dāng)前列的列名組成的。每個(gè)表中包含有“零件質(zhì)量表”的id及cοli(1≤i≤n)共兩個(gè)屬性列,其中id為“零件質(zhì)量表”的外鍵,cοli(1≤i≤n)為該元組在“零件質(zhì)量表”中cοli(1≤i≤n)列上的取值。

        接下來(lái),將原表中的數(shù)據(jù)導(dǎo)入到分片之后的表中。由于原始除主鍵id列外,其他各列都存在著大量的空值數(shù)據(jù),所以有必要對(duì)原表中的數(shù)據(jù)進(jìn)行處理,避免導(dǎo)入大量空值數(shù)據(jù)。在這里,采取直接將空值過(guò)濾的方法,通過(guò)執(zhí)行如下sql語(yǔ)句,將原始表中的非空數(shù)據(jù)導(dǎo)入到對(duì)應(yīng)的列表中。

        例2通過(guò)分析,通過(guò)如下sql語(yǔ)句,將原始表“零件質(zhì)量表”中的非空數(shù)據(jù)導(dǎo)入到各個(gè)列表中。

        對(duì)空值進(jìn)行過(guò)濾后,使得每個(gè)列表中沒(méi)有空值數(shù)據(jù)的存在。效果如圖2所示。

        4 存儲(chǔ)空間率分析

        通過(guò)以上處理,大大減少了數(shù)據(jù)所占用的存儲(chǔ)空間。下面給出處理過(guò)之后與原始表所占用存儲(chǔ)空間的比率:

        假設(shè)bc_cοl為原始表T_fact平均每列空值的個(gè)數(shù),d_cοl為平均列寬,則存儲(chǔ)空間比可以簡(jiǎn)化為:

        圖2 對(duì)“零件質(zhì)量表”進(jìn)行分片、空值過(guò)濾后,表中數(shù)據(jù)的變化情況

        例3在關(guān)系表“零件質(zhì)量表”中,該表的記錄數(shù)rc= 3 579,主鍵id列寬d_id=32 Byte,其余列寬d_cοl=512 Byte,該表每列空白記錄數(shù)bc_cοli(1≤i≤15)分別為1 954,2 148,1 113,1 647,751,944,1 031,641,1 019,2 526,666,115,1 787,574,2 871。

        在本例中,原始表所占存儲(chǔ)空間為3 579×(32+15× 512)=27 601 248 Byte≈28 MB,分片之后所占用存儲(chǔ)空間為(15×3 579-(1 954+2 148+1 113+1 647+751+944+1 031+ 641+1 019+2 526+666+115+1 787+574+2 871))×(32+ 512)=18 440 512 Byte≈18 MB。通過(guò)計(jì)算,得出該表的存儲(chǔ)空間比為18 440 512/27 601 248≈67%。

        5 基于分片存儲(chǔ)模式的查詢實(shí)現(xiàn)

        將表進(jìn)行分片之后,sql語(yǔ)句可以等價(jià)轉(zhuǎn)化為:

        其中原有查詢的關(guān)系代數(shù)形式:

        轉(zhuǎn)化為如下形式:

        該sql語(yǔ)句執(zhí)行過(guò)程中,所需要的I/O數(shù)據(jù)塊為:

        其中,p=3為本次查詢所涉及到的表的個(gè)數(shù),D為一個(gè)數(shù)據(jù)塊的大小(Byte),t為關(guān)系表T_fact的元組數(shù),d_id為屬性列id所占的空間(Byte),d_cοlk為每個(gè)屬性列所占用的字節(jié)數(shù)。

        假設(shè)各個(gè)列寬都為d,分片后每個(gè)列表又存儲(chǔ)了T_fact的主鍵id,因此所涉及的列數(shù)最大為2×p,分片后查詢語(yǔ)句所需I/O數(shù)據(jù)塊個(gè)數(shù)可簡(jiǎn)化為(2×p×d)/D×t;而針對(duì)原表的查詢語(yǔ)句所占空間為((n+1)×d)/D×t。當(dāng)2×p小于n+1時(shí),以下算式成立:(2×p×d)/D×t<((n+1)×d)/D×t。

        例4根據(jù)一定的條件,從數(shù)據(jù)庫(kù)中選出三列。其中sql語(yǔ)句1直接從原有“零件質(zhì)量表”中獲取數(shù)據(jù);通過(guò)對(duì)關(guān)系表進(jìn)行分片,sql語(yǔ)句2從三個(gè)列表“零件質(zhì)量表_刻線問(wèn)題表”、“零件質(zhì)量表_零件丟失表”和“零件質(zhì)量表_其他原因表”中獲得數(shù)據(jù)。

        sql語(yǔ)句1:

        select t.刻線問(wèn)題,t.零件丟失,t.其他原因

        from零件質(zhì)量表 t

        where t.id>4 600 and t.id<10 001;

        sql語(yǔ)句2:

        select t1.刻線問(wèn)題,t2.零件丟失,t3.其他原因

        from零件質(zhì)量表_刻線問(wèn)題表t1,

        零件質(zhì)量表_零件丟失表t2,

        零件質(zhì)量表_其他原因表t3

        where t1.id=t2.id(+)and t1.id=t3.id(+)and

        t1.id>4 600 and t1.id<10 001;

        其中,查詢所涉及到的表的個(gè)數(shù)p=3,id列寬d_id= 32 Byte,其余各列列寬d_cοl=512 Byte,表中記錄條數(shù)為t= 53 579,數(shù)據(jù)塊大小D=8 192 Byte。代入以上公式得,原始表對(duì)應(yīng)的查詢所需I/O塊個(gè)數(shù)為:53 579×(15×512+32)/ 8 192=50 440,分片后對(duì)應(yīng)的查詢語(yǔ)句所需I/O塊個(gè)數(shù)為53 579×(3×(512+32))/8 192=10 674。

        由于在該方法中只對(duì)有限的幾個(gè)屬性列表進(jìn)行掃描,避免了對(duì)具有n個(gè)屬性列的關(guān)系表T_fact進(jìn)行全表掃描,降低了整個(gè)查詢I/O,從而提高了性能。并且由上式可知,當(dāng)關(guān)系表的列數(shù)越多、查詢所涉及的表的個(gè)數(shù)越少,就越能夠提高查詢性能。

        6 實(shí)驗(yàn)結(jié)果與分析

        6.1 存儲(chǔ)空間分析

        6.1.1 理論值分析

        在對(duì)該集團(tuán)公司工模具分廠的相關(guān)關(guān)系表進(jìn)行改造后,占用的磁盤存儲(chǔ)空間變小,查詢所需要的I/O數(shù)據(jù)塊減少,達(dá)到了實(shí)驗(yàn)的預(yù)期效果。

        首先分析關(guān)系表占用存儲(chǔ)空間,通過(guò)0分析和參照例3的計(jì)算步驟,隨機(jī)抽取4張關(guān)系表,計(jì)算得出了在改造前后所占用的理論存儲(chǔ)空間大小(KB),如圖3所示。

        圖3 對(duì)表進(jìn)行改造后,理論存儲(chǔ)空間大小對(duì)比

        從圖3中可以看出,對(duì)原始表進(jìn)行改造后,其所占理論存儲(chǔ)空間有了明顯的減少,改造前后的存儲(chǔ)空間比取決于存儲(chǔ)空間的比率R。

        6.1.2 實(shí)際值分析

        下面通過(guò)執(zhí)行如下sql語(yǔ)句來(lái)查看Oracle為原始表實(shí)際分配存儲(chǔ)空間大小(KB),其中本機(jī)Oracle版本為10 g Release 2(10.2.0.2)64位。其中user_segments視圖存儲(chǔ)了DBMS為每個(gè)表分配的存儲(chǔ)空間,where語(yǔ)句限定要查詢的表。

        通過(guò)執(zhí)行如下sql得到分片后,所有列表占用的存儲(chǔ)空間大?。↘B)總和。其中下劃線在Oracle中為特殊字符,需要用ESCAPE關(guān)鍵字轉(zhuǎn)義。

        得到原始表“零件質(zhì)量表”占用存儲(chǔ)空間大小為15 360 KB,分片后所有列表占用的存儲(chǔ)空間大小總和為4 288 KB。通過(guò)對(duì)上面隨機(jī)抽取的4張關(guān)系表進(jìn)行執(zhí)行sql語(yǔ)句,得到查詢結(jié)果如圖4所示。

        圖4 對(duì)表進(jìn)行改造后,實(shí)際存儲(chǔ)空間大小對(duì)比

        如圖4所示,由于Oracle默認(rèn)為4張?jiān)急矸峙淞送瑯拥拇鎯?chǔ)空間15 360 KB,實(shí)際值與理論值出現(xiàn)偏差;如理論分析相同,在對(duì)表進(jìn)行分片后所需要的實(shí)際存儲(chǔ)空間大大減小。

        6.2 查詢所需I/O數(shù)據(jù)塊數(shù)量分析

        根據(jù)分析,在對(duì)分片后的關(guān)系表進(jìn)行查詢操作時(shí),I/O所需數(shù)據(jù)塊的個(gè)數(shù)隨著查詢所涉及關(guān)系表個(gè)數(shù)的增加而增加;而在對(duì)原關(guān)系表進(jìn)行的查詢操作中,所涉及關(guān)系表的個(gè)數(shù)與所需I/O數(shù)據(jù)塊個(gè)數(shù)無(wú)關(guān)。從圖5可以看出,查詢所涉及的關(guān)系表的個(gè)數(shù)與所需I/O數(shù)據(jù)塊個(gè)數(shù)的關(guān)系(橫坐標(biāo)為查詢所涉及表的個(gè)數(shù))。與例4的執(zhí)行步驟一樣,4次查詢操作都是對(duì)同一個(gè)關(guān)系表“零件質(zhì)量表”進(jìn)行原始表查詢和分片查詢。

        圖5 查詢所涉及關(guān)系表的個(gè)數(shù),對(duì)數(shù)據(jù)塊個(gè)數(shù)的影響

        另外,圖5也反應(yīng)了查詢所需數(shù)據(jù)塊個(gè)數(shù)與所涉及關(guān)系表的個(gè)數(shù)的關(guān)系??梢钥闯觯趯?duì)原始表進(jìn)行查詢時(shí),無(wú)論查詢所涉及表的個(gè)數(shù)是多少,I/O數(shù)據(jù)塊的數(shù)量始終都是50 440。而對(duì)表進(jìn)行分片后,查詢所需I/O數(shù)據(jù)塊的個(gè)數(shù)隨著涉及表的個(gè)數(shù)的增加而增加,呈現(xiàn)出遞增的趨勢(shì),并且在涉及關(guān)系表個(gè)數(shù)很少的情況下可以達(dá)到理想的I/O開(kāi)銷。

        7 結(jié)束語(yǔ)

        在實(shí)驗(yàn)中,采用列式存儲(chǔ)數(shù)據(jù)庫(kù)的思想,對(duì)表進(jìn)行了分片和過(guò)濾空值的操作。從實(shí)驗(yàn)結(jié)果中可以發(fā)現(xiàn),在對(duì)原表進(jìn)行改造后,達(dá)到了減少查詢所需要的I/O數(shù)據(jù)塊的個(gè)數(shù),降低磁盤讀寫(I/O),減小系統(tǒng)開(kāi)銷的目的,使查詢效率得到提高。同時(shí)在對(duì)空值進(jìn)行過(guò)濾后,顯著降低了磁盤占用空間。

        另外,在改造后的列表中有相當(dāng)多的重復(fù)數(shù)據(jù)的存在,在下一步實(shí)驗(yàn)中將采用壓縮編碼技術(shù)使存儲(chǔ)空間壓縮比更加理想。

        [1]周志德.Oralce數(shù)據(jù)庫(kù)的SQL查詢優(yōu)化研究[J].計(jì)算機(jī)與數(shù)字工程,2010(11):173-178.

        [2]Halverson A,Bechmann J.A comparison of c.store and row. store in a common framework[C]//Proc of the 32nd Int Conf on Very Large Databases(VLDB),2006.

        [3]劉博.Oracle數(shù)據(jù)庫(kù)性能調(diào)整與優(yōu)化[D].大連:大連理工大學(xué),2007.

        [4]張仁惠.消除行遷移與Oracle數(shù)據(jù)庫(kù)性能調(diào)優(yōu)[J].科技信息:科學(xué)教研,2007(33).

        [5]蘇大威,張樂(lè).基于Oracle數(shù)據(jù)庫(kù)開(kāi)發(fā)系統(tǒng)的物理設(shè)計(jì)優(yōu)化策略[J].計(jì)算機(jī)工程,2002(2).

        [6]巢子杰.Oracle數(shù)據(jù)庫(kù)優(yōu)化探究[J].軟件導(dǎo)刊,2010(2):142-144.

        [7]Sybase IQ[EB/OL].[2012-11-24].http://www.sybase.com/products/datawarehousing/sybaseiq.

        [8] C-Store[EB/OL].[2012-11-25].http://db.csail.mit.edu/projects/cstore/.

        [9]MonetDB[EB/OL].[2012-11-25].http://www.monetdb.org/Home.

        [10]李超,張明博,邢春曉,等.列存儲(chǔ)數(shù)據(jù)庫(kù)關(guān)鍵技術(shù)綜述[J].計(jì)算機(jī)科學(xué),2010(12).

        [11]王珊,肖艷芹,劉大為,等.內(nèi)存數(shù)據(jù)庫(kù)關(guān)鍵技術(shù)研究[J].計(jì)算機(jī)應(yīng)用,2007(10):2353-2357.

        [12]南大通用.GBase 8a新型列存儲(chǔ)分析型數(shù)據(jù)庫(kù)產(chǎn)品介紹[EB/ OL].[2012-11-25].http://www.gbase.cn/cp-8a.html.

        [13]于利勝,張延松,王珊,等.基于行存儲(chǔ)模型的模擬列存儲(chǔ)策略研究[J].計(jì)算機(jī)研究與發(fā)展,2010(5):878-885.

        [14]宋彩霞,路新春.Oracle數(shù)據(jù)庫(kù)基于索引SQL優(yōu)化方法的研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2004(12):2327-2330.

        [15]周軍鋒,田姍姍,藍(lán)國(guó)翔,等.TDCOL:列式存儲(chǔ)的XML關(guān)鍵字查詢處理策略[J].計(jì)算機(jī)科學(xué)與探索,2012,6(9):829-843.

        SHAO Huimeng,SHU Hongping,ZHENG Jiaoling,XU Yuanping,WEN Liyu

        Department of Software Engineering,Chengdu University of Information Technology,Chengdu 610225,China

        In large databases,empty fields in high dimensional sparse table may occupy a large amount of storage space.To deal with this problem,a slicing based database structure,which simulates the principle of column-store database in traditional rowstore database,is designed.By analyzing on testing results,the storage space is decreased about 27.42%lower than the original model.The number of I/O data block is reduced to 35.27%when five fields of high-dimensional sparse data are queried,and 28.22%when four fields are selected.There will be a further reduction when the number of fields reduces.Therefore the accessing efficiency for database is improved.

        high-dimensional;sparse data;column-store database

        針對(duì)大型數(shù)據(jù)庫(kù)中高維稀疏關(guān)系表空字段對(duì)存儲(chǔ)空間的占用問(wèn)題,通過(guò)利用傳統(tǒng)行存儲(chǔ)數(shù)據(jù)庫(kù)模擬列式存儲(chǔ)數(shù)據(jù)庫(kù)的工作原理,設(shè)計(jì)了一種基于分片的數(shù)據(jù)庫(kù)結(jié)構(gòu)。通過(guò)實(shí)驗(yàn)分析,數(shù)據(jù)庫(kù)存儲(chǔ)空間比原始模式降低了27.42%左右。在對(duì)高維稀疏數(shù)據(jù)中五個(gè)字段進(jìn)行查詢時(shí),I/O數(shù)據(jù)塊個(gè)數(shù)降低至原始模式的35.27%,對(duì)高維稀疏數(shù)據(jù)中四個(gè)字段進(jìn)行查詢時(shí),I/O數(shù)據(jù)塊個(gè)數(shù)降低至原始模式的28.22%,而隨著字段的減少I/O數(shù)據(jù)塊仍會(huì)進(jìn)一步減少,從而提高了數(shù)據(jù)庫(kù)的訪問(wèn)效率。

        高維;稀疏數(shù)據(jù);列式存儲(chǔ)數(shù)據(jù)庫(kù)

        A

        TP311.13

        10.3778/j.issn.1002-8331.1301-0266

        SHAO Huimeng,SHU Hongping,ZHENG Jiaoling,et al.Storage model optimization toward high dimensional sparse data based on slicing.Computer Engineering and Applications,2013,49(18):99-104.

        國(guó)家重點(diǎn)基礎(chǔ)研究發(fā)展規(guī)劃(973)(No.2012CB518500);國(guó)家自然科學(xué)基金青年基金(No.61202250,No.61203172);四川省教育廳青年基金項(xiàng)目(No.11ZB088);四川省應(yīng)用基礎(chǔ)計(jì)劃(No.2012JY0112);成都市科技計(jì)劃項(xiàng)目(No.12DXYB100JH-002);成都信息工程學(xué)院中青年學(xué)術(shù)帶頭人科研基金(No.J201208,No.J201101);成都信息工程學(xué)院引進(jìn)人才項(xiàng)目(No.KYTZ201110,No.KYTZ201111);四川省科技支撐計(jì)劃項(xiàng)目(No.2011SZZ027)。

        邵慧萌(1986—),男,碩士,研究領(lǐng)域?yàn)閿?shù)據(jù)庫(kù)與知識(shí)工程、計(jì)算機(jī)在制造業(yè)中的應(yīng)用;舒紅平(1974—),男,教授,研究領(lǐng)域?yàn)檐浖こ?、?shù)據(jù)庫(kù)與知識(shí)工程、數(shù)據(jù)挖掘;鄭皎凌(1981—),女,博士,副教授,CCF會(huì)員,研究領(lǐng)域?yàn)閿?shù)據(jù)庫(kù)與知識(shí)工程、機(jī)器學(xué)習(xí)。E-mail:huimengshao@163.com

        2013-01-23

        2013-03-11

        1002-8331(2013)18-0099-06

        CNKI出版日期:2013-04-08 http://www.cnki.net/kcms/detail/11.2127.TP.20130408.1646.003.html

        猜你喜歡
        分片存儲(chǔ)空間列式
        上下分片與詞的時(shí)空佈局
        詞學(xué)(2022年1期)2022-10-27 08:06:12
        基于多種群協(xié)同進(jìn)化算法的數(shù)據(jù)并行聚類算法
        蘋果訂閱捆綁服務(wù)Apple One正式上線
        分片光滑邊值問(wèn)題的再生核方法
        CDN存量MP4視頻播放優(yōu)化方法
        用好Windows 10保留的存儲(chǔ)空間
        基于模糊二分查找的幀分片算法設(shè)計(jì)與實(shí)現(xiàn)
        準(zhǔn)確審題正確列式精確驗(yàn)證
        教師·下(2017年10期)2017-12-10 12:35:13
        每筐多裝多少
        讓課堂煥發(fā)創(chuàng)造活力
        国产一区二区三区在线男友| 无码国产午夜福利片在线观看| 免费人成视频网站在在线| 亚洲日韩成人无码| 无人高清电视剧在线观看| 国产乱人伦av在线无码| 亚洲精品中文字幕观看| 青青草伊人视频在线观看| 中文字幕一区二区人妻性色av| 精品一二三四区中文字幕| 成年女人a毛片免费视频| 欧美日韩精品一区二区在线观看 | 中文字幕34一区二区| 亚洲成av人综合在线观看| 久激情内射婷内射蜜桃| 亚洲国产综合人成综合网站| 少妇被粗大猛进进出出| 亚洲一区二区综合精品| 久久不见久久见www日本网| 2018国产精华国产精品| 亚洲国产精品国自产电影| 91精品人妻一区二区三区蜜臀| 久久亚洲网站中文字幕| 亚洲精品乱码久久久久蜜桃| 国产亚洲精品aaaa片小说| 国产精品综合久久久久久久免费| 大量老肥熟女老女人自拍| 第一九区另类中文字幕| 亚州性无码不卡免费视频| 激情综合色五月丁香六月欧美 | 免费日本一区二区三区视频| 两个人看的www免费视频中文| 日本韩无专砖码高清| 中国老太老肥熟女视频| 日本中文字幕精品久久| 成人免费看aa片| 日本三级欧美三级人妇视频 | 国产乱妇乱子在线播视频播放网站| 巨臀中文字幕一区二区| 黄片亚洲精品在线观看| 日本精品一区二区高清|