基于圖數(shù)據(jù)庫的圖計算平臺框架的設(shè)計與實現(xiàn)
發(fā)布時間:2021-04-09 20:09
隨著如今已經(jīng)全面移動互聯(lián)網(wǎng)時代和大數(shù)據(jù)時代,社交網(wǎng)絡(luò)和知識圖譜等領(lǐng)域已經(jīng)得到了越來越多的研究和關(guān)注,這些領(lǐng)域的數(shù)據(jù)彼此之間有著很強的關(guān)聯(lián)性,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫在處理關(guān)聯(lián)性數(shù)據(jù)時要進行大量的表連接從而造成效率低下以及時間開銷很大。面對這樣的應(yīng)用場景所帶來的問題,產(chǎn)生了圖數(shù)據(jù)庫技術(shù)并得到了飛速的發(fā)展。而Neo4j作為目前市場上名列前茅的圖數(shù)據(jù)庫以及圖計算領(lǐng)域的Spark GraphX在這樣的背景下都得到了越來越廣泛的應(yīng)用。但是,眾多的圖數(shù)據(jù)庫也為開發(fā)人員帶來了不便,因此本文希望設(shè)計一個統(tǒng)一的、可擴展的圖計算平臺框架,能夠覆蓋底層不同圖數(shù)據(jù)庫,而統(tǒng)一上層的應(yīng)用和展示接口。本文以圖數(shù)據(jù)庫Neo4j和圖計算引擎Spark GraphX為例,設(shè)計并實現(xiàn)了一個圖計算平臺框架?蚣茉谡w設(shè)計層面劃分為持久模塊、算法模塊、控制模塊和應(yīng)用模塊。在模塊的實現(xiàn)代碼層面引入了簡單工廠、工廠方法、抽象工廠設(shè)計模式,從而讓整個框架實現(xiàn)了解耦合與可擴展。本文對框架的持久模塊與部分算法模塊的接口進行了實現(xiàn),包括圖數(shù)據(jù)生成器、Neo4j導(dǎo)入器以及HDFS導(dǎo)入器,以及SSSP、PageRank、節(jié)點中心度、三角形計數(shù)等圖算...
【文章來源】:北京化工大學(xué)北京市 211工程院校 教育部直屬院校
【文章頁數(shù)】:98 頁
【學(xué)位級別】:碩士
【部分圖文】:
圖2-4?Neo4j體系架構(gòu)層??Fig.2-4?Neo4j?architecture?layers??Ne〇4j在應(yīng)用層通過Cypher語言提供對外的服務(wù)
中間組件主要負(fù)責(zé)訪問基礎(chǔ)組??件組織與管理的圖數(shù)據(jù),并且基于這些圖數(shù)據(jù)進行圖計算,并將算法運行結(jié)果返回給??應(yīng)用組件,中間組件設(shè)計的算法計算決定了整個框架執(zhí)行效率和運行速度;應(yīng)用組件??主要負(fù)責(zé)對中間組件提供的算法計算進行服務(wù)請求,并且將圖計算結(jié)果進行前端可視??化的展示,應(yīng)用組件的可視化展示決定了整個框架在計算結(jié)果的呈現(xiàn)上是否直觀???架功能的組件劃分如下圖所示:??返回結(jié)果I垠回結(jié)果?????丨請求服務(wù)丨?丨請求服務(wù)丨??—?—?mM??______?__??圖3-1框架功能組件劃分.??Fig.3-1?Framework?fiinctional?component?division??基礎(chǔ)組件主要細(xì)分成三種功能:數(shù)據(jù)導(dǎo)入、數(shù)據(jù)存儲和數(shù)據(jù)管理。其中數(shù)據(jù)導(dǎo)入??是將獲取到的圖數(shù)據(jù)按照特定的格式導(dǎo)入到圖數(shù)據(jù)庫Ne〇4j中,比如要使用CSV格??式的數(shù)據(jù)文件,同時指定數(shù)據(jù)文件的表頭、指定數(shù)據(jù)節(jié)點ID的數(shù)據(jù)類型、指定圖中??的關(guān)系的起始節(jié)點和結(jié)束節(jié)點、指定關(guān)系的類型;而對于超大規(guī)模的數(shù)據(jù)文件,將其??導(dǎo)入到分布式文件系統(tǒng)HDFS;數(shù)據(jù)存儲是將導(dǎo)入到Ne〇4j的圖數(shù)據(jù)按照節(jié)點和邊的??不同類型進行分類存儲,并且對于不同應(yīng)用場景的圖數(shù)據(jù)生成不同的連接圖進行存儲;??27??
?I??|?createByArgs()?>|??圍?createNoArgs()?.-略一?mi?;??_??calculate(args)-—??---|??t?Ho?f?*|?!???^createByArgs(^——一^——???createNoArgs?(〉—????;???_?構(gòu)適‘???i?calculate(args)?!?1?順??????_4——......——?i?—i???|?|?;?!?i?!?■??圖3-12抽象工廠時序圖??Fig.3-12?Abstract?Method?Sequence?Diagram??3.5?本章小結(jié)??本章論述了整個圖計算平臺在整體設(shè)計層面所涉及到的需求分析,包括整個框架??所需要完成的功能,將這些功能劃分為基礎(chǔ)組件、中間組件和應(yīng)用組件,同時對于完??40??
【參考文獻】:
期刊論文
[1]基于Neo4j桂枝湯類方知識圖譜的研究與實現(xiàn)[J]. 趙凱,王華星,施娜,薩震,許筱穎. 世界中醫(yī)藥. 2019(10)
[2]一種基于Neo4j圖數(shù)據(jù)庫的模糊查詢研究與實現(xiàn)[J]. 李雪. 計算機技術(shù)與發(fā)展. 2018(11)
[3]基于Neo4j的重點人超級關(guān)系分析應(yīng)用探索[J]. 劉婷,林君. 電信快報. 2018(06)
[4]基于Neo4j圖數(shù)據(jù)庫的課程體系知識圖譜系統(tǒng)設(shè)計與實現(xiàn)[J]. 肖慶都,屈亮亮,侯霞. 電腦知識與技術(shù). 2017(36)
[5]基于深度學(xué)習(xí)與圖數(shù)據(jù)庫構(gòu)建中文商業(yè)知識圖譜的探索研究[J]. 王仁武,袁毅,袁旭萍. 圖書與情報. 2016(01)
[6]基于Neo4j的電力大數(shù)據(jù)建模及分析[J]. 馬義松,武志剛. 電工電能新技術(shù). 2016(02)
[7]基于圖數(shù)據(jù)庫Neo4j的話單分析研究[J]. 黃冰倩,黃淑華,劉思言. 網(wǎng)絡(luò)安全技術(shù)與應(yīng)用. 2015(07)
[8]基于Neo4j處理大數(shù)據(jù)中元數(shù)據(jù)溯源的研究[J]. 靳永超,吳懷谷. 現(xiàn)代計算機(專業(yè)版). 2015(08)
[9]圖數(shù)據(jù)庫在網(wǎng)絡(luò)優(yōu)化系統(tǒng)中的應(yīng)用[J]. 席瀚英. 電信技術(shù). 2014(09)
碩士論文
[1]基于Neo4j的人員關(guān)聯(lián)分析與吸毒傾向預(yù)測平臺的設(shè)計[D]. 祁爍.山東大學(xué) 2019
[2]基于Neo4j圖數(shù)據(jù)庫構(gòu)建中學(xué)語文詩詞知識圖譜[D]. 馮俐.陜西師范大學(xué) 2019
[3]基于Neo4j的煤礦領(lǐng)域知識圖譜構(gòu)建及查詢方法研究[D]. 葉帥.中國礦業(yè)大學(xué) 2019
[4]基于SEF框架的代碼生成工具的設(shè)計與實現(xiàn)[D]. 趙麗娜.山東大學(xué) 2018
[5]基于Spark平臺支持空間數(shù)據(jù)管理的圖計算框架的研究[D]. 王昌圓.山東大學(xué) 2018
[6]基于Spark的子圖匹配算法研究與實現(xiàn)[D]. 郭騰.北京交通大學(xué) 2017
[7]基于Spark的社會網(wǎng)絡(luò)分析系統(tǒng)的設(shè)計與實現(xiàn)[D]. 崔印昌.北京郵電大學(xué) 2017
[8]基于MapReduce的圖數(shù)據(jù)庫頻繁子圖挖掘[D]. 王凱.華中科技大學(xué) 2016
[9]基于NOSQL數(shù)據(jù)庫的路網(wǎng)最短路徑查詢及優(yōu)化研究[D]. 于海鵬.北京工業(yè)大學(xué) 2016
[10]基于Neo4j的大數(shù)據(jù)組織檢索研究與應(yīng)用[D]. 陸鵬.東南大學(xué) 2015
本文編號:3128240
【文章來源】:北京化工大學(xué)北京市 211工程院校 教育部直屬院校
【文章頁數(shù)】:98 頁
【學(xué)位級別】:碩士
【部分圖文】:
圖2-4?Neo4j體系架構(gòu)層??Fig.2-4?Neo4j?architecture?layers??Ne〇4j在應(yīng)用層通過Cypher語言提供對外的服務(wù)
中間組件主要負(fù)責(zé)訪問基礎(chǔ)組??件組織與管理的圖數(shù)據(jù),并且基于這些圖數(shù)據(jù)進行圖計算,并將算法運行結(jié)果返回給??應(yīng)用組件,中間組件設(shè)計的算法計算決定了整個框架執(zhí)行效率和運行速度;應(yīng)用組件??主要負(fù)責(zé)對中間組件提供的算法計算進行服務(wù)請求,并且將圖計算結(jié)果進行前端可視??化的展示,應(yīng)用組件的可視化展示決定了整個框架在計算結(jié)果的呈現(xiàn)上是否直觀???架功能的組件劃分如下圖所示:??返回結(jié)果I垠回結(jié)果?????丨請求服務(wù)丨?丨請求服務(wù)丨??—?—?mM??______?__??圖3-1框架功能組件劃分.??Fig.3-1?Framework?fiinctional?component?division??基礎(chǔ)組件主要細(xì)分成三種功能:數(shù)據(jù)導(dǎo)入、數(shù)據(jù)存儲和數(shù)據(jù)管理。其中數(shù)據(jù)導(dǎo)入??是將獲取到的圖數(shù)據(jù)按照特定的格式導(dǎo)入到圖數(shù)據(jù)庫Ne〇4j中,比如要使用CSV格??式的數(shù)據(jù)文件,同時指定數(shù)據(jù)文件的表頭、指定數(shù)據(jù)節(jié)點ID的數(shù)據(jù)類型、指定圖中??的關(guān)系的起始節(jié)點和結(jié)束節(jié)點、指定關(guān)系的類型;而對于超大規(guī)模的數(shù)據(jù)文件,將其??導(dǎo)入到分布式文件系統(tǒng)HDFS;數(shù)據(jù)存儲是將導(dǎo)入到Ne〇4j的圖數(shù)據(jù)按照節(jié)點和邊的??不同類型進行分類存儲,并且對于不同應(yīng)用場景的圖數(shù)據(jù)生成不同的連接圖進行存儲;??27??
?I??|?createByArgs()?>|??圍?createNoArgs()?.-略一?mi?;??_??calculate(args)-—??---|??t?Ho?f?*|?!???^createByArgs(^——一^——???createNoArgs?(〉—????;???_?構(gòu)適‘???i?calculate(args)?!?1?順??????_4——......——?i?—i???|?|?;?!?i?!?■??圖3-12抽象工廠時序圖??Fig.3-12?Abstract?Method?Sequence?Diagram??3.5?本章小結(jié)??本章論述了整個圖計算平臺在整體設(shè)計層面所涉及到的需求分析,包括整個框架??所需要完成的功能,將這些功能劃分為基礎(chǔ)組件、中間組件和應(yīng)用組件,同時對于完??40??
【參考文獻】:
期刊論文
[1]基于Neo4j桂枝湯類方知識圖譜的研究與實現(xiàn)[J]. 趙凱,王華星,施娜,薩震,許筱穎. 世界中醫(yī)藥. 2019(10)
[2]一種基于Neo4j圖數(shù)據(jù)庫的模糊查詢研究與實現(xiàn)[J]. 李雪. 計算機技術(shù)與發(fā)展. 2018(11)
[3]基于Neo4j的重點人超級關(guān)系分析應(yīng)用探索[J]. 劉婷,林君. 電信快報. 2018(06)
[4]基于Neo4j圖數(shù)據(jù)庫的課程體系知識圖譜系統(tǒng)設(shè)計與實現(xiàn)[J]. 肖慶都,屈亮亮,侯霞. 電腦知識與技術(shù). 2017(36)
[5]基于深度學(xué)習(xí)與圖數(shù)據(jù)庫構(gòu)建中文商業(yè)知識圖譜的探索研究[J]. 王仁武,袁毅,袁旭萍. 圖書與情報. 2016(01)
[6]基于Neo4j的電力大數(shù)據(jù)建模及分析[J]. 馬義松,武志剛. 電工電能新技術(shù). 2016(02)
[7]基于圖數(shù)據(jù)庫Neo4j的話單分析研究[J]. 黃冰倩,黃淑華,劉思言. 網(wǎng)絡(luò)安全技術(shù)與應(yīng)用. 2015(07)
[8]基于Neo4j處理大數(shù)據(jù)中元數(shù)據(jù)溯源的研究[J]. 靳永超,吳懷谷. 現(xiàn)代計算機(專業(yè)版). 2015(08)
[9]圖數(shù)據(jù)庫在網(wǎng)絡(luò)優(yōu)化系統(tǒng)中的應(yīng)用[J]. 席瀚英. 電信技術(shù). 2014(09)
碩士論文
[1]基于Neo4j的人員關(guān)聯(lián)分析與吸毒傾向預(yù)測平臺的設(shè)計[D]. 祁爍.山東大學(xué) 2019
[2]基于Neo4j圖數(shù)據(jù)庫構(gòu)建中學(xué)語文詩詞知識圖譜[D]. 馮俐.陜西師范大學(xué) 2019
[3]基于Neo4j的煤礦領(lǐng)域知識圖譜構(gòu)建及查詢方法研究[D]. 葉帥.中國礦業(yè)大學(xué) 2019
[4]基于SEF框架的代碼生成工具的設(shè)計與實現(xiàn)[D]. 趙麗娜.山東大學(xué) 2018
[5]基于Spark平臺支持空間數(shù)據(jù)管理的圖計算框架的研究[D]. 王昌圓.山東大學(xué) 2018
[6]基于Spark的子圖匹配算法研究與實現(xiàn)[D]. 郭騰.北京交通大學(xué) 2017
[7]基于Spark的社會網(wǎng)絡(luò)分析系統(tǒng)的設(shè)計與實現(xiàn)[D]. 崔印昌.北京郵電大學(xué) 2017
[8]基于MapReduce的圖數(shù)據(jù)庫頻繁子圖挖掘[D]. 王凱.華中科技大學(xué) 2016
[9]基于NOSQL數(shù)據(jù)庫的路網(wǎng)最短路徑查詢及優(yōu)化研究[D]. 于海鵬.北京工業(yè)大學(xué) 2016
[10]基于Neo4j的大數(shù)據(jù)組織檢索研究與應(yīng)用[D]. 陸鵬.東南大學(xué) 2015
本文編號:3128240
本文鏈接:http://sikaile.net/kejilunwen/shengwushengchang/3128240.html
最近更新
教材專著