• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種關(guān)系型數(shù)據(jù)庫(kù)自動(dòng)劃分方法的設(shè)計(jì)

      2014-04-29 00:00:00李書(shū)攀

      摘 要:隨著互聯(lián)網(wǎng)、物聯(lián)網(wǎng)的發(fā)展,軟件系統(tǒng)收集和產(chǎn)生了海量的數(shù)據(jù),單個(gè)數(shù)據(jù)庫(kù)由于各種限制已經(jīng)無(wú)法滿(mǎn)足海量數(shù)據(jù)存儲(chǔ)和訪(fǎng)問(wèn)的要求,必須將數(shù)據(jù)分散在多個(gè)數(shù)據(jù)庫(kù)中,以達(dá)到存儲(chǔ)海量數(shù)據(jù)、平衡負(fù)載、提高系統(tǒng)可用性的目的。如何將單個(gè)數(shù)據(jù)庫(kù)中的數(shù)據(jù)劃分到不同的數(shù)據(jù)庫(kù)中成為數(shù)據(jù)庫(kù)管理員面臨的首要問(wèn)題。本文提出一種綜合考慮SQL語(yǔ)句、SQL語(yǔ)句執(zhí)行頻率,服務(wù)器性能,數(shù)據(jù)量等多因素的數(shù)據(jù)庫(kù)劃分方法,滿(mǎn)足數(shù)據(jù)存儲(chǔ)和訪(fǎng)問(wèn)要求,從而為數(shù)據(jù)庫(kù)設(shè)計(jì)人員劃分?jǐn)?shù)據(jù)庫(kù)提供幫助。

      關(guān)鍵字:海量數(shù)據(jù);關(guān)系數(shù)據(jù)庫(kù);劃分

      中圖分類(lèi)號(hào):TP311.138

      隨著互聯(lián)網(wǎng)、物聯(lián)網(wǎng)的發(fā)展,產(chǎn)生了越來(lái)越多的TB級(jí)別的數(shù)據(jù)。雖然研發(fā)出能夠滿(mǎn)足海量數(shù)據(jù)的存儲(chǔ)和訪(fǎng)問(wèn)要求NOSQL數(shù)據(jù)庫(kù),但是NOSQL數(shù)據(jù)庫(kù)不能夠滿(mǎn)足原子性、一致性、隔離性、持久性的要求[1],所以系統(tǒng)中關(guān)鍵、核心的數(shù)據(jù)依然必須存放在關(guān)系型數(shù)據(jù)庫(kù)中。在通常情況下,關(guān)系型數(shù)據(jù)庫(kù)中存放的數(shù)據(jù)量受到數(shù)據(jù)庫(kù)自身、存儲(chǔ)設(shè)備、擴(kuò)展性和系統(tǒng)性能的限制,單個(gè)關(guān)系型數(shù)據(jù)庫(kù)中存放的數(shù)據(jù)量是有限的,無(wú)法滿(mǎn)足海量數(shù)據(jù)存儲(chǔ)和訪(fǎng)問(wèn)的要求。必須將數(shù)據(jù)分散在多個(gè)數(shù)據(jù)庫(kù)中,將這些數(shù)據(jù)庫(kù)作為一個(gè)整體為應(yīng)用提供服務(wù),以達(dá)到存儲(chǔ)海量數(shù)據(jù)、平衡負(fù)載、提高系統(tǒng)可用性的目的。

      將數(shù)據(jù)庫(kù)中的數(shù)據(jù)分配到不同服務(wù)器的主要方法是垂直劃分和水平劃分[2]。水平數(shù)據(jù)劃分是基于數(shù)據(jù)庫(kù)表的數(shù)據(jù)量,若表的數(shù)據(jù)量超出了單個(gè)數(shù)據(jù)庫(kù)的容量,則需要將該表中的數(shù)據(jù)拆分到不同的數(shù)據(jù)庫(kù)中。垂直數(shù)據(jù)劃分是基于數(shù)據(jù)庫(kù)中表與表之間的關(guān)系,若某幾張表之間的聯(lián)系非常緊密,則需要將這些表存放在相同的數(shù)據(jù)庫(kù)中[3]。

      數(shù)據(jù)庫(kù)管理員劃分?jǐn)?shù)據(jù)庫(kù)時(shí),雖然會(huì)同時(shí)使用水平數(shù)據(jù)劃分和垂直數(shù)據(jù)劃分的理念,但是沒(méi)有特別有效地方法給予適當(dāng)?shù)闹笇?dǎo),使得數(shù)據(jù)的劃分在很大程度上依賴(lài)數(shù)據(jù)庫(kù)管理員的經(jīng)驗(yàn)以及大量的測(cè)試。在劃分的過(guò)程中,通常為了獲得良好的系統(tǒng)性能,數(shù)據(jù)庫(kù)管理員必須頻繁更改數(shù)據(jù)庫(kù)設(shè)計(jì)和測(cè)試,這樣即浪費(fèi)大量的時(shí)間和精力,又不一定能夠獲得良好的效果。在現(xiàn)有的數(shù)據(jù)庫(kù)劃分方法研究中,都是基于某次操作代價(jià)或者數(shù)據(jù)庫(kù)本身的主外鍵關(guān)系,考慮的方面較為單一,不能綜合考慮到程序運(yùn)行時(shí)狀態(tài)、充分發(fā)揮服務(wù)器和數(shù)據(jù)庫(kù)的性能。正是由于這樣的問(wèn)題,使得這些方法缺乏普適性,不具有推廣和應(yīng)用的價(jià)值。

      1 數(shù)據(jù)庫(kù)自動(dòng)化分方法概述

      針對(duì)上述問(wèn)題,本文提出一種綜合考慮各種影響數(shù)據(jù)庫(kù)切分的因素,如SQL語(yǔ)句、SQL語(yǔ)句的執(zhí)行頻率、表數(shù)據(jù)量信息、服務(wù)器的配置信息、數(shù)據(jù)庫(kù)信息,通過(guò)一定的估算,自動(dòng)生成數(shù)據(jù)庫(kù)各表之間的依賴(lài)關(guān)系、數(shù)據(jù)庫(kù)劃分建議,幫助數(shù)據(jù)庫(kù)管理人員做數(shù)據(jù)庫(kù)的劃分。同時(shí)考慮到在數(shù)據(jù)庫(kù)劃分之后,數(shù)據(jù)庫(kù)管理員還需要修改大量已有的SQL語(yǔ)句、分配機(jī)器,為了緩解數(shù)據(jù)庫(kù)管理員的負(fù)擔(dān),該算法還提供自動(dòng)生成每個(gè)數(shù)據(jù)庫(kù)的建表語(yǔ)句的功能。該算法的大致流程如圖1所示:

      2 算法主要考慮的因素

      影響數(shù)據(jù)庫(kù)切分的因素主要分為五類(lèi)大類(lèi),分別是SQL語(yǔ)句、SQL語(yǔ)句的執(zhí)行頻率、表數(shù)據(jù)量信息、服務(wù)器的配置信息、數(shù)據(jù)庫(kù)信息。下邊介紹這些因素與該算法的關(guān)系。

      2.1 SQL語(yǔ)句

      SQL是一種數(shù)據(jù)庫(kù)查詢(xún)和程序設(shè)計(jì)語(yǔ)言,用于存取數(shù)據(jù)以及查詢(xún)、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)[4]。SQL語(yǔ)句,它反映數(shù)據(jù)庫(kù)表與表之間,表中字段的值之間的靜態(tài)關(guān)系。在該算法中,主要使用SQL語(yǔ)句分為兩大類(lèi):

      2.1.1 SQL建表語(yǔ)句

      SQL語(yǔ)句的建表語(yǔ)句主要用于創(chuàng)建數(shù)據(jù)庫(kù)中的表。建表語(yǔ)句即包含反應(yīng)表與表之參照完整的主外鍵關(guān)系,也包含了反應(yīng)表中字段中的取值的關(guān)系。主外鍵關(guān)系在數(shù)據(jù)庫(kù)執(zhí)行insert、update、delete語(yǔ)句時(shí),會(huì)被使用到;段中的取值的關(guān)系unique,在數(shù)據(jù)庫(kù)執(zhí)行insert語(yǔ)句時(shí)會(huì)被使用到。

      2.1.2 SQL函數(shù)、存儲(chǔ)過(guò)程、觸發(fā)器、程序中的SQL語(yǔ)句

      SQL函數(shù)、存儲(chǔ)過(guò)程、觸發(fā)器、程序中的SQL語(yǔ)句主要用于操作數(shù)據(jù)庫(kù)中的數(shù)據(jù)。它們包含的join語(yǔ)句反映了表與表之間關(guān)系[5]。

      2.2 SQL語(yǔ)句的執(zhí)行頻率

      SQL語(yǔ)句在程序的運(yùn)行過(guò)程當(dāng)中,會(huì)被不斷地調(diào)用,SQL語(yǔ)句執(zhí)行的頻率,在一定程度上反映數(shù)據(jù)庫(kù)運(yùn)行時(shí)表與表之間,表中字段的值之間的動(dòng)態(tài)關(guān)系。一般情況下,某個(gè)SQL語(yǔ)句的執(zhí)行次數(shù)越多,則包含在該SQL語(yǔ)句中的表之間的聯(lián)系越緊密。

      2.3 表數(shù)據(jù)量信息

      預(yù)估的數(shù)據(jù)量,即數(shù)據(jù)庫(kù)所需要承載的數(shù)據(jù)量的大小,也反映了涉及該表的SQL語(yǔ)句的執(zhí)行時(shí)間。當(dāng)一個(gè)表的數(shù)據(jù)量超過(guò)了單個(gè)數(shù)據(jù)庫(kù)所能容納的最大限度時(shí),則需要對(duì)其進(jìn)行水平切分,將同一個(gè)表中的數(shù)據(jù)放到其他的數(shù)據(jù)庫(kù)中。如果一個(gè)表的數(shù)據(jù)量越大,則涉及該表的SQL語(yǔ)句的執(zhí)行時(shí)間的操作時(shí)間越長(zhǎng)。

      2.4 數(shù)據(jù)庫(kù)信息

      數(shù)據(jù)庫(kù)種類(lèi)信息,反映了數(shù)據(jù)庫(kù)的性能。它要包括數(shù)據(jù)庫(kù)種類(lèi)和數(shù)據(jù)庫(kù)配置信息兩類(lèi)。不同的數(shù)據(jù)庫(kù)有著不同的句法規(guī)則、不同的數(shù)據(jù)讀寫(xiě)方式,所以在分析SQL語(yǔ)句語(yǔ)法規(guī)則和SQL語(yǔ)句執(zhí)行代價(jià)時(shí),必須明確數(shù)據(jù)庫(kù)的種類(lèi)。相同的數(shù)據(jù)庫(kù),在不同配置的情況下,能夠發(fā)揮出的性能也是不同的,所以數(shù)據(jù)庫(kù)的配置在一定程度上決定了數(shù)據(jù)庫(kù)的性能,合理的配置數(shù)據(jù)庫(kù),可以提高數(shù)據(jù)庫(kù)的性能。

      2.5 服務(wù)器的配置信息

      服務(wù)器配置信息,反映了服務(wù)器性能的強(qiáng)弱。在配置信息中,起到?jīng)Q定性左右的是CPU,內(nèi)存和硬盤(pán)。CPU決定了服務(wù)器處理指令的能力,內(nèi)存決定了數(shù)據(jù)庫(kù)可以使用的緩存的大小,硬盤(pán)決定了數(shù)據(jù)庫(kù)中可以存儲(chǔ)的數(shù)據(jù)量的多少。

      3 算法的主要流程詳解

      3.1 配置相應(yīng)的參數(shù)

      將影響數(shù)據(jù)庫(kù)切分的主要因素,寫(xiě)成相應(yīng)的配置文件輸入到系統(tǒng)中。

      3.2 生成主外鍵關(guān)系矩陣和特殊數(shù)據(jù)項(xiàng)表

      基于對(duì)SQL建表語(yǔ)句的分析,可以得到主外鍵依賴(lài)矩陣和特殊數(shù)據(jù)項(xiàng)表。算法流程如下所示:

      (1)設(shè)一共有n張表格,建立主外鍵依賴(lài)矩陣ReferencesDataRelation[n][n],ReferencesDataRelation[i][j]表中的第i行第j列代表第i張表的外鍵在第j張表中,其值代表i與表j做連接操作的代價(jià),為數(shù)據(jù)量的乘積,所有的初始值為0;

      (2)設(shè)在所有的建表語(yǔ)句中包含m個(gè)設(shè)置為unique的字段,建立特殊數(shù)據(jù)項(xiàng)數(shù)組specificItem[m],每個(gè)項(xiàng)中標(biāo)示第i張表與表中第k個(gè)字段被設(shè)置為unique。如第四張表的第三個(gè)字段被設(shè)置為unique,則specificItem[m]中某項(xiàng)的值為4_3;

      (3)依次讀取數(shù)據(jù)庫(kù)的建表語(yǔ)句,按照數(shù)據(jù)表讀入的次序,從0開(kāi)始對(duì)表進(jìn)行編號(hào);

      (4)查找建表語(yǔ)句中是否包含設(shè)置為unique的字段,如果沒(méi)有,則轉(zhuǎn)到6;

      (5)獲取表的編號(hào)i,字段的編號(hào)k,將specificItem表中的某個(gè)可使用的位置設(shè)置為i_k;

      (6)讀取數(shù)據(jù)庫(kù)建表語(yǔ)句,如果沒(méi)有,則轉(zhuǎn)到10;

      (7)查看該語(yǔ)句中是否包含反應(yīng)主外鍵的關(guān)鍵字references,如果沒(méi)有,轉(zhuǎn)到8;

      (8)獲取表的編號(hào),設(shè)兩個(gè)表的編號(hào)分別為i,j;

      (9)讀取預(yù)估主表的數(shù)據(jù)量為l和h,將二維矩陣的對(duì)應(yīng)于表編號(hào)的位置ReferencesDataRelation[i,j]和ReferencesDataRelation[j,i]的位置設(shè)置為l*h;

      (10)轉(zhuǎn)到3;

      (11)結(jié)束。

      3.3 計(jì)算表與表之間的依賴(lài)關(guān)系

      表與表之間的動(dòng)態(tài)的關(guān)系主要通過(guò)數(shù)據(jù)庫(kù)運(yùn)行過(guò)程中執(zhí)行SQL語(yǔ)句、SQL語(yǔ)句執(zhí)行的頻率和表的數(shù)據(jù)量反映出。根據(jù)一定的計(jì)算,得出表與表之間的依賴(lài)關(guān)系。具體的算法流程如下所示:

      (1)根據(jù)歷史的統(tǒng)計(jì)情況,估算每個(gè)SQL語(yǔ)句在系統(tǒng)運(yùn)行過(guò)程中所占的比例;

      (2)建立表與表之間的依賴(lài)關(guān)系矩陣SQLReleation[n][n],SQLReleation[i][j]表中的第i行第j列代表表i與表j的關(guān)系的緊密程度,其值為表i與表j之間所有的SQL語(yǔ)句執(zhí)行的代價(jià)與SQL語(yǔ)句戰(zhàn)系統(tǒng)中運(yùn)行比例的乘積,矩陣中所有項(xiàng)所有的初始值為0;

      (3)讀取一個(gè)SQL語(yǔ)句,如果沒(méi)有,則轉(zhuǎn)到9;

      (4)并建立語(yǔ)法樹(shù);

      (5)自下到上,根據(jù)各表的數(shù)據(jù)量和語(yǔ)句類(lèi)型,預(yù)估計(jì)算每一層的運(yùn)算代價(jià),設(shè)為n。標(biāo)注層是由那些表的操作生成的。如果在某一層遇到j(luò)oin語(yǔ)句,則查找兩個(gè)參與join運(yùn)算的表i,j的數(shù)據(jù)量,分別為k,l,并得出運(yùn)算的代價(jià)k*l;

      (6)讀取該SQL語(yǔ)句的執(zhí)行頻率r;

      (7)將SQLReleation[i][j]和SQLReleation[i][j]中的值設(shè)置為SQLReleation[i][j]=SQLReleation[j][i]=SQLReleation[j][i]+k*i*r;

      (8)轉(zhuǎn)到3;

      (9)結(jié)束。

      3.4 垂直劃分?jǐn)?shù)據(jù)庫(kù)

      依據(jù)數(shù)據(jù)庫(kù)垂直劃分的概念,需要基于數(shù)據(jù)庫(kù)中表與表的關(guān)系,將不同的數(shù)據(jù)庫(kù)表保存在分布于不同服務(wù)器上的數(shù)據(jù)庫(kù)實(shí)例中[2]。在第三步驟中,已經(jīng)得到表示表與表之間的關(guān)系強(qiáng)弱的矩陣,該矩陣為對(duì)稱(chēng)矩陣。將該矩陣抽象為一個(gè)帶權(quán)無(wú)向圖,圖的定點(diǎn)代表,圖的邊上的權(quán)重代表與表之間關(guān)系的強(qiáng)弱。根據(jù)圖的可達(dá)性算法[5],求出每個(gè)可達(dá)的閉包。如果閉包過(guò)大,則可以設(shè)置一定的閾值,對(duì)閉包進(jìn)行拆分,最終完成對(duì)數(shù)據(jù)庫(kù)的垂直切分。算法如下所示:

      (1)求出該矩陣中所有數(shù)據(jù)之和,并求平均值,作為管理員劃分的閾值的參考;

      (2)管理員輸入表示忽略表與表之間關(guān)系的下限的數(shù)值和閉包拆分的數(shù)值;

      (3)將矩陣中所有小于表與表之間關(guān)系的下限的數(shù)據(jù)設(shè)置為0;

      (4)根據(jù)矩陣可達(dá)性算法,求出每一個(gè)可達(dá)閉包;

      (5)輸入一個(gè)閉包,如果沒(méi)有則轉(zhuǎn)到9;

      (6)輸出所有的可達(dá)閉包以及閉包中表與表之間的權(quán)重;

      (7)如果該閉包中的所有的權(quán)重之和大于閉包拆分的閾值,則將改閉包拆分,生成新的閉包。將新生成的閉包加入需要檢驗(yàn)的閉包中;

      (8)轉(zhuǎn)到5;

      (9)結(jié)束。

      3.5 水平劃分?jǐn)?shù)據(jù)庫(kù)

      水平數(shù)據(jù)劃分主要是表基于數(shù)據(jù)量的大小,將同一張表中的數(shù)據(jù)分布在不同的數(shù)據(jù)庫(kù)當(dāng)中[6]。在算法五中,求得垂直劃分后哪些表應(yīng)該放在同一個(gè)數(shù)據(jù)庫(kù)中。但是,當(dāng)數(shù)據(jù)量過(guò)大時(shí),也需要對(duì)這些表進(jìn)行水平劃分。在該算法中以閉包中所有表的數(shù)據(jù)量、服務(wù)器的配置,數(shù)據(jù)庫(kù)的配置為基數(shù),將閉包中的所有的表作為一個(gè)整體進(jìn)行劃分。算法如下:

      (1)依據(jù)服務(wù)器的配置和數(shù)據(jù)庫(kù)的參數(shù),計(jì)算每臺(tái)服務(wù)器可以承載的最大數(shù)據(jù)量,以及所有機(jī)器能夠承載數(shù)據(jù)總量。并將所有的機(jī)器按照承載數(shù)據(jù)量的能力,由大到小排序,排序后的結(jié)果為機(jī)器名稱(chēng)與該機(jī)器承載能力的對(duì),設(shè)為.........(M+數(shù)字代表機(jī)器的名稱(chēng),A+數(shù)字代表機(jī)器所能承載的數(shù)據(jù)量,其中A1>A2>.......);

      (2)對(duì)由算法五生成的每個(gè)閉包,求出每個(gè)閉包的總數(shù)據(jù)量以及所有數(shù)據(jù)量的和;

      (3)計(jì)算剩余服務(wù)器所能承載的數(shù)據(jù)量以及所有閉包的總數(shù)據(jù)量,如果所有機(jī)器能夠承載的數(shù)據(jù)總量小于表的數(shù)據(jù)量,則轉(zhuǎn)到8;

      (4)按照數(shù)據(jù)量,對(duì)閉包從大到小進(jìn)行排序。排序后,對(duì)閉包進(jìn)行編號(hào)。得到編號(hào)與閉包的數(shù)據(jù)量的對(duì),<1,B1>,<2,B2>,.......(數(shù)字為閉包的編號(hào),B+數(shù)字為數(shù)據(jù)量的大小,其中B1>B2>.....);

      (5)取出一個(gè)閉包,如果沒(méi)有則轉(zhuǎn)到8;

      (6)按照從大到小的順序,取出一個(gè)閉包設(shè)為m,依次檢索每臺(tái)機(jī)器,找到與大于并且最為接近該閉包數(shù)據(jù)量服務(wù)器序列。如果可以找到,則將所有的數(shù)據(jù)都放在該機(jī)器上,并將還有剩余空間的機(jī)器所能承載的數(shù)據(jù)量設(shè)置為當(dāng)前能承載的數(shù)據(jù)量減去放置在該服務(wù)器中的數(shù)據(jù)量。并將該服務(wù)器編號(hào)插入到服務(wù)器隊(duì)列中。轉(zhuǎn)到3;

      (7)輸出每臺(tái)機(jī)器上的表的閉包;

      (8)結(jié)束。

      3.6 生成每臺(tái)機(jī)器的建表語(yǔ)句

      根據(jù)垂直和水平劃分的結(jié)果,生成每臺(tái)服務(wù)器的建表語(yǔ)句。從而幫助數(shù)據(jù)庫(kù)管理員處理數(shù)據(jù)劃分后的建立數(shù)據(jù)庫(kù)的問(wèn)題。主要是依據(jù)SQL建表語(yǔ)句以及步驟六所得的每臺(tái)機(jī)器上的表分配信息。算法如下:

      (1)讀取原有數(shù)據(jù)庫(kù)建表語(yǔ)句,并對(duì)表進(jìn)行編號(hào);

      (2)讀取所有服務(wù)器的信息,并對(duì)服務(wù)器進(jìn)行編號(hào);

      (3)讀取某一個(gè)閉包,如果沒(méi)有則轉(zhuǎn)到9;

      (4)設(shè)閉包中的表為(A,B,C,D,E),獲取閉包中所有表的建表語(yǔ)句和放置該閉包數(shù)據(jù)的服務(wù)器信息;

      (5)讀取閉包中的一個(gè)建表表語(yǔ)句,如果沒(méi)有則轉(zhuǎn)到7;

      (6)設(shè)讀取到A的建表語(yǔ)句,檢索到建表語(yǔ)句中與表A存在主外鍵關(guān)系的表K,如果K在閉包中且該閉包分配到一臺(tái)服務(wù)器中,則保留reference語(yǔ)句,如果k不在閉包中或改閉包分配到多個(gè)服務(wù)器中,則刪除reference語(yǔ)句;

      (7)將修改后的建表語(yǔ)句存放到對(duì)應(yīng)的服務(wù)器建表語(yǔ)句中,轉(zhuǎn)到5;

      (8)轉(zhuǎn)到3;

      (9)輸出所有機(jī)器的建表語(yǔ)句。

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

      以上是本文提出的綜合考慮各種影響數(shù)據(jù)庫(kù)切分的因素,如SQL語(yǔ)句、SQL語(yǔ)句的執(zhí)行頻率、表數(shù)據(jù)量信息、服務(wù)器的配置信息、數(shù)據(jù)庫(kù)信息,通過(guò)一定的算法得到數(shù)據(jù)庫(kù)劃分建議、分配服務(wù)器、創(chuàng)建新的建表語(yǔ)句。該算法可以有效地為數(shù)據(jù)庫(kù)管理員劃分?jǐn)?shù)據(jù)庫(kù)提供參考,減輕數(shù)據(jù)庫(kù)管理員的工作量,提高了劃分?jǐn)?shù)據(jù)庫(kù)的效率。

      參考文獻(xiàn):

      [1]申德榮,于戈,王習(xí)特,等.支持大數(shù)據(jù)管理的NoSQL系統(tǒng)研究綜述[J].軟件學(xué)報(bào),2013(08):1786-1803.

      [2]黃河.數(shù)據(jù)庫(kù)加速引擎加速方案研究[D].華中科技大學(xué),2006.

      [3]Lirig數(shù)據(jù)庫(kù)的垂直劃分和水平劃分[EB/OL].http://liriguang.iteye.com/blog/625309.2010.

      [4]王珊,薩師煊.數(shù)據(jù)庫(kù)系統(tǒng)概論[M].北京:高等教育出版社,2007.

      [5]嚴(yán)蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)[M].北京:清華大學(xué)出版社,2012.

      [6]侯佳佳,喬運(yùn)華,卜建國(guó),等.基于分布式數(shù)據(jù)庫(kù)數(shù)據(jù)處理的研究[J].制造業(yè)自動(dòng)化,2013(01).

      作者簡(jiǎn)介:李書(shū)攀(1986-),男,河南南陽(yáng)人,碩士,主要從事計(jì)算機(jī)教學(xué)。

      作者單位:南陽(yáng)師范學(xué)院 計(jì)算機(jī)與信息技術(shù)學(xué)院,河南南陽(yáng) 473061

      临江市| 双牌县| 锦屏县| 扶余县| 永年县| 兖州市| 庄浪县| 苍溪县| 南靖县| 右玉县| 遂溪县| 宁蒗| 东阳市| 抚松县| 临武县| 特克斯县| 栾城县| 威信县| 寻乌县| 晋城| 临沧市| 崇义县| 洛扎县| 界首市| 阆中市| 廊坊市| 宝丰县| 若尔盖县| 大竹县| 盐边县| 容城县| 石狮市| 滁州市| 通化县| 永清县| 繁峙县| 巴里| 定结县| 三门县| 丰宁| 百色市|