在云計(jì)算和物聯(lián)網(wǎng)等新興信息技術(shù)高速發(fā)展的今天,由于半結(jié)構(gòu)化數(shù)據(jù)具有靈活易擴(kuò)展的存儲(chǔ)結(jié)構(gòu),已被許多信息系統(tǒng)和應(yīng)用作為公共數(shù)據(jù)模型,被廣泛地用于大規(guī)模異構(gòu)數(shù)據(jù)的使用場(chǎng)景中。幾乎所有行業(yè)都制定了描述和共享本領(lǐng)域數(shù)據(jù)的半結(jié)構(gòu)化數(shù)據(jù)模型應(yīng)用標(biāo)準(zhǔn)。隨著半結(jié)構(gòu)化數(shù)據(jù)的廣泛使用,如何對(duì)大規(guī)模半結(jié)構(gòu)化數(shù)據(jù)進(jìn)行有效的管理,在學(xué)術(shù)界是一個(gè)重要的研究課題,而在工業(yè)界又是一項(xiàng)具有廣闊應(yīng)用前景的技術(shù)。本書(shū)以XML為代表,探討了大規(guī)模半結(jié)構(gòu)化數(shù)據(jù)管理中的模式提取、節(jié)點(diǎn)編碼、索引與查詢(xún)處理等關(guān)鍵問(wèn)題。本書(shū)既適合初學(xué)者作為基礎(chǔ)學(xué)習(xí)資料,又適合科研人員作為理論研究教程,更適合從業(yè)人員作為技術(shù)參考書(shū)目。
隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,傳統(tǒng)的結(jié)構(gòu)化數(shù)據(jù)模型已經(jīng)無(wú)法滿(mǎn)足人們對(duì)信息處理的要求。尤其是在云計(jì)算和物聯(lián)網(wǎng)高速發(fā)展的今天,對(duì)管理半結(jié)構(gòu)化數(shù)據(jù)、大規(guī)模信息處理等領(lǐng)域的研究越來(lái)越多地被關(guān)注。由于半結(jié)構(gòu)化數(shù)據(jù)模型既能描述半結(jié)構(gòu)化數(shù)據(jù)又能描述結(jié)構(gòu)化數(shù)據(jù),而且具有靈活易擴(kuò)展的存儲(chǔ)結(jié)構(gòu),其已被許多系統(tǒng)和應(yīng)用作為公共數(shù)據(jù)模型,被廣泛地用于異構(gòu)數(shù)據(jù)量大的應(yīng)用中。如今,幾乎所有行業(yè)都制定了描述和共享本領(lǐng)域數(shù)據(jù)的半結(jié)構(gòu)化數(shù)據(jù)模型應(yīng)用標(biāo)準(zhǔn)。此外,由于半結(jié)構(gòu)化數(shù)據(jù)模型具有易于描述結(jié)構(gòu)、易于校驗(yàn)、易于展現(xiàn)等特點(diǎn),許多原本是以非結(jié)構(gòu)化方式進(jìn)行存儲(chǔ)的數(shù)據(jù),也可以通過(guò)半結(jié)構(gòu)化數(shù)據(jù)模型進(jìn)行描述并存儲(chǔ)。
因此,如何對(duì)大規(guī)模半結(jié)構(gòu)化數(shù)據(jù)進(jìn)行有效的管理,在學(xué)術(shù)界是一個(gè)重要的理論研究課題,同時(shí)在工業(yè)界又是一項(xiàng)具有廣闊應(yīng)用前景的技術(shù)。本書(shū)以XML為代表,探討了大規(guī)模半結(jié)構(gòu)化數(shù)據(jù)管理中的關(guān)鍵問(wèn)題模式提取、節(jié)點(diǎn)編碼、索引與查詢(xún)處理等研究課題。本書(shū)主要內(nèi)容如下:
(1)針對(duì)現(xiàn)有基于正則表達(dá)式的模式提取方法的不足之處,本書(shū)根據(jù)XML Schema規(guī)范中元素內(nèi)容模型的特點(diǎn),提出了XTree算法,該算法可以快速、準(zhǔn)確地并發(fā)提取多個(gè)大規(guī)模(GB級(jí))XML文檔的結(jié)構(gòu)。該算法與其他基于正則表達(dá)式的算法最顯著的區(qū)別在于,XTree對(duì)于元素內(nèi)容模型的提取加入了對(duì)元素內(nèi)容模型是否有序的區(qū)分,降低了算法的時(shí)間復(fù)雜度和空間復(fù)雜度。
(2)針對(duì)現(xiàn)有半結(jié)構(gòu)化數(shù)據(jù)節(jié)點(diǎn)編碼方案的不足之處,本研究提出了D2編碼方案,該算法在靜態(tài)編碼和動(dòng)態(tài)編碼中都表現(xiàn)出良好的性能,而且易于二進(jìn)制串行化和反串行化,具有較高的實(shí)用價(jià)值。和其他半結(jié)構(gòu)化數(shù)據(jù)節(jié)點(diǎn)編碼方案相比,D2編碼最顯著的特點(diǎn)在于,突破了傳統(tǒng)的以整數(shù)作為層標(biāo)識(shí)的限制,采用二進(jìn)制真分?jǐn)?shù)作為層標(biāo)識(shí),由于真分?jǐn)?shù)的取值區(qū)間是無(wú)窮的,所以可以保證在任意位置插入節(jié)點(diǎn)都存在有效的編碼。
(3)本書(shū)綜合考慮了目前已有的關(guān)系型數(shù)據(jù)庫(kù)和大規(guī)模半結(jié)構(gòu)化數(shù)據(jù)的索引技術(shù)的優(yōu)缺點(diǎn),提出一套完善的索引方案D2-Index索引策略,能夠支持高效的查詢(xún)處理。它并不只是使用了一種單一的索引技術(shù),而是參考和借鑒了多種技術(shù),如節(jié)點(diǎn)編碼索引、結(jié)構(gòu)索引和倒排索引等。D2-Index索引策略的最顯著之處在于,它的索引文件包括了主索引、路徑輔助索引和值輔助索引,這三種索引都采用分塊存儲(chǔ)的方式提高索引的查找和修改效率。此外,由于是基于D2編碼方案的,所以D2-Index索引策略可以有效地支持節(jié)點(diǎn)的動(dòng)態(tài)更新。
(4)根據(jù)目前對(duì)于大規(guī)模半結(jié)構(gòu)化數(shù)據(jù)查詢(xún)處理的研究,本書(shū)提出一種以D2-Index索引策略為基礎(chǔ),基于XPath表達(dá)式的CAS查詢(xún)處理。這種查詢(xún)處理最大的特點(diǎn)在于,將輸入的合法CAS語(yǔ)句拆分為多個(gè)BXCAS語(yǔ)句,再對(duì)拆分的語(yǔ)句按順序進(jìn)行處理,根據(jù)D2-Index策略中的路徑和值輔助索引,獲取符合查詢(xún)條件的節(jié)點(diǎn)的D2物理編碼,再?gòu)闹魉饕蝎@取其在源數(shù)據(jù)中的位置信息,最終以異步的方式輸出結(jié)果。
張引(1986 ),男,江西九江人,理學(xué)博士,現(xiàn)為中南財(cái)經(jīng)政法大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)系副教授、碩士生導(dǎo)師,長(zhǎng)期從事認(rèn)知計(jì)算與智能服務(wù)領(lǐng)域的研究,目前主持國(guó)家自然科學(xué)基金項(xiàng)目2項(xiàng)、教育部人文社會(huì)科學(xué)研究項(xiàng)目1項(xiàng);近5年共發(fā)表論文80余篇,其中SCI收錄超過(guò)50篇,并有9篇論文入選ESI高被引論文。在《IEEE Network》《IEEE Access》等國(guó)際知名SCI期刊擔(dān)任編委等職務(wù),曾在《Future Generation Computer Systems》《IEEE IoT Journal》《Electronic Markets》等知名SCI/SSCI期刊擔(dān)任客座編輯等職務(wù);曾在多個(gè)國(guó)際學(xué)術(shù)會(huì)議擔(dān)任大會(huì)主席等職務(wù)。2014年當(dāng)選IEEE計(jì)算機(jī)協(xié)會(huì)大數(shù)據(jù)技術(shù)委員會(huì)副主席,2015年當(dāng)選IEEE高級(jí)會(huì)員,2016年入選中南財(cái)經(jīng)政法大學(xué)文瀾學(xué)者計(jì)劃,2017年入選湖北省楚天學(xué)者計(jì)劃,2018年獲得《IEEE Systems Journal》年度論文獎(jiǎng)。
第一章半結(jié)構(gòu)化數(shù)據(jù)的應(yīng)用背景(1)
第一節(jié)研究背景(2)
第二節(jié)研究?jī)?nèi)容及意義(6)
一 研究?jī)?nèi)容(6)
二 研究意義(8)
第三節(jié)本書(shū)結(jié)構(gòu)(9)
第二章半結(jié)構(gòu)化數(shù)據(jù)的基礎(chǔ)知識(shí)(12)
第一節(jié)半結(jié)構(gòu)化數(shù)據(jù)的結(jié)構(gòu)特征(12)
第二節(jié)半結(jié)構(gòu)化數(shù)據(jù)的結(jié)構(gòu)模型(15)
第三節(jié)半結(jié)構(gòu)化數(shù)據(jù)的模式語(yǔ)言(16)
第四節(jié)半結(jié)構(gòu)化數(shù)據(jù)的查詢(xún)語(yǔ)言(17)
第五節(jié)半結(jié)構(gòu)化數(shù)據(jù)的應(yīng)用程序接口(19)
第三章半結(jié)構(gòu)化數(shù)據(jù)的管理模型(22)
第一節(jié)半結(jié)構(gòu)化數(shù)據(jù)模式提取的相關(guān)研究(23)
第二節(jié)半結(jié)構(gòu)化數(shù)據(jù)節(jié)點(diǎn)編碼的相關(guān)研究(26)
第三節(jié)半結(jié)構(gòu)化數(shù)據(jù)索引的相關(guān)研究(27)
第四節(jié)半結(jié)構(gòu)化數(shù)據(jù)查詢(xún)處理的相關(guān)研究(30)
第四章半結(jié)構(gòu)化數(shù)據(jù)的模式提。33)
第一節(jié)半結(jié)構(gòu)化數(shù)據(jù)的元素內(nèi)容模型(34)
一半結(jié)構(gòu)化數(shù)據(jù)的樹(shù)狀結(jié)構(gòu)模型(34)
二半結(jié)構(gòu)化數(shù)據(jù)的元素內(nèi)容模型(36)
三提取大規(guī)模半結(jié)構(gòu)化數(shù)據(jù)模式的質(zhì)量標(biāo)準(zhǔn)(38)
第二節(jié)基于正則表達(dá)式的模式提取方法(39)
第三節(jié)基于集合/序列的模式提取方法XTree(48)
第四節(jié)實(shí)證研究(59)
第五節(jié)小結(jié)(72)
第五章半結(jié)構(gòu)化數(shù)據(jù)的節(jié)點(diǎn)編碼(75)
第一節(jié)半結(jié)構(gòu)化數(shù)據(jù)節(jié)點(diǎn)編碼的特點(diǎn)(76)
第二節(jié)D2編碼方案(89)
第三節(jié)D2編碼的二進(jìn)制表示(95)
第四節(jié)實(shí)證研究(106)
第五節(jié)小結(jié)(109)
第六章半結(jié)構(gòu)化數(shù)據(jù)的索引和查詢(xún)處理(111)
第一節(jié)D2-Index索引策略(112)
第二節(jié)基于D2-Index索引策略的查詢(xún)處理(130)
第三節(jié)實(shí)證研究(137)
第四節(jié)小結(jié)(140)
第七章半結(jié)構(gòu)化數(shù)據(jù)與大數(shù)據(jù)(143)
第一節(jié)大數(shù)據(jù)時(shí)代來(lái)臨(143)
第二節(jié)大數(shù)據(jù)基礎(chǔ)(146)
第三節(jié)大數(shù)據(jù)應(yīng)用(157)
第八章總結(jié)(187)
第一節(jié)主要內(nèi)容(187)
第二節(jié)未來(lái)研究展望(189)