FG-Index: Towards Verification-Free Query Processing on Graph Databases

簡介

這篇paper是香港中文大學James Cheng 鄭老師發在sigmod 2007上的一篇paper。這篇paper主要用頻繁子圖來建索引,來加速圖同構算法。

衆所周知,圖數據的查詢因爲涉及到子圖同構的問題(NPC),所以非常消耗時間。圖同構常見的步驟都是生成候選集合(candidate set)將不可能入選結果集的結果過濾掉,第二部就是對候選集合進行驗證。

假設現在存在一組頻繁子圖FG(Frequent subGraph),如果查詢圖是FG當中的一個元素,那麼FG-index就可以直接把對應的結果返回給用戶。如果查詢不存在FG當中,那麼FG-index會給出一個跟正確結果很相近的候選集合,那麼這樣的驗證也相應的可以減少很多。

爲了可以讓索引載入到內存當中,文章中提出了δ-Tolerance Closed Frequent Graphs。可以調整索引的大小。

背景

  1. 圖同構兩大步驟:過濾=>驗證
  2. 頻繁出現的圖意味着過濾以後的候選集合會非常大,那麼就需要驗證很多的候選結果。
  3. 較少出現的圖意味着利用FG-index可以返回基本和結果一樣的候選集合。
  4. 需要解決的一個問題是,如果選定的閾值太小δ,那麼index將會太大。這也是文章想解決的一個問題。

問題定義

子圖同構(subgraph isomorphism)。可自行查閱wiki或者原文。
文章基於無向帶標籤連通圖。有向圖可在下述方法中做擴展。

基本定義

  1. 圖頻率 給定一個圖數據庫D,給定一個圖g,所有g’滿足g是g’的子圖,g’是D中的一個元素,這樣g’的數量表示g的頻率。直觀來講就是g是D中多少個圖的子圖。計作freq(g).
  2. 頻繁子圖 用戶給定σ,當一個圖g的freq(g)大於σ時,那麼就稱g是一個頻繁子圖。
  3. 最大頻繁子圖MFG 對於一個頻繁子圖的集合F,對於F中的一個元素g,不存在其他的元素g’是g的超圖,那麼g是F當中的一個MFG。
  4. 閉頻繁子圖CFG 對於一個頻繁子圖的集合F,對於F中的一個元素g,不存在g’是g的超圖,並且freq(g’)=freq(g),那麼我們稱g是F的一個CFG。

#

======To be continue=========

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章