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

        ?

        海量數(shù)據(jù)分布式存儲與檢索優(yōu)化分析研究

        2013-05-09 05:59:56鄧平李紅育寧東玲
        關(guān)鍵詞:數(shù)據(jù)庫系統(tǒng)

        鄧平 李紅育 寧東玲

        1云南財經(jīng)大學(xué)信息學(xué)院 云南 650000

        2云南工商學(xué)院軟件學(xué)院 云南 651700

        0 引言

        互聯(lián)網(wǎng)時代的Web系統(tǒng)在企業(yè)中的大量應(yīng)用,隨之而來的數(shù)據(jù)高速膨脹,使得海量數(shù)據(jù)的處理和檢索問題變的異常復(fù)雜。要存儲和處理海量信息,不僅需要有高速的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,還需要處理海量信息的計(jì)算和存儲平臺,為了能高效可靠的存儲和處理PB級的海量數(shù)據(jù),對數(shù)據(jù)的存儲計(jì)算及檢索優(yōu)化技術(shù)應(yīng)運(yùn)而生。

        1 分布式數(shù)據(jù)存儲

        在分布式數(shù)據(jù)庫中,由于數(shù)據(jù)的分布和冗余,使得查詢處理中需要考慮站點(diǎn)間傳輸數(shù)據(jù)的通信費(fèi)用,所以除了考慮CPU代價和I/O代價之外,還應(yīng)該包括數(shù)據(jù)在網(wǎng)絡(luò)上的傳輸代價。即總代價=CPU代價+I/O代價+通信代價。因此,分布式數(shù)據(jù)庫進(jìn)行分布式設(shè)計(jì)時,一個重要原則是使數(shù)據(jù)和應(yīng)用程序?qū)崿F(xiàn)最大程度的本地性,這樣就可以使應(yīng)用數(shù)據(jù)盡可能地本地化,以減少通信開支。對于建立在各場所的分布式數(shù)據(jù)庫,不需要過分進(jìn)行限制,但也必須要有規(guī)范的設(shè)計(jì)要求。

        (1)硬件規(guī)范,必須支持局域網(wǎng)乃至Internet的包括聲音,文字,圖像的交流,支持IE或Netscape瀏覽web界面,支持開放性數(shù)據(jù)源的建立。

        (2)數(shù)據(jù)庫形式規(guī)范,原則上Access、Paradox,甚至文本文件都可以進(jìn)行數(shù)據(jù)傳輸,但必須保證自己有開放式數(shù)據(jù)源的特征及關(guān)系繼承的特征。

        (3)域的統(tǒng)一和分類、分科的統(tǒng)一,數(shù)據(jù)庫在各個分布場所必須有統(tǒng)一的域結(jié)構(gòu),以確保給用戶提供完整統(tǒng)一的視圖,科目分類的命名必須要求規(guī)范,以確保查詢和統(tǒng)計(jì)工作的準(zhǔn)確性,在方便工作的條件下,可以不要求唯一確定的主關(guān)鍵字。

        數(shù)據(jù)庫服務(wù)器級,就是利用多臺數(shù)據(jù)庫服務(wù)器對數(shù)據(jù)進(jìn)行存儲。首先來看案例:我國目前有13多億人口,現(xiàn)在要開發(fā)一個系統(tǒng),能夠根據(jù)身份證號檢索出該人的詳細(xì)信息。對于這種海量數(shù)據(jù)的系統(tǒng),最有效的方式就是從數(shù)據(jù)庫服務(wù)器級進(jìn)行數(shù)據(jù)的分類存儲。如:我國居民身份證是由18位數(shù)字或字母組成,這些數(shù)字和字母都有實(shí)際意義,其中的前6位是行政區(qū)劃碼,可以把不同行政區(qū)劃的公民信息存儲到不同的數(shù)據(jù)庫服務(wù)器上,同時在系統(tǒng)中建立一個字典表,如表1所示。

        表1 數(shù)據(jù)庫服務(wù)器字典表

        當(dāng)輸入身份證號碼時,首先根據(jù)其前4位來檢索其行政區(qū)劃,然后再連接到其所對應(yīng)的數(shù)據(jù)庫服務(wù)器進(jìn)行檢索。

        這種方式帶來的查詢結(jié)果是最高效的,數(shù)據(jù)存儲與查詢的優(yōu)化速度可以提升到10的次方級以上。

        2 動態(tài)表

        通常情況下,數(shù)據(jù)庫中的表是固定的。但有時,在系統(tǒng)的實(shí)際運(yùn)行過程中通過動態(tài)生成表卻能對大數(shù)據(jù)量的存儲與檢索起到不錯的效果。例如,要為某大學(xué)開發(fā)學(xué)工系統(tǒng),系統(tǒng)要能夠?qū)W(xué)生的日常操行進(jìn)行記錄。在系統(tǒng)中必然要有一張表來記錄學(xué)生的日常行為,而問題是對于上萬人的大學(xué),每天將有上萬條的記錄,而這些信息起碼要保存4年,數(shù)據(jù)將達(dá)到10000(人)X 300(天)X 4(年)=12000000條,如何能夠快速檢索出其中某個學(xué)生的操行記錄呢?

        在系統(tǒng)開發(fā)中,可以采用動態(tài)表的形式來提升數(shù)據(jù)的檢索效率。具體做法是,系統(tǒng)中存在班級信息表,結(jié)構(gòu)如表2所示。

        表2 班級信息表

        改進(jìn)后的表3中添加了一列,叫做【操行記錄表】,該列是在添加班級信息時動態(tài)按照命名規(guī)則生成的,同時在數(shù)據(jù)庫中,也添加了一張表,即對應(yīng)的操行記錄表,該表用來保存該班級的操行信息。對于一個近萬人的大學(xué),假如每個班級按照50人核算,那么動態(tài)表的應(yīng)用就把操行記錄表的數(shù)據(jù)量縮小了近200倍,檢索效率也提升了近百倍。

        表3 班級信息表

        3 索引

        索引是關(guān)系數(shù)據(jù)庫中非常重要的對象,但大家往往忽略了索引對數(shù)據(jù)檢索的影響,這種影響在大型的或復(fù)雜的數(shù)據(jù)庫中尤為明顯。

        下面將通過實(shí)際的數(shù)據(jù)檢索來給出實(shí)驗(yàn)結(jié)果。測試的環(huán)境為:主機(jī)HP Compaq 6515b;內(nèi)存:2G;操作系統(tǒng):Windows xp;數(shù)據(jù)庫:Microsoft SQL Server 2008。

        首先,創(chuàng)建如圖1所示數(shù)據(jù)表。其次,向表中插入100萬條數(shù)據(jù)記錄。然后,通過如下SQL語句對檢索效率進(jìn)行測試。

        圖1 數(shù)據(jù)表結(jié)構(gòu)

        declare @begin datetime

        set @begin = getdate()

        select count(*)from T_record where

        pubdate > '2012-01-04 15:58:00' and

        pubdate < '2012-01-04 16:12:00'

        print(datediff(ms,@begin,getdate()))

        (1)索引對比

        當(dāng)采用默認(rèn)索引執(zhí)行上述SQL檢索時,耗時為373ms;當(dāng)為pubdate列添加一個非聚集索引時,耗時為156ms;當(dāng)將默認(rèn)的聚集索引刪除,同時指定pubdate為聚集索引時,耗時為123ms。

        雖然三種檢索的耗時都沒有超過1秒,但從結(jié)果可以發(fā)現(xiàn)第1種方式的耗時幾乎為后面第2種方式的2倍還多,而第3種方式最短。

        分析:同樣的SQL檢索語句,由于第1種方式下,雖然指定了id為主鍵,創(chuàng)建了一個聚集索引,但由于檢索中并不根據(jù)id編號進(jìn)行檢索,所以該聚集索引等于沒有;而第2種方式時,為pubdate列創(chuàng)建了非聚集索引,其檢索用到了索引,從而提升了檢索效率;而第3種情形,為pubdate列創(chuàng)建聚集索引,而聚集索引是一種物理存儲與邏輯存儲一致的索引方式,故其檢索效率進(jìn)一步得到了提升。

        (2)組合索引

        首先,在pubdate、publisher兩列上創(chuàng)建組合索引,然后執(zhí)行如下SQL語句。

        declare @begin datetime

        set @begin = getdate()

        select count(*)from T_record where

        publisher in('u_1000','u_400000')

        print(datediff(ms,@begin,getdate()))

        執(zhí)行檢索共耗時1033ms,然后,對進(jìn)行索引修改,還是為pubdate和publisher創(chuàng)建組合索引,但順序調(diào)整為publisher、pubdate,然后執(zhí)行檢索共耗時16ms,幾乎為0。

        分析:雖然都是在pubdate和publisher上創(chuàng)建的組合索引,但由于第一次的前導(dǎo)列是pubdate,但在查詢中并沒有用到pubdate列,所以組合索引沒有被使用,而第二次的前導(dǎo)列是publisher,檢索用到了索引,大大提升了效率。

        總結(jié)一下,索引使用需要注意以下幾點(diǎn):

        ① 聚集索引是很寶貴的,一定要用到最合適的列上;

        ② 經(jīng)常同時存取多列,可考慮建立組合索引;

        ③ 組合索引要盡量使關(guān)鍵查詢形成索引覆蓋,其前導(dǎo)列一定是使用最頻繁的列。

        4 查詢語句優(yōu)化

        通常,檢索只要能夠檢索到數(shù)據(jù)即可,而忽略了語句寫法不同對效率的影響??偟恼f來,在進(jìn)行檢索時,應(yīng)遵循的基本原則是盡量避免全表掃描。具體的來說就是需要注意以下幾點(diǎn):

        ① 盡量避免在where子句中對字段進(jìn)行null值判斷;

        ② 優(yōu)先考慮在where及order by涉及的列上建立索引;

        ③ 盡量避免在where子句中使用!=或<>操作符;

        ④ 盡量避免使用or來連接條件;

        ⑤ 盡量避免在where子句中對字段進(jìn)行表達(dá)式或函數(shù)操作。

        5 結(jié)束語

        根據(jù)分布式數(shù)據(jù)存儲、動態(tài)表、索引、查詢語句優(yōu)化等4個方面對海量數(shù)據(jù)的存儲與檢索分析得知,四者的有效結(jié)合可以極大的提高數(shù)據(jù)的存儲與檢索效率。因此,在實(shí)際應(yīng)用中,系統(tǒng)設(shè)計(jì)人員可以將這四者有機(jī)的結(jié)合起來,使之與IT系統(tǒng)部署在一起,從而能高效處理海量數(shù)據(jù)與檢索查詢。

        [1]Tom White.Hadoop: The Definitive Guide.O’Reilly Media,Inc.2009.

        [2]田穎,許魯.分布式文件系統(tǒng)中的負(fù)載平衡技術(shù).計(jì)算機(jī)工程.2003.

        [3]Sun Microsystems,Inc.Lustre File System: High- Performance Storage Architecture and Scalable Cluster File System.www.sun.com.2007.

        [4]陳曉明.分布式數(shù)據(jù)庫分片關(guān)系變換查詢優(yōu)化[J].電子設(shè)計(jì)工程.2011.

        [5]陳殿偉.基于Hadoop的虛擬篩選海量數(shù)據(jù)存儲及結(jié)果處理的設(shè)計(jì)和實(shí)現(xiàn)[D].蘭州大學(xué).2012.

        [6]譚懷遠(yuǎn).讓Oracle跑得更快2——基于海量數(shù)據(jù)的數(shù)據(jù)庫設(shè)計(jì)與優(yōu)化.電子工業(yè)出版社.2011.

        猜你喜歡
        數(shù)據(jù)庫系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機(jī)系統(tǒng)
        ZC系列無人機(jī)遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        數(shù)據(jù)庫
        財經(jīng)(2017年15期)2017-07-03 22:40:49
        數(shù)據(jù)庫
        財經(jīng)(2017年2期)2017-03-10 14:35:35
        數(shù)據(jù)庫
        財經(jīng)(2016年15期)2016-06-03 07:38:02
        數(shù)據(jù)庫
        財經(jīng)(2016年3期)2016-03-07 07:44:46
        无码乱人伦一区二区亚洲一| 国产欧美一区二区三区在线看| 手机在线免费av网址| 久久久久亚洲av无码尤物| 又嫩又硬又黄又爽的视频| 亚洲乱妇熟女爽到高潮视频高清| 欧美精品一本久久男人的天堂| 蜜臀av一区二区| 人人妻人人狠人人爽天天综合网| 免费久久久一本精品久久区| 国产精品一区二区久久毛片| 日本亚洲欧美在线观看| 国产sm调教视频在线观看| 无遮掩无码h成人av动漫| 亚洲一区二区综合精品| 免费人成视频网站在线观看不卡| 国产亚洲精品看片在线观看| 无码人妻精一区二区三区| 狂野欧美性猛xxxx乱大交| 国产av影片麻豆精品传媒 | 最新日韩人妻中文字幕一区| 亚洲精品乱码久久久久久麻豆不卡| 中文人妻av久久人妻18| 国产电影一区二区三区| 亚洲综合av大全色婷婷| 国产女人乱码一区二区三区| av最新版天堂在资源在线| 免费黄色福利| 久久精品国产色蜜蜜麻豆| 99re6在线视频精品免费| 午夜精品久久99蜜桃| 国内国外日产一区二区| a在线免费| 久久天天躁夜夜躁狠狠躁2022| 天堂国精产品2023年| 亚洲欧美日韩精品久久| 亚洲中文字幕日产无码| 日本黑人乱偷人妻在线播放| 国产免费网站在线观看不卡| 中文字幕一区二区三区在线乱码| 日韩免费高清视频网站|