国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于廣度優(yōu)先遍歷的圖處理優(yōu)化方法

      文檔序號(hào):9200443閱讀:415來源:國知局
      一種基于廣度優(yōu)先遍歷的圖處理優(yōu)化方法
      【技術(shù)領(lǐng)域】
      [0001] 本發(fā)明屬于計(jì)算機(jī)數(shù)據(jù)處理技術(shù)領(lǐng)域,更具體地,涉及一種基于廣度優(yōu)先遍歷的 圖處理優(yōu)化方法。
      【背景技術(shù)】
      [0002] 圖是計(jì)算機(jī)科學(xué)中最常用的一類抽象數(shù)據(jù)結(jié)構(gòu),現(xiàn)實(shí)世界中的許多應(yīng)用場景都需 要用圖結(jié)構(gòu)表示,與圖相關(guān)的處理和應(yīng)用幾乎無處不在。傳統(tǒng)應(yīng)用如最優(yōu)運(yùn)輸路線問題、地 圖、科技文獻(xiàn)引用關(guān)系、疾病爆發(fā)路徑預(yù)測等;新興應(yīng)用如社交網(wǎng)絡(luò)分析、語義Web分析、數(shù) 據(jù)挖掘、蛋白質(zhì)分解等。
      [0003] 伴隨著圖應(yīng)用及圖處理技術(shù)的快速發(fā)展,圖算法理論也層出不窮。廣度優(yōu)先搜索 是最簡便的圖搜索算法之一,也是很多重要圖算法的基礎(chǔ)。
      [0004] 隨著信息化時(shí)代的到來,各種信息以爆炸模式增長,導(dǎo)致圖的規(guī)模日益增大,我們 通常要分析處理圖的上億個(gè)頂點(diǎn)和邊,面對如此大規(guī)模的圖結(jié)構(gòu),如何有效的執(zhí)行圖處理 就成為一個(gè)新的挑戰(zhàn)。
      [0005] 現(xiàn)有大規(guī)模圖數(shù)據(jù)處理的主要研宄方向之一是基于外存儲(chǔ)器存儲(chǔ)和處理圖數(shù)據(jù)。 但該方式的問題是如何在分層存儲(chǔ)體系上高效地進(jìn)行圖處理。然而由于圖數(shù)據(jù)的高關(guān)聯(lián) 性、低局部性,以及圖算法訪問的隨機(jī)性,操作系統(tǒng)中傳統(tǒng)的基于時(shí)空局部性優(yōu)化的存儲(chǔ)訪 問機(jī)制很難發(fā)揮作用,而圖的遍歷查詢是大部分圖算法的構(gòu)建基礎(chǔ),在外存模式下如何優(yōu) 化圖查詢的1/0,加快圖遍歷的性能由此就成為高效處理圖數(shù)據(jù)的關(guān)鍵。

      【發(fā)明內(nèi)容】

      [0006] 針對現(xiàn)有技術(shù)的以上缺陷或改進(jìn)需求,本發(fā)明提供了一種基于廣度優(yōu)先遍歷的圖 處理優(yōu)化方法,其目的在于在不改變圖處理模型和用戶操作復(fù)雜度的前提下,以充分利用 外存儲(chǔ)設(shè)備順序I/O性能和提高系統(tǒng)文件緩存命中率。通過使用BFS算法重新布局外存儲(chǔ) 設(shè)備上的數(shù)據(jù),使其符合一般圖數(shù)據(jù)的I/O特性,優(yōu)化圖處理的性能。
      [0007] 為實(shí)現(xiàn)上述目的,本申請?zhí)峁┝艘环N基于廣度優(yōu)先遍歷的圖處理優(yōu)化方法。
      [0008] 該方法的步驟如下:
      [0009] (1)輸入圖數(shù)據(jù)文件;
      [0010] (2)判斷圖數(shù)據(jù)文件是否已經(jīng)根據(jù)圖頂點(diǎn)進(jìn)行編號(hào)排序形成有序文件,若是,則跳 轉(zhuǎn)(4)步繼續(xù)執(zhí)行;若否,跳轉(zhuǎn)到(3)步執(zhí)行;
      [0011] (3)將圖數(shù)據(jù)文件按頂點(diǎn)編號(hào)排序,形成順序文件;
      [0012] (4)根據(jù)順序文件生成其對應(yīng)的索引文件信息;
      [0013] (5)將圖的頂點(diǎn)及邊的索引信息加載入內(nèi)存;
      [0014] (6)隨機(jī)選取一個(gè)頂點(diǎn)進(jìn)行廣度優(yōu)先遍歷,生成廣度優(yōu)先遍歷樹,并記錄圖頂點(diǎn)的 訪問順序,生成遍歷后的序列文件;
      [0015] (7)根據(jù)遍歷序列文件與原始頂點(diǎn)編號(hào),生成頂點(diǎn)映射表;
      [0016] (8)依次讀取順序文件內(nèi)容,并根據(jù)頂點(diǎn)映射表來更新頂點(diǎn)編號(hào)并重新排序,直至 完成對所述圖數(shù)據(jù)文件中所有頂點(diǎn)的操作,此即為布局處理后的圖數(shù)據(jù)文件,從而完成整 體的圖像遍歷處理過程。
      [0017] 另外,圖結(jié)構(gòu)存儲(chǔ)文件格式現(xiàn)在主要有邊列表(Edgelist)、鄰接列表 (Adjacencylist)、CSR (Compressed Sparse Row)、CSC (Compressed Sparse Column)等等, 其中CSR和CSC格式是完全按頂點(diǎn)編號(hào)排序的順序文件。
      [0018] 總體而言,通過本發(fā)明所構(gòu)思的以上技術(shù)方案與現(xiàn)有技術(shù)相比,由于圖數(shù)據(jù)文件 具有頂點(diǎn)、邊數(shù)量巨大的特點(diǎn)以及BFS路徑最短的特點(diǎn),由此,采用了 BFS樹數(shù)據(jù)布局方 案,實(shí)現(xiàn)圖數(shù)據(jù)的重新布局,所需時(shí)間短至秒數(shù)量級,相對于圖數(shù)據(jù)處理時(shí)間可以忽略不 計(jì),但對隨后圖數(shù)據(jù)的處理效率有很大的提高,特別是針對現(xiàn)有單機(jī)外存模式類型的圖處 理引擎如 GraphChi (Aapo Kyrola 等人 2012 年發(fā)表的文章 GraphChi: Large-Scale Graph Computation on Just a PC),處理效率可以提高幾倍。
      【附圖說明】
      [0019] 圖1為本發(fā)明的流程示意圖;
      [0020] 圖2為8個(gè)頂點(diǎn)的圖結(jié)構(gòu)及圖鄰接表;
      [0021] 圖3為重新編號(hào)后圖結(jié)構(gòu)及圖鄰接表。
      【具體實(shí)施方式】
      [0022] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。此外,下面所描述的本發(fā)明各個(gè)實(shí)施方式中所涉及到的技術(shù)特征只要 彼此之間未構(gòu)成沖突就可以相互組合。
      [0023] 本實(shí)例中選取8個(gè)頂點(diǎn)、11條邊的圖來作詳細(xì)說明,同時(shí)為了進(jìn)一步闡述清楚本 發(fā)明,假設(shè)一個(gè)BFS訪問序列為Li= a a2, a3......an,定義BFS訪問序列中相鄰兩頂點(diǎn)的 編號(hào)為連續(xù)編號(hào),則該序列的順序性加1,即ai+1_ai= 1時(shí)Δ」=1,其他情況下Δ」=0,則 定義一個(gè)BFS訪問序列的連續(xù)性為
      [0024] (1)輸入一個(gè)如圖2的圖數(shù)據(jù)文件,且文件格式為CSR,該圖的鄰接表信息也在圖 2中相應(yīng)給出。
      [0025] (2)判斷圖數(shù)據(jù)文件是否已根據(jù)圖頂點(diǎn)編號(hào)排序后的文件,根據(jù)用戶輸入的文件 格式為CSR,可以判斷該圖數(shù)據(jù)文件是已排序的文件,不需要對文件重新根據(jù)圖頂點(diǎn)編號(hào)排 序。
      [0026] (3)根據(jù)上述CSR順序文件生成其對應(yīng)的索引文件信息,。
      [0027] (4)將圖的頂點(diǎn)及邊的索引信息加載入內(nèi)存。
      [0028] (5)在本例中選取1號(hào)頂點(diǎn)作為BFS訪問的根頂點(diǎn)進(jìn)行廣度優(yōu)先遍歷,生成廣度優(yōu) 先遍歷樹,并記錄圖頂點(diǎn)的訪問順序?yàn)長1= {1,2, 5, 7, 3, 4, 6, 8},生成遍歷后的序列文件。
      [0029] (6)根據(jù)遍歷序列文件與原始頂點(diǎn)編號(hào),生成圖頂點(diǎn)的映射表為{1_>1,2_>2, 3_> 5, 4->7, 5->3, 6->4, 7->6, 8->8}。
      [0030] (7)依次讀取原順序文件內(nèi)容,并根據(jù)頂點(diǎn)映射表更新頂點(diǎn)編號(hào)并排序,得到圖3 所示的圖結(jié)構(gòu)及圖鄰接表,此即為布局處理后的順序圖數(shù)據(jù)文件。
      [0031] 根據(jù)圖2、圖3的結(jié)構(gòu)信息,均選取1號(hào)頂點(diǎn)作為BFS的訪問根頂點(diǎn),則相應(yīng)的BFS 訪問序列為L1= {1,2, 5, 7, 3, 4, 6, 8},L2= {1,2, 3, 4, 5, 6, 7, 8},進(jìn)而對應(yīng)的訪問順序性為 si = 2和s2 = 7,其中Sl< S2,使用BFS重新布局后的文件順序訪問次數(shù)增多,整體的圖 遍歷順序性提高,且隨著圖規(guī)模的增大,圖處理系統(tǒng)的效率也會(huì)相應(yīng)提高。
      [0032] 本領(lǐng)域的技術(shù)人員容易理解,以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以 限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含 在本發(fā)明的保護(hù)范圍之內(nèi)。
      【主權(quán)項(xiàng)】
      1. 一種基于廣度優(yōu)先遍歷的圖處理優(yōu)化方法,其特征在于:該方法包括以下步驟: (1) 輸入圖數(shù)據(jù)文件; (2) 判斷圖數(shù)據(jù)文件是否已經(jīng)根據(jù)圖頂點(diǎn)進(jìn)行編號(hào)排序形成有序文件,若是,則跳轉(zhuǎn) (4)步繼續(xù)執(zhí)行;若否,跳轉(zhuǎn)到(3)步執(zhí)行; (3) 將圖數(shù)據(jù)文件按頂點(diǎn)編號(hào)排序,形成順序文件; (4) 根據(jù)順序文件生成其對應(yīng)的索引文件信息; (5) 將圖的頂點(diǎn)及邊的索引信息加載入內(nèi)存; (6) 隨機(jī)選取一個(gè)頂點(diǎn)進(jìn)行廣度優(yōu)先遍歷,生成廣度優(yōu)先遍歷樹,并記錄圖頂點(diǎn)的訪問 順序,生成遍歷后的序列文件; (7) 根據(jù)遍歷序列文件與原始頂點(diǎn)編號(hào),生成頂點(diǎn)映射表; (8) 依次讀取順序文件內(nèi)容,并根據(jù)頂點(diǎn)映射表來更新頂點(diǎn)編號(hào)并重新排序,直至完成 對所述圖數(shù)據(jù)文件中所有頂點(diǎn)的操作,此即為布局處理后的圖數(shù)據(jù)文件,從而完成整體的 圖像遍歷處理過程。
      【專利摘要】本發(fā)明公開了一種基于廣度優(yōu)先遍歷(BFS,Breadth First Search)的圖處理優(yōu)化方法,屬于計(jì)算機(jī)存儲(chǔ)及數(shù)據(jù)處理技術(shù)領(lǐng)域,解決現(xiàn)有基于外部存儲(chǔ)器的大規(guī)模圖處理系統(tǒng)在訪問圖數(shù)據(jù)時(shí)產(chǎn)生大量外存I/O,嚴(yán)重影響文件緩存命中率,削弱I/O性能的問題,從而提高圖處理系統(tǒng)的效率。本發(fā)明在不改變圖處理模型和用戶操作復(fù)雜度的前提下,以充分利用外存儲(chǔ)設(shè)備順序I/O性能和提高系統(tǒng)文件緩存命中率為目標(biāo),提出了針對圖遍歷類型應(yīng)用進(jìn)行I/O優(yōu)化的BFS樹數(shù)據(jù)布局方案。通過對不同來源、類型、尺寸的圖數(shù)據(jù)集進(jìn)行數(shù)據(jù)布局優(yōu)化,圖處理系統(tǒng)的效率有明顯提升。
      【IPC分類】G06F17/30
      【公開號(hào)】CN104915427
      【申請?zhí)枴緾N201510326328
      【發(fā)明人】施展, 馮丹, 歐陽夢云, 黃力, 郭鵬飛, 韓江, 余靜, 鮑匡迪
      【申請人】華中科技大學(xué)
      【公開日】2015年9月16日
      【申請日】2015年6月15日
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1