• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    大數(shù)據(jù)相似性連接查詢技術(shù)研究進(jìn)展

    2018-06-20 09:34:42馬友忠張智輝林春杰
    計(jì)算機(jī)應(yīng)用 2018年4期
    關(guān)鍵詞:代價(jià)相似性框架

    馬友忠,張智輝,林春杰

    (1.洛陽師范學(xué)院 信息技術(shù)學(xué)院,河南 洛陽 471934;2.河南省電子商務(wù)大數(shù)據(jù)處理與分析重點(diǎn)實(shí)驗(yàn)室(洛陽師范學(xué)院),河南 洛陽 471934;3.洛陽鐵路信息工程學(xué)校 計(jì)算機(jī)教研室,河南 洛陽 471900)(*通信作者電子郵箱ma_youzhong@163.com)

    0 引言

    相似性連接查詢是指給定兩個(gè)數(shù)據(jù)對(duì)象集合R和S(集合、向量、空間數(shù)據(jù)、字符串等),一個(gè)度量函數(shù)sim和一個(gè)相似度閾值ε,找出所有分別來自R和S的相似度大于閾值ε的數(shù)據(jù)對(duì)象對(duì)。相似性連接查詢是一種應(yīng)用廣泛且非常重要的操作,是很多數(shù)據(jù)分析及數(shù)據(jù)挖掘任務(wù)的基本操作,如分類、聚類、異常檢測(cè)、重復(fù)文檔檢測(cè)等。

    相似性連接查詢存在兩大挑戰(zhàn):一是相似度計(jì)算代價(jià)大,尤其是當(dāng)數(shù)據(jù)類型比較復(fù)雜或者是數(shù)據(jù)維度比較高時(shí),兩個(gè)數(shù)據(jù)對(duì)象之間的相似度的計(jì)算將耗費(fèi)很多時(shí)間。二是擴(kuò)展性問題。隨著大數(shù)據(jù)時(shí)代的到來,數(shù)據(jù)的規(guī)模日益增長,傳統(tǒng)的集中式算法或串行算法已經(jīng)不能在可接受的時(shí)間內(nèi)完成大規(guī)模數(shù)據(jù)集的相似性連接查詢?nèi)蝿?wù)。因此,如何借助最新的計(jì)算技術(shù),設(shè)計(jì)具有良好擴(kuò)展性的相似性連接查詢算法,成為目前大數(shù)據(jù)相似性連接查詢的重要研究內(nèi)容。MapReduce是一個(gè)由Google最先提出的分布式計(jì)算軟件框架,具有高可擴(kuò)展性、高可用性、高容錯(cuò)性等特點(diǎn),可以支持大規(guī)模數(shù)據(jù)的分布式處理,目前已經(jīng)成為大數(shù)據(jù)處理的首選平臺(tái)。為了解決大規(guī)模復(fù)雜數(shù)據(jù)類型的相似性連接查詢問題,很多學(xué)者針對(duì)基于MapReduce框架的相似性連接查詢算法進(jìn)行了深入研究,提出了很多創(chuàng)新的解決方案。

    根據(jù)分類標(biāo)準(zhǔn)的不同,相似性連接查詢可以有不同的分類方法??梢园凑諗?shù)據(jù)對(duì)象類型、對(duì)象集合的動(dòng)態(tài)性,以及查詢結(jié)果和處理方式的不同等標(biāo)準(zhǔn)來進(jìn)行劃分。不同分類標(biāo)準(zhǔn)得到的類別之間可能會(huì)有重疊,并且不同的數(shù)據(jù)類型,對(duì)象之間的相似度度量函數(shù)往往不同,因此所采用的方法也不相同,本文將主要按照不同數(shù)據(jù)對(duì)象類型的連接查詢方法進(jìn)行分別描述。表1描述了不同數(shù)據(jù)類型對(duì)應(yīng)的常用相似度度量函數(shù),其中,集合、向量和字符串的相似度度量有所重疊,部分方法可以通用。為便于描述,本文中集合主要采用杰卡德相似度和余弦相似度,向量主要采用歐氏距離,字符串主要采用編輯距離。

    表1 相似度度量函數(shù)

    另外,關(guān)于集中式的相似性連接查詢方法,文獻(xiàn)[1-3]已經(jīng)進(jìn)行了綜述,本文不再詳細(xì)描述。龐俊等[4]對(duì)基于MapReduce框架的海量數(shù)據(jù)相似性連接工作進(jìn)行了綜述,但是主要包含的是2013年及以前的部分研究工作。還有部分學(xué)者[5-6]對(duì)典型的基于MapReduce的相似性連接查詢算法進(jìn)行了實(shí)驗(yàn)驗(yàn)證和比較。本文將針對(duì)截至2017年的云計(jì)算環(huán)境下的大數(shù)據(jù)相似性連接查詢技術(shù)進(jìn)行更全面、深入的分析。

    1 集合相似性連接查詢

    集合相似性連接查詢廣泛應(yīng)用于文本分類、聚類、重復(fù)網(wǎng)頁檢測(cè)等應(yīng)用中,文本、網(wǎng)頁都可以表示成單詞的集合。集合的相似性度量主要包括杰卡德相似度、余弦相似度、重疊相似度和Dice相似度等。隨著數(shù)據(jù)規(guī)模的不斷擴(kuò)大,單機(jī)環(huán)境下的相似性連接算法已經(jīng)不能滿足性能要求,有很多學(xué)者基于MapReduce框架,提出了若干種針對(duì)大規(guī)模集合數(shù)據(jù)的相似性連接查詢處理方案,如表2所示。

    表2 集合相似性連接查詢方案

    表2描述了已有的大規(guī)模集合相似性連接查詢方案,并按照采用的技術(shù)不同,將其分為六類:窮舉方案、前綴過濾、Word-Count-Like、混合方案、基于劃分的方法和基于位置敏感哈希的方法。各類方案的主要優(yōu)缺點(diǎn)和代表算法詳細(xì)描述如下。

    1)窮舉方案。

    文獻(xiàn)[7]較早利用MapReduce框架對(duì)相似性連接查詢問題進(jìn)行了研究,并提出了Brute force算法和基于索引的算法。其中,Brute force算法通過精確匹配找出所有滿足條件的文本對(duì)。該算法在Map階段使用暴力法,計(jì)算出每一個(gè)文本和其他所有文本的相似度,然后輸出所有相似度不為零的文本對(duì);在Reduce階段,針對(duì)每一個(gè)文本求出與其相似度最大的k個(gè)文本。該算法可以求出精確的結(jié)果,但是計(jì)算代價(jià)比較大。索引算法可以在一定程度上降低計(jì)算代價(jià),提升性能,但是結(jié)果的精度會(huì)有所下降。總體來看,Brute force算法沒有進(jìn)行任何過濾,任意兩個(gè)集合都需要比較一次;基于索引的算法雖然可以進(jìn)行一定程度的過濾,但是過濾效果不理想,重復(fù)比較次數(shù)仍然會(huì)比較多。

    2)前綴過濾。

    文獻(xiàn)[8]在MapReduce框架下,提出了一種基于前綴過濾(prefix filtering)技術(shù)的大規(guī)模集合數(shù)據(jù)相似性連接查詢方案。文獻(xiàn)[8]中處理的數(shù)據(jù)對(duì)象是一些記錄(record)的集合,每一條記錄由記錄標(biāo)識(shí)和其他若干個(gè)屬性組成,其中連接屬性是項(xiàng)(token)的集合。前綴過濾是一種很有效的過濾方法,其基本思想是:假設(shè)數(shù)據(jù)集中所有的項(xiàng)(token)按照其出現(xiàn)頻度由低到高進(jìn)行排序,得到一個(gè)序列O,數(shù)據(jù)集中的每一個(gè)集合都按照序列O進(jìn)行排列,集合A的p-前綴就是集合A的前p個(gè)項(xiàng)。假定相似性度量采用杰卡德相似度,閾值為t,則如果J(A,B)≥t,那么A的(|A|-「t·|A|?+1)-前綴和B的(|B|-「t·|B|?+1)-前綴至少含有一個(gè)公共的項(xiàng)(token)。即如果兩個(gè)集合的前綴沒有公共的項(xiàng),則這兩個(gè)集合肯定不相似。根據(jù)上述基本思想,文獻(xiàn)[8]在MapReduce框架下實(shí)現(xiàn)了前綴過濾方案。該方案主要分為三個(gè)階段,分別為項(xiàng)排序(Token Ordering)、相似對(duì)生成(RID-Pair Generation)和最終結(jié)果生成(Record Join),每個(gè)階段由一個(gè)或多個(gè)MapReduce Job來完成。項(xiàng)排序階段的主要目的是通過計(jì)算數(shù)據(jù)集合的相關(guān)統(tǒng)計(jì)信息,得到具有較好過濾效果的集合前綴,具體方法是計(jì)算出集合中所有項(xiàng)(token)出現(xiàn)的頻率,然后按照出現(xiàn)頻率將所有項(xiàng)進(jìn)行升序排列,作者分別提出了基本排序法(basic token ordering)和一階段排序法(using one phase to order tokens)來完成排序任務(wù)。相似對(duì)生成階段主要是根據(jù)連接的屬性,找出相似度大于給定閾值的記錄對(duì),該階段由一個(gè)MapReduce Job完成。在Map階段,針對(duì)每一個(gè)輸入記錄,首先抽取出其ID和連接屬性,然后根據(jù)前一階段得到的項(xiàng)序列,計(jì)算出連接屬性的前綴,接著根據(jù)連接屬性的前綴構(gòu)建倒排索引。針對(duì)每一個(gè)記錄,會(huì)生成若干個(gè)〈key,value〉對(duì)的集合,其中:key是記錄前綴中的每一個(gè)項(xiàng);value包括該記錄的ID和連接屬性。在Reduce階段,具有相同key值的value組合在一起,發(fā)送到同一個(gè)reducer中。同一個(gè)key就對(duì)應(yīng)著包含該key的記錄列表,這些記錄有可能相似,針對(duì)這些記錄,作者提出了嵌套循環(huán)鏈接和PPJoin+兩種方法來計(jì)算相似度大于閾值t的記錄對(duì),包括記錄ID和相似度。在最終結(jié)果生成階段,將前一階段得到的相似對(duì)集合與原始數(shù)據(jù)集合進(jìn)行連接,獲取記錄的完整信息,得到最終結(jié)果。文獻(xiàn)[9]的解決思路與文獻(xiàn)[8]類似,改進(jìn)之處在于文獻(xiàn)[9]除了前綴過濾之外,又增加了長度過濾,這樣就可以進(jìn)一步提高性能。

    為了進(jìn)一步提高過濾效果,減少候選對(duì)的數(shù)量,文獻(xiàn)[10]中提出了一種基于多前綴的集合相似性連接方案。文獻(xiàn)[8]中所使用的前綴過濾技術(shù)雖然在一定程度上減少了候選對(duì)的數(shù)量,但是在候選對(duì)中仍然有很多是不相似的,因?yàn)榧词箖蓚€(gè)對(duì)象的前綴有公共的項(xiàng),這兩個(gè)對(duì)象也不一定相似。文獻(xiàn)[10]通過分析、觀察發(fā)現(xiàn),集合的前綴是按照某個(gè)項(xiàng)的排序生成的,不同的排序,所產(chǎn)生的前綴就不一樣?;谠撍枷?文獻(xiàn)[10]為每個(gè)對(duì)象按照不同的排序生成多個(gè)不同的前綴,其中用第一個(gè)前綴來建立倒排索引,用其他的前綴來進(jìn)行進(jìn)一步的過濾,最終通過過濾的候選對(duì)才需要進(jìn)行最后的驗(yàn)證,從而大大減少了計(jì)算的代價(jià)。同時(shí),文獻(xiàn)[10]還提出了一個(gè)代價(jià)模型,來確定序列(即前綴)的數(shù)量,并提出了多種排序方案,主要包括隨機(jī)選擇(random selection)、基于反序列的隨機(jī)選擇(random selection with reverse ordering)和基于詞頻的全局排序(TF as the first global ordering)。作者還在單機(jī)環(huán)境及MapReduce框架下分別對(duì)該算法進(jìn)行了實(shí)現(xiàn)及驗(yàn)證,實(shí)驗(yàn)結(jié)果表明,基于多前綴的集合相似性連接方法具有較好的性能。

    但是基于前綴過濾技術(shù)的方案也存在一些不足之處:a)網(wǎng)絡(luò)傳輸代價(jià)較大。每個(gè)集合都要復(fù)制多次,復(fù)制的次數(shù)等于前綴的長度,因此對(duì)于較長的集合來講,數(shù)據(jù)復(fù)制率太高,會(huì)導(dǎo)致網(wǎng)絡(luò)傳輸代價(jià)比較大。b)重復(fù)比較次數(shù)比較多。對(duì)于任意兩個(gè)集合,如果它們的前綴中有k個(gè)公共項(xiàng),則會(huì)重復(fù)比較k次。

    3)Word-Count-Like方案。

    為了克服前綴方案中存在的缺點(diǎn),文獻(xiàn)[11]中提出了一種“Word-Count-Like”的解決方案Pairwise Join,之所以取名為“Word-Count-Like”,是因?yàn)樵摲桨赋浞掷昧薓apReduce框架的特性,基本思路類似于Word-Count程序。文獻(xiàn)[11]主要解決的是文檔的相似性連接問題,每一個(gè)文檔可以被表示成一個(gè)詞的權(quán)重的向量,相似性度量采用的是權(quán)重向量的內(nèi)積來表示。該方案主要分兩個(gè)階段來完成,第一階段主要生成倒排索引,第二階段用來計(jì)算任意兩個(gè)文檔的相似度,每個(gè)階段均由一個(gè)MapReduce Job來實(shí)現(xiàn)。在Job 1中:Map階段針對(duì)每一個(gè)輸入的文檔向量〈i,di〉,輸出〈key,value〉的集合〈t,〈i,di[t]〉,其中:i是文檔標(biāo)識(shí);di是權(quán)重向量;t是單詞;di[t]是t在文檔i中的權(quán)重。在Reduce端,同一個(gè)單詞t對(duì)應(yīng)的value被組合在一起,按照〈t,[〈i,di[t]〉,〈j,dj[t]〉,…]〉的形式輸出。在Job 2中,Map階段針對(duì)每一個(gè)〈t,[〈i,di[t]〉,〈j,dj[t]〉,…]〉進(jìn)行處理,輸出〈〈i,j〉,w=di[t]·dj[t]〉的集合,其中:〈i,j〉是兩個(gè)文檔的ID對(duì);w是t在兩個(gè)文檔中的權(quán)重的乘積。在Reduce端,與同一個(gè)〈i,j〉對(duì)對(duì)應(yīng)的w被組合在一起,對(duì)這些權(quán)重求和,得到的最終結(jié)果就是文檔對(duì)〈i,j〉的相似度。

    文獻(xiàn)[12]的基本思路與文獻(xiàn)[7]類似,提出了V-SMART-Join方案。不同之處在于文獻(xiàn)[12]中對(duì)處理方案進(jìn)行了一般化,處理的數(shù)據(jù)對(duì)象類型進(jìn)行了擴(kuò)充,可以處理集合、多重集合以及向量,相似性度量可以采用內(nèi)積、余弦相似度以及杰卡德相似度等。此外,文獻(xiàn)[12]中還提出了一些解決方案,用來高效處理傾斜數(shù)據(jù),并在大規(guī)模真實(shí)數(shù)據(jù)集上進(jìn)行了充分的實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,文獻(xiàn)[12]方案的性能比文獻(xiàn)[8]方案的性能要高30倍以上。

    Word-Count-Like方案的優(yōu)點(diǎn)是避免了重復(fù)比較,任何一對(duì)文檔只需要比較一次。另外,文檔本身沒有被重復(fù)復(fù)制,傳輸?shù)膬H僅是各個(gè)單詞對(duì)應(yīng)的權(quán)重,所以大大降低了網(wǎng)絡(luò)傳輸?shù)拇鷥r(jià)。但是該類方案也存在一些局限性,任何兩個(gè)文檔只要包含一個(gè)公共元素,都需要比較一次,沒有利用到相似度閾值和前綴的過濾功能,因此會(huì)產(chǎn)生很多不必要的候選對(duì)。

    4)混合方案。前綴過濾方案和Word-Count-Like方案各有優(yōu)缺點(diǎn),文獻(xiàn)[13]中結(jié)合上述兩種方案的優(yōu)點(diǎn),提出了一種混合方案Self-Join,從而進(jìn)一步提高了集合相似性連接的效率。文獻(xiàn)[13]對(duì)文獻(xiàn)[11]進(jìn)行了擴(kuò)充,在建立倒排索引時(shí)候,利用前綴過濾技術(shù)來縮短索引列表的長度,從而可以大幅減少中間結(jié)果的數(shù)量。由于采用了前綴進(jìn)行過濾,對(duì)于任意一個(gè)候選對(duì)中的文檔來說,可能只包含一部分權(quán)重信息,因此還需要兩次遠(yuǎn)程操作來獲取其相應(yīng)的權(quán)重信息,從而計(jì)算出最終的相似度。由于遠(yuǎn)程操作的代價(jià)一般比較大,為了解決這一問題,文獻(xiàn)[13]又提出了一種優(yōu)化方案——SSJ-2R (Double-Pass MapReduce Prefix-Filtering with Remainder File)。

    該方案的優(yōu)點(diǎn)是將前綴過濾技術(shù)與Word-Count-Like方案進(jìn)行了結(jié)合,從而減少了候選對(duì)的數(shù)量;沒有重復(fù)計(jì)算,每一對(duì)只計(jì)算一次。不足之處在于,因候選對(duì)中沒有集合的全部信息,所以需要在候選對(duì)的基礎(chǔ)上,進(jìn)行進(jìn)一步的處理,進(jìn)行數(shù)據(jù)的傳輸?shù)?候選對(duì)的數(shù)量與ALL Pairs方法中候選對(duì)的數(shù)量是一樣的,即只要兩個(gè)集合的前綴中至少含有一個(gè)公共項(xiàng),就成為一個(gè)候選對(duì)。

    5)基于劃分的方法。文獻(xiàn)[14]中提出了一種基于垂直劃分的相似性連接查詢算法FS-Join,可以有效避免重復(fù)計(jì)算,并可以實(shí)現(xiàn)Map端和Reduce端的負(fù)載均衡。但是,樞軸(Pivot)的選擇以及樞軸個(gè)數(shù)的確定對(duì)該算法的性能影響較大,需要花費(fèi)較大的代價(jià)確定樞軸及其個(gè)數(shù)。為了減少重復(fù)計(jì)算的代價(jià),Greedy+[15]設(shè)計(jì)了一種新的劃分機(jī)制,將集合劃分成若干子集,并確保:如果兩個(gè)集合相似,那么它們一定有相同的子集。

    6)基于位置敏感哈希的方法。個(gè)性化位置敏感哈希(Personalized Locality Sensitive Hashing, PLSH)方法[16]在傳統(tǒng)位置敏感哈希技術(shù)的基礎(chǔ)上,提出了一種新的采用靈活閾值的分塊技術(shù)(banding technique),從而可以大幅減少偽正例的個(gè)數(shù),提高計(jì)算效率,并能夠?qū)崿F(xiàn)偽正例和偽反例之間的平衡。

    2 向量相似性連接查詢

    向量數(shù)據(jù)相似性連接查詢針對(duì)的數(shù)據(jù)類型是向量,包括低維向量和高維向量,如圖形、圖像、Web文檔、基因表達(dá)數(shù)據(jù)等多種數(shù)據(jù)經(jīng)過處理后,都可以用向量來表示。向量的相似性度量也有很多種,包括余弦相似度、杰卡德相似度、歐氏距離和閔可夫斯基距離等,本文將主要研究基于歐氏距離的解決方案。根據(jù)返回結(jié)果的不同,向量相似性連接查詢可以分為基于閾值的連接查詢、Top-k連接查詢和KNN連接查詢,具體信息如表3所示。

    閾值相似性連接查詢:文獻(xiàn)[17]中提出了一種稱為DAA(Dimension Aggregation Approximation)技術(shù)的降維方法,并在此基礎(chǔ)上提出了基于MapReduce框架的并行相似性連接查詢算法。DAA是受分段累積近似法(Piecewise Aggregate Approximation, PAA)技術(shù)的啟發(fā),PAA是時(shí)間序列中一種比較有效的數(shù)據(jù)降維方法,其核心思想是:將一個(gè)長度為n的時(shí)間序列,劃分成m段,形成一個(gè)長度為m的新序列,用每一段內(nèi)的所有元素的均值作為新序列的元素值,基于新序列,可以構(gòu)建一個(gè)新的距離函數(shù),該距離是原始序列距離的下界,因此可以基于降維后的序列來對(duì)原始向量進(jìn)行過濾。

    在DAA技術(shù)的基礎(chǔ)上,結(jié)合MapReduce框架,作者以嵌套循環(huán)連接算法為基礎(chǔ),提出了兩種新的并行化算法:一階段過濾驗(yàn)證算法OSFR(One-Stage Filtering-and-Refinement)和兩階段過濾驗(yàn)證算法TSFR(Two-Stage Filtering-and-Refinement)。在進(jìn)行數(shù)據(jù)傳輸?shù)倪^程中,OSFR除了傳輸降維后的向量之外,原始向量也要一起傳輸,在得到候選對(duì)以后,在驗(yàn)證階段就可以直接利用原始向量的信息計(jì)算原始距離。但是當(dāng)向量維度特別高時(shí),這種方案的網(wǎng)絡(luò)傳輸代價(jià)比較大。TSFR算法分為兩個(gè)階段來完成,在第一個(gè)階段僅僅使用降維后的低維向量進(jìn)行計(jì)算,得到候選對(duì)以后,再利用第二個(gè)階段去獲取原始向量信息,進(jìn)行最后的驗(yàn)證。該方案可以減少網(wǎng)絡(luò)傳輸?shù)拇鷥r(jià),但是在第二個(gè)階段需要遠(yuǎn)程獲取原始向量的信息,也需要一定的額外開銷。最后,作者提出了一個(gè)代價(jià)模型,用來進(jìn)行算法選擇,通過分析和實(shí)驗(yàn)驗(yàn)證表明,OSFR算法比較適合于較低維向量,TSFR算法比較適合于超高維向量。文獻(xiàn)[17]方案可以以較低的代價(jià)進(jìn)行過濾,從而減少不必要的比較。但是,該方案的時(shí)間復(fù)雜度仍然是O(n2),即任意兩個(gè)向量在低維空間上都需要比較一次。

    表3 向量相似性連接查詢技術(shù)

    文獻(xiàn)[18]中提出了一種基于網(wǎng)格劃分方法的大規(guī)模向量相似性自連接處理方案,該方案的核心思想是利用網(wǎng)格對(duì)數(shù)據(jù)對(duì)象進(jìn)行劃分,并按照相應(yīng)的過濾技術(shù),減少計(jì)算比較的次數(shù),降低網(wǎng)絡(luò)傳輸?shù)拇鷥r(jià)。以二維向量為例來進(jìn)行介紹:假設(shè)距離閾值為ε,首先將空間進(jìn)行網(wǎng)格劃分,格子的寬度為ε,對(duì)于每一個(gè)單元格內(nèi)的對(duì)象,只可能與自身以及周圍的八個(gè)單元格內(nèi)的對(duì)象相似,這樣就不需要與其他單元格內(nèi)的對(duì)象進(jìn)行比較,可以減少大量的計(jì)算量。為了保證計(jì)算的完整性,每一個(gè)單元格內(nèi)的數(shù)據(jù)都需要復(fù)制3d次(d是向量的維數(shù)),在不同的Reduce上進(jìn)行計(jì)算。實(shí)際上有些計(jì)算和復(fù)制是重復(fù)的,可以采取一定的措施來減少數(shù)據(jù)復(fù)制的比率,即每一個(gè)單元格內(nèi)的對(duì)象只與其自身和左下方的單元格內(nèi)的對(duì)象比較即可,這樣也可以保證計(jì)算的完整性,基于這種方法,數(shù)據(jù)復(fù)制的比率可以降為2d。另外,作者還提出了一些優(yōu)化方法,在Reduce端進(jìn)一步減少計(jì)算的次數(shù)。該方法具有很好的并行特性,很容易在MapReduce框架下實(shí)現(xiàn)。其不足之處是該方法只適合于維度較低的情況,一旦維度比較高時(shí),其性能急劇下降。

    為了解決這一問題,文獻(xiàn)[19]對(duì)文獻(xiàn)[18]方案進(jìn)行了擴(kuò)充,提出了一種新的基于MapReduce的連接方案——PHiDJ(Parallel High-Dimensional Join),PHiDJ方案主要通過對(duì)維度分組和變長的網(wǎng)格劃分來提高連接速度。具體思路為:首先把d個(gè)維度(高維)劃分成若干個(gè)互不相交的組(低維),每一個(gè)組包含若干個(gè)維;然后針對(duì)每一個(gè)組,再采用文獻(xiàn)[18]方法處理,最后進(jìn)行驗(yàn)證、過濾。另外,文獻(xiàn)[18]采用的是均勻網(wǎng)格劃分法(等寬),文獻(xiàn)[19]則采用了變長的網(wǎng)格劃分方案,具有更好的適應(yīng)性和過濾效果。作者通過大量的實(shí)驗(yàn)結(jié)果表明,文獻(xiàn)[19]算法比文獻(xiàn)[18]算法具有更好的性能,并且能夠處理更高維的向量。

    文獻(xiàn)[20-21]中提出了一種基于MapReduce框架的相似性連接查詢算法MRSimJoin(MapReduce Similarity Join),該算法的核心思想是從數(shù)據(jù)集中隨機(jī)選取k個(gè)向量作為中樞,然后將每一個(gè)向量分配到距離最近的中樞所在的分區(qū),這樣可以形成k個(gè)基本分區(qū)。由于基本分區(qū)之間的向量仍有可能相似,因此,兩個(gè)不同基本分區(qū)邊界中的向量組成窗體對(duì)分區(qū)。如果某個(gè)分區(qū)的大小小于單個(gè)節(jié)點(diǎn)所能處理的最大向量數(shù),那么該分區(qū)就不需要再進(jìn)一步劃分,可以直接這對(duì)該分區(qū)執(zhí)行相似性連接查詢操作;反之,則需要對(duì)該分區(qū)作進(jìn)一步劃分。每一輪劃分都由一個(gè)MapRedcue Job來負(fù)責(zé)實(shí)現(xiàn)。

    文獻(xiàn)[22]對(duì)MRSimJoin算法[20]進(jìn)行了改進(jìn),提出了一種MapReduce框架下增量式數(shù)據(jù)相似性(MapReduce-based Similarity Join for Incremental Data Set,MRSJ_IDS)連接算法,該算法能夠支持增量式數(shù)據(jù)集的相似性連接查詢。MRSJ_IDS算法的基本思想是:首先通過抽樣的方式獲得一個(gè)樣本集合,然后對(duì)樣本集合進(jìn)行聚類,將各個(gè)類的中心作為中樞,按照MRSimJoin算法中的方法對(duì)全部數(shù)據(jù)進(jìn)行劃分,從而得到基本分區(qū)和窗體對(duì)分區(qū)。針對(duì)每一個(gè)分區(qū)創(chuàng)建一個(gè)KD-樹索引,并計(jì)算出相似對(duì)。對(duì)于新增數(shù)據(jù),首先根據(jù)事先確定的劃分原則找到相應(yīng)的分區(qū),再根據(jù)該分區(qū)的KD-樹索引進(jìn)行查詢、插入操作,從而獲得新增數(shù)據(jù)對(duì)應(yīng)的相似對(duì),并對(duì)原有的KD-樹索引進(jìn)行更新。

    FACET(FAst and sCalable maprEduce similariTy join)[23]以余弦相似度來衡量向量之間的相似度。由于文獻(xiàn)[8-10]中提出的前綴過濾方法只適用于集合數(shù)據(jù),作者針對(duì)向量數(shù)據(jù)和余弦相似度提出了新的前綴過濾機(jī)制和長度過濾機(jī)制,并結(jié)合MapReduce框架設(shè)計(jì)了并行實(shí)現(xiàn)算法FACET[23],可以快速、精確計(jì)算出所有的相似對(duì)。

    SAX-Based HDSJ(Symbolic Aggregate approXimation based High-Dimensional Similarity Join)[24]采用PAA對(duì)高維向量進(jìn)行降維,并在此基礎(chǔ)上,利用符號(hào)累積近似法(Symbolic Aggregate Approximation, SAX)轉(zhuǎn)換成SAX字符串,基于SAX可以對(duì)原始高維向量進(jìn)行分組,由于SAX字符串之間的距離是向量之間原始距離的下界,因此,可以利用SAX進(jìn)行有效過濾。SAX的過濾效果直接影響到相似性連接查詢的效率。為了進(jìn)一步提高過濾效果和減小過濾代價(jià),文獻(xiàn)[25]在SAX-Based HDSJ[24]的基礎(chǔ)上提出了基于多PAA的相似性連接查詢方案MP-V-SJQ。

    為了減少不必要的比較,并實(shí)現(xiàn)各個(gè)計(jì)算節(jié)點(diǎn)的負(fù)載均衡,文獻(xiàn)[26]中提出了基于動(dòng)態(tài)網(wǎng)格劃分的相似性連接查詢方案Grid-Based SJ(Grid-Based Similarity Join):首先通過采樣的方法進(jìn)行動(dòng)態(tài)網(wǎng)格劃分,并根據(jù)劃分結(jié)果構(gòu)造網(wǎng)格索引;然后依據(jù)網(wǎng)格索引對(duì)所有數(shù)據(jù)進(jìn)行分配和計(jì)算,盡量確保各計(jì)算節(jié)點(diǎn)負(fù)載均衡。

    SJT(Similarity Join Tree)[27]通過計(jì)算所有點(diǎn)與某個(gè)選定點(diǎn)之間的距離,將原始數(shù)據(jù)映射到一維空間內(nèi),并在一維空間內(nèi)使用距離閾值進(jìn)行等寬劃分。如果某塊內(nèi)的數(shù)據(jù)個(gè)數(shù)超過一定閾值,可以對(duì)該塊進(jìn)行進(jìn)一步劃分。為了能夠較好地描述上述數(shù)據(jù)劃分思路,作者在SJT[27]中設(shè)計(jì)了相似性連接樹。既可以減少不必要的比較計(jì)算,也可以實(shí)現(xiàn)各個(gè)計(jì)算節(jié)點(diǎn)的負(fù)載均衡。

    K最近鄰(K-Nearest Neighbor, KNN)相似性連接查詢:文獻(xiàn)[28]最早對(duì)基于MapReduce框架的KNN連接查詢問題進(jìn)行了研究,為了減少比較次數(shù),降低網(wǎng)絡(luò)傳輸代價(jià),文獻(xiàn)[28]中提出了一種基于空間填充曲線技術(shù)的近似KNN連接查詢方案zKNNJ(z-order basedK-Nearest Neighbor Join)。

    zKNNJ的基本思路是:首先采用z-order方法將d維空間的點(diǎn)轉(zhuǎn)換成一維數(shù)據(jù),并按照z-order值進(jìn)行排序;在此基礎(chǔ)上,d維空間的KNN連接查詢可以轉(zhuǎn)換成一維上的范圍查詢;為了提高查詢結(jié)果的準(zhǔn)確度,可以將原始向量轉(zhuǎn)換成多個(gè)一維序列。基于上述思想,作者提出了基于MapReduce的并行計(jì)算方案H-zKNNJ。H-zKNNJ基本思路是:首先將集合R和S按照上述的轉(zhuǎn)換方法,轉(zhuǎn)換成兩個(gè)一維的序列;接著將兩個(gè)一維序列分別劃分成n個(gè)組,劃分的時(shí)候要求R和S具有相同的劃分邊界,并且要確保劃分的均衡性,作者提出了一種基于采樣技術(shù)的劃分方案;將向量進(jìn)行劃分以后,對(duì)于R中的每一組Ri,從S中找出可能滿足KNN查詢要求的集合Si′(可能包含S中多個(gè)組的數(shù)據(jù)),最后將Ri和Si′中的向量進(jìn)行比較即可得到KNN的查詢結(jié)果。但是H-zKNNJ也存在一些不足之處,如只能返回近似的結(jié)果、不能有效地處理較高維度的向量等。

    與文獻(xiàn)[28]返回近似的KNN連接查詢結(jié)果不同,文獻(xiàn)[29]中提出了一種精確的KNN連接查詢方案,該方案主要基于維諾圖(Voronoi Diagram)對(duì)數(shù)據(jù)進(jìn)行劃分?;舅悸肥?對(duì)于給定的兩個(gè)向量集合R和S,首先采用維諾圖把集合R劃分成k個(gè)互不相交的子集R1,R2,…,Rk;然后針對(duì)R中的每一個(gè)子集Ri,按照一定的方法,從集合S中找到一個(gè)對(duì)應(yīng)的子集Si,Si需要滿足如下要求:?r∈Ri,KNN(r,S)?Si,S的各個(gè)子集之間可能會(huì)有重疊。按照上述劃分方案,集合R中的每一個(gè)子集Ri只需要與對(duì)應(yīng)的子集Si進(jìn)行比較,這樣就可以大大降低網(wǎng)絡(luò)傳輸?shù)拇鷥r(jià),同時(shí)也減少很多不必要的計(jì)算。上述方案的難點(diǎn)有兩個(gè):一是如何對(duì)集合R進(jìn)行劃分;二是如何為R的每一個(gè)子集Ri尋找相應(yīng)的Si。在利用維諾圖對(duì)集合R進(jìn)行劃分時(shí),核心是中樞(pivot)的選擇,作者分別提出了隨機(jī)選擇(random selection)、最遠(yuǎn)選擇(farthest selection)和k-means選擇(k-means selection)三種不同的選擇方案,并分別進(jìn)行了實(shí)驗(yàn)驗(yàn)證。實(shí)驗(yàn)結(jié)果表明,該方案在處理中低維度向量時(shí)效果較好,但是無法有效處理超高維度向量。

    文獻(xiàn)[30]在嵌套循環(huán)連接框架的基礎(chǔ)上,分別提出了精確KNN(Distributed Sketched Grid based KNN Join using MapReduce,DSGMP-J)連接算法和近似KNN(Voronoi Diagram based KNN Join using MapReduce,VDMP-J)連接算法。在DSGMP-J算法中,首先采用DSG(Distributed Sketched Grid)對(duì)空間進(jìn)行劃分,然后針對(duì)每一個(gè)單元格內(nèi)的數(shù)據(jù)建立一個(gè)本地索引,這樣就可以利用本地的DSG索引來求出局部KNN結(jié)果。DSGMP-J方案雖然實(shí)現(xiàn)起來比較簡單,但是在進(jìn)行數(shù)據(jù)劃分時(shí),沒有考慮數(shù)據(jù)的真實(shí)分布情況,只是采用了簡單的均勻劃分方案。為了解決這一問題,作者采用維諾圖對(duì)數(shù)據(jù)進(jìn)行劃分,在此基礎(chǔ)上,提出了一種近似的KNN查詢方案VDMP-J。

    Top-k相似性連接查詢:文獻(xiàn)[31]中提出了基于MapReduce框架的Top-k相似性連接查詢方案。作者首先提出了兩種串行化算法,分別是divide-and-conquer算法和branch-and-bound算法;然后又提出了兩種基于MapReduce框架的并行化算法,分別是完全對(duì)劃分算法(All pair Partitioning Algorithm, TopK-P-MR)和關(guān)鍵對(duì)劃分算法(Essential Pair Partitioning Algorithm, TopK-F-MR)。TopK-P-MR算法實(shí)際上是一個(gè)嵌套循環(huán)連接算法,需要分兩個(gè)階段來實(shí)現(xiàn),首先找出局部的Top-k結(jié)果,然后再找出全局的Top-k結(jié)果。在計(jì)算局部Top-k時(shí),可以利用到前面提出的串行化算法。但是該方案的時(shí)間復(fù)雜度是O(n2),即任意兩個(gè)向量之間都需要計(jì)算一次,計(jì)算代價(jià)過大。為了解決這一問題,作者又提出了TopK-F-MR算法,該算法首先通過采樣的方法,找出第k個(gè)最小的距離,并以該距離作為Top-k結(jié)果的距離上界,然后根據(jù)該上界對(duì)數(shù)據(jù)進(jìn)行過濾和劃分,這樣就可以減少很多不必要的比較和計(jì)算,大大提高計(jì)算的效率。

    針對(duì)大規(guī)模高維向量,文獻(xiàn)[32]中提出了一種基于MapReduce框架的并行Top-k連接查詢算法SAX-Top-k。SAX-Top-k算法首先提出了一個(gè)基于采樣技術(shù)的Top-k閾值估計(jì)方法,并結(jié)合符號(hào)累積近似法(SAX)設(shè)計(jì)了高效的過濾方案,最后結(jié)合MapReduce框架提出了基于SAX的并行Top-k連接查詢算法。

    文獻(xiàn)[33]中針對(duì)高維數(shù)據(jù)提出了基于局部敏感哈希(Locality-Sensitive Hashing, LSH)的距離,并將基于LSH的距離轉(zhuǎn)換成高維數(shù)據(jù)簽名的海明距離,在此基礎(chǔ)上,設(shè)計(jì)了基于Spark的Top-k相似性連接查詢方案。與基于Hadoop的方案相比,文獻(xiàn)[33]方案的計(jì)算速度更快,具有更好的擴(kuò)展性。

    3 空間數(shù)據(jù)相似性連接查詢

    空間數(shù)據(jù)相似性連接是指給定兩個(gè)空間數(shù)據(jù)集合R和S,找出所有滿足空間關(guān)系要求的空間數(shù)據(jù)對(duì)。其中,空間數(shù)據(jù)可以是點(diǎn)(興趣點(diǎn),如一棟房子、一個(gè)商鋪、一個(gè)郵筒、一個(gè)公交站等)、線(街道)、多邊形(住宅小區(qū)、醫(yī)學(xué)圖片中的細(xì)胞等)等,空間關(guān)系可以是歐氏距離、相交(重疊)等。根據(jù)返回結(jié)果的不同,又可以分為相交連接、Top-k連接、KNN連接和空間聚集連接等。

    文獻(xiàn)[34]中提出了一種基于MapReduce框架的空間數(shù)據(jù)連接算法SJMR(Spatial Join with MapReduce)。該算法通過一個(gè)MapReduce Job來完成,在Map階段,作者提出了一個(gè)空間劃分函數(shù),將空間對(duì)象劃分到不同的子區(qū)域中,每一子區(qū)域中的數(shù)據(jù)由一個(gè)Reduce任務(wù)負(fù)責(zé)處理。為了確保劃分的均勻性,作者提出了基于空間填充曲線的劃分方法。在Reduce階段,采用過濾-驗(yàn)證框架進(jìn)行處理,在過濾階段,為了提高過濾效果,作者提出了Plane Sweeping技術(shù),從而可以減少候選對(duì)的數(shù)量。由于一個(gè)空間對(duì)象可能會(huì)被劃分到不同的子區(qū)域中,所以在Reduce端可能會(huì)出現(xiàn)很多重復(fù)的比較,作者提出了一種基于參考點(diǎn)的方法,從而確保一對(duì)空間數(shù)據(jù)最多只被比較一次。

    文獻(xiàn)[35]中針對(duì)海量空間數(shù)據(jù),提出了一種基于MapReduce框架的Top-k空間連接查詢算法(Top-kSpatial Join Algorithm using MapReduce,TKSJMR),該算法要求找出k個(gè)與其他空間數(shù)據(jù)具有最大交疊數(shù)的對(duì)象。主要通過三個(gè)階段來完成,每一個(gè)階段由一個(gè)MapReduce Job來實(shí)現(xiàn)。第一個(gè)階段為空間連接階段,主要負(fù)責(zé)找出所有相交的空間數(shù)據(jù)對(duì);第二個(gè)階段為連接結(jié)果統(tǒng)計(jì)階段,負(fù)責(zé)統(tǒng)計(jì)出每個(gè)對(duì)象與其他對(duì)象相交的總數(shù)目;第三個(gè)階段為Top-k結(jié)果獲取階段,主要是從上一階段的統(tǒng)計(jì)結(jié)果中找出相交數(shù)最大的k個(gè)對(duì)象。為了進(jìn)一步提高效率,作者進(jìn)行了一些優(yōu)化,如為了減少必要的比較,在空間連接階段,作者采用了基于網(wǎng)格的劃分方法;為了避免重復(fù)比較,又提出了基于參考點(diǎn)的方法。同時(shí)為了減少M(fèi)apReduce Job的數(shù)量,作者把后面兩個(gè)階段進(jìn)行了合并。

    文獻(xiàn)[36]中提出了一種基于MapReduce框架的快速空間聚集連接查詢算法MRFM(Map-Reduce-Filter-Merge)。文獻(xiàn)[37]首先提出了基于MapReduce框架的并行R-tree索引構(gòu)建方法,并在R-tree索引的基礎(chǔ)上提出了基于MapReduce的KNN連接查詢算法。文獻(xiàn)[38]中針對(duì)空間連接問題,提出了一種新的“可控-復(fù)制”框架,基于該框架可以減少集群節(jié)點(diǎn)之間的網(wǎng)絡(luò)傳輸代價(jià),能夠有效處理基于“重疊”和“包含”兩種謂詞的空間連接查詢問題。

    文獻(xiàn)[39]中針對(duì)MapReduce框架下的空間關(guān)鍵字連接查詢問題進(jìn)行了研究,提出了基于前綴過濾和網(wǎng)格化分技術(shù)相結(jié)合的空間文本對(duì)象過濾算法,并在此基礎(chǔ)上又提出了兩種優(yōu)化方法,從而進(jìn)一步提升了空間關(guān)鍵字連接查詢的性能。

    4 概率數(shù)據(jù)相似性連接查詢

    MELODY-JOIN[41]在MapReduce框架下,針對(duì)直方圖概率數(shù)據(jù)提出了一種基于EMD距離的閾值相似性連接方案。其核心思想是:首先將原始的直方圖概率數(shù)據(jù)轉(zhuǎn)換到EMD距離的標(biāo)準(zhǔn)下界空間,然后采用特定的網(wǎng)格劃分方法對(duì)標(biāo)準(zhǔn)下界空間進(jìn)行劃分;接下來計(jì)算每一個(gè)記錄與每一個(gè)單元格的EMD距離的下界,如果該下界值大于給定的閾值,則該記錄就不需要與該單元格內(nèi)的所有記錄進(jìn)行比較;否則需要進(jìn)一步比較。同時(shí),為了解決負(fù)載均衡的問題,作者提出了基于Quantile Grid的劃分方法,從而使得每一個(gè)單元格包含的記錄數(shù)量近似相等。但是,MELODY-JOIN[41]需要三個(gè)MapReduce Job來實(shí)現(xiàn),需要消耗三次Job啟動(dòng)時(shí)間;另外,MELODY-JOIN[41]的負(fù)載均衡策略僅僅依賴于連接負(fù)載(join workload),無法有效處理轉(zhuǎn)換空間內(nèi)的數(shù)據(jù)傾斜問題。Heads-Join[42]通過引入EMD下界和上界對(duì)MELODY-JOIN[41]進(jìn)行了進(jìn)一步擴(kuò)展,既可以處理范圍連接(range join),又可以處理Top-k連接,并將Heads-Join框架在MapReudce、BSP和Spark模式下分別進(jìn)行了實(shí)現(xiàn)。

    為了解決MELODY-JOIN[41]存在的問題,文獻(xiàn)[43]中提出了基于映射的數(shù)據(jù)劃分框架EMD-MPJ(Mapping-based Partition Join),它只需要兩個(gè)MapReduce Job即可完成,其數(shù)據(jù)劃分方案主要是基于線性規(guī)劃的對(duì)偶理論進(jìn)行設(shè)計(jì)。為了實(shí)現(xiàn)負(fù)載均衡,EMD-MPJ設(shè)計(jì)了針對(duì)Reduce端的連接代價(jià)模型,并據(jù)此進(jìn)行連接負(fù)載的分配。

    文獻(xiàn)[44]中針對(duì)大規(guī)模概率集合數(shù)據(jù)提出了兩種基于MapReduce的并行化方法:基于Map端過濾的連接和基于Reduce端過濾的連接。基于Map端過濾的連接算法主要根據(jù)集合的存在概率,在Map端將那些沒有可能與其他任何概率集合相似的集合直接過濾掉;基于Reduce端過濾的連接算法主要采用基于概率總和以及概率上界的過濾方法來減少候選相似對(duì)的數(shù)量,從而降低計(jì)算代價(jià)。

    5 字符串相似性連接查詢

    林學(xué)民、李國良、王煒等學(xué)者對(duì)集中式環(huán)境下的字符串相似性連接查詢問題進(jìn)行了細(xì)致深入的研究,并提出了大量創(chuàng)新性的成果[45-50]。文獻(xiàn)[51-53]主要探討了基于MapReduce框架的海量字符串?dāng)?shù)據(jù)可擴(kuò)展相似性連接查詢問題。文獻(xiàn)[51]以編輯距離作為字符串間的相似性度量,以trie樹結(jié)構(gòu)為基礎(chǔ),提出了一種新的索引結(jié)構(gòu)PeARL。PeARL索引由一系列trie樹構(gòu)成,每一棵trie樹用來索引以某個(gè)前綴(prefix)開頭的字符串。在進(jìn)行連接查詢時(shí),master節(jié)點(diǎn)首先從根節(jié)點(diǎn)開始逐步掃描trie樹,針對(duì)trie樹的每一對(duì)內(nèi)部節(jié)點(diǎn),計(jì)算其對(duì)應(yīng)前綴的編輯距離,如果大于給定的閾值,則該對(duì)節(jié)點(diǎn)就可以過濾掉;否則繼續(xù)往下掃描,直到遇到葉子點(diǎn)對(duì)(字符串節(jié)點(diǎn)對(duì))時(shí),為其生成一個(gè)map task。以此類推,為每一個(gè)可能相似的字符串節(jié)點(diǎn)對(duì)生成一個(gè)map task,最后以并行的方式來計(jì)算字符串之間的實(shí)際編輯距離。

    文獻(xiàn)[52]主要對(duì)基于劃分的簽名機(jī)制進(jìn)行了擴(kuò)展,從而可以支持基于集合相似度(杰卡德相似度)的字符串連接。為了解決文獻(xiàn)[8]中存在的過濾效果不理想、數(shù)據(jù)傾斜等問題,文獻(xiàn)[52]中提出了一種基于劃分的簽名機(jī)制,將每個(gè)字符串按照某種規(guī)則劃分成若干個(gè)分段,如果兩個(gè)字符串相似,它們至少包含有一個(gè)相同的分段?;谠撎匦?就可以為每一個(gè)分段生成一個(gè)〈key,value〉對(duì),這樣就可以取得較好的過濾效果。為了進(jìn)一步減少〈key,value〉對(duì)的數(shù)量,作者又提出了一種基于合并的算法,從而可以減少網(wǎng)絡(luò)傳輸?shù)拇鷥r(jià)。文獻(xiàn)[53]對(duì)PassJoin(Partition-based Method for Similarity Joins)算法[54]進(jìn)行了擴(kuò)展,提出了一種更快的算法PassJoinK,并結(jié)合MapReduce框架,對(duì)PassJoinK算法進(jìn)行并行化,提出了可擴(kuò)展的字符串相似性連接查詢算法PassJoinKMRS。

    6 圖數(shù)據(jù)相似性連接查詢

    文獻(xiàn)[55]中針對(duì)海量圖數(shù)據(jù)的相似性連接查詢問題,提出了可擴(kuò)展的前綴過濾方案,從而減少比較次數(shù);設(shè)計(jì)了一種有效的候選項(xiàng)約減方法來降低數(shù)據(jù)傳輸代價(jià);并基于MapReduce框架設(shè)計(jì)了可擴(kuò)展的圖數(shù)據(jù)相似性連接查詢算法。文獻(xiàn)[56]主要研究了基于編輯距離的圖相似性連接查詢問題,作者主要提出了一種基于“過濾-驗(yàn)證”機(jī)制的算法MGSJoin(Graph Similarity Joins in MapReduce),采用布隆過濾器技術(shù)來減少冗余計(jì)算和網(wǎng)絡(luò)傳輸代價(jià),并集成多路連接策略來增強(qiáng)驗(yàn)證階段的效率。文獻(xiàn)[57]主要解決了海量RDF數(shù)據(jù)的連接查詢問題。針對(duì)RDF數(shù)據(jù)的SPARQL查詢往往包含很多連接操作,查詢代價(jià)比較高,當(dāng)數(shù)據(jù)規(guī)模比較大時(shí),傳統(tǒng)的單機(jī)算法無法滿足性能要求,于是文獻(xiàn)[57]中提出了基于MapReduce框架的高效RDF數(shù)據(jù)連接方案。首先將原始的RDF數(shù)據(jù)按照謂詞(predicate)進(jìn)行分解重組,每一個(gè)謂詞對(duì)應(yīng)一個(gè)謂詞文件;然后在這些謂詞文件的基礎(chǔ)上,把SPARQL查詢轉(zhuǎn)換成一系列的MapReduce Job,其中可能包含很多連接操作;作者提出了一種新穎的樹形結(jié)構(gòu)索引(all possible join tree)來索引所有可能的執(zhí)行計(jì)劃;最后依據(jù)代價(jià)模型來選擇最優(yōu)的查詢計(jì)劃,從而獲得最快的響應(yīng)時(shí)間。

    7 研究工作展望

    目前,在云計(jì)算環(huán)境下針對(duì)多種不同數(shù)據(jù)類型(集合數(shù)據(jù)、空間數(shù)據(jù)、概率數(shù)據(jù)等)的大數(shù)據(jù)相似性連接查詢算法的研究已經(jīng)取得了一些成果,但是仍然存在諸多挑戰(zhàn)性問題值得進(jìn)一步深入研究:

    1)大規(guī)模超高維數(shù)據(jù)相似性連接查詢技術(shù)。

    該研究中,對(duì)照組用遵醫(yī)護(hù)理,全面化針對(duì)性護(hù)理干預(yù)組用全面化針對(duì)性護(hù)理干預(yù)。結(jié)果顯示,全面化針對(duì)性護(hù)理干預(yù)組滿意程度、血糖空腹指標(biāo)、餐后2 h指標(biāo)的監(jiān)測(cè)結(jié)果、微量泵注入胰島素治療的依從性、復(fù)常血糖的時(shí)間、住院治療時(shí)間、低血糖、酮癥酸中毒等不良事件的發(fā)生率方面相比對(duì)照組更有優(yōu)勢(shì)(P<0.05)。

    “高維”是大數(shù)據(jù)的一個(gè)重要特征,基因序列、軌跡數(shù)據(jù)、視頻、音頻、圖片等非結(jié)構(gòu)化數(shù)據(jù)都具有高維特性,高維大數(shù)據(jù)的有效分析和管理是大數(shù)據(jù)面臨的一個(gè)重大挑戰(zhàn)。高維向量相似性連接查詢主要面臨兩大挑戰(zhàn):一是如何設(shè)計(jì)高效的過濾方案。當(dāng)向量維度較高時(shí),現(xiàn)有的以樹形索引為基礎(chǔ)的過濾方案會(huì)面臨“維度災(zāi)難”問題。當(dāng)向量維度逐漸增大時(shí),索引的過濾效果逐漸降低,當(dāng)維度超過一定閾值時(shí),索引的性能甚至不如順序掃描。二是如何設(shè)計(jì)高效的可擴(kuò)展算法。隨著向量維度的不斷增高,兩個(gè)向量之間相似度的計(jì)算代價(jià)會(huì)比較大;隨著參與連接的向量集合規(guī)模的不斷擴(kuò)大,相似性連接的時(shí)間復(fù)雜度呈指數(shù)級(jí)增長。傳統(tǒng)的集中式處理算法已經(jīng)無法有效處理大規(guī)模超高維向量的相似性連接查詢問題。

    2)復(fù)雜數(shù)據(jù)類型的大數(shù)據(jù)相似性連接查詢技術(shù)。

    已有的相似性連接查詢研究工作主要集中在常見的集合數(shù)據(jù)、字符串?dāng)?shù)據(jù)和向量數(shù)據(jù)。然而,除了這三種數(shù)據(jù)類型之外,還有很多結(jié)構(gòu)更為復(fù)雜的數(shù)據(jù)類型,如軌跡數(shù)據(jù)、時(shí)間序列、基因數(shù)據(jù)、流數(shù)據(jù)、圖和XML文檔等。這些數(shù)據(jù)的結(jié)構(gòu)往往更為復(fù)雜,相似度的計(jì)算代價(jià)更高,并且,由于類型不同,已有的相似性連接查詢技術(shù)并不能有效處理這些更為復(fù)雜的數(shù)據(jù)類型。因此,需要針對(duì)這些復(fù)雜數(shù)據(jù)類型的結(jié)構(gòu)和特點(diǎn),研究新的相似度計(jì)算方法、過濾技術(shù)和并行化方案。

    3)增量式大數(shù)據(jù)相似性連接查詢技術(shù)。

    目前的大數(shù)據(jù)相似性連接查詢技術(shù)大都是基于MapRedcue框架,然而,MapRecduce是一種批處理模型,無法有效處理實(shí)時(shí)查詢和增量式查詢?;赟park等新的計(jì)算框架的增量式大數(shù)據(jù)相似性連接查詢技術(shù),有待進(jìn)一步深入研究。

    4)基于哈希學(xué)習(xí)的近似KNN連接查詢技術(shù)。

    局部敏感哈希技術(shù)是解決海量高維向量KNN連接查詢的一種有效方案。常用的局部敏感哈希函數(shù)雖然具有位置敏感性,但并不能有效保證哈希映射前后數(shù)據(jù)之間的相對(duì)位置關(guān)系,影響KNN連接查詢結(jié)果的質(zhì)量。將哈希學(xué)習(xí)思想與局部敏感哈希技術(shù)相結(jié)合,通過學(xué)習(xí)的方法來對(duì)局部敏感哈希函數(shù)進(jìn)行學(xué)習(xí),使得學(xué)習(xí)到的LSH函數(shù)能夠最大限度地保持哈希映射前后數(shù)據(jù)之間的相對(duì)位置關(guān)系。在此基礎(chǔ)上,結(jié)合MapReduce框架,研究高維向量并行近似KNN連接查詢算法,有效應(yīng)對(duì)擴(kuò)展性問題。

    隱私保護(hù)是大數(shù)據(jù)時(shí)代的一個(gè)重要研究課題。軌跡數(shù)據(jù)、基因數(shù)據(jù)、社交網(wǎng)絡(luò)數(shù)據(jù)等都包含了大量的個(gè)人敏感信息,如何在確保相似度計(jì)算準(zhǔn)確性和效率的同時(shí),又能最大限度地保護(hù)隱私數(shù)據(jù),成為一個(gè)亟待解決的研究課題。目前,面向隱私保護(hù)的大數(shù)據(jù)相似性連接查詢技術(shù)研究工作還處于起步階段,需要進(jìn)一步深入研究,例如,可以嘗試將差分隱私等最新的隱私保護(hù)技術(shù)應(yīng)用到大數(shù)據(jù)相似性連接查中。

    8 結(jié)語

    相似性連接查詢是一種十分重要的操作,在很多數(shù)據(jù)挖據(jù)和數(shù)據(jù)分析任務(wù)中都有應(yīng)用。隨著數(shù)據(jù)規(guī)模的不斷增長,針對(duì)大數(shù)據(jù)的相似性連接查詢問題出現(xiàn)了新的挑戰(zhàn)。本文針對(duì)集合、向量、空間數(shù)據(jù)、概率數(shù)據(jù)等不同類型大數(shù)據(jù)的相似性連接查詢技術(shù)相關(guān)工作進(jìn)行了深入研究,對(duì)其優(yōu)缺點(diǎn)進(jìn)行了歸納總結(jié),最后指出了大數(shù)據(jù)相似性連接查詢面臨的若干挑戰(zhàn)性問題。

    參考文獻(xiàn)(References)

    [1] 龐俊,谷峪, 許嘉, 等. 相似性連接查詢技術(shù)研究進(jìn)展[J]. 計(jì)算機(jī)科學(xué)與探索, 2013, 7(1): 1-13.(PANG J, GU Y, XU J, et al. Research advance on similarity join queries[J]. Journal of Frontiers of Computer Science & Technology, 2013, 7(1): 1-13.)

    [2] 林學(xué)民, 王煒. 集合和字符串的相似度查詢[J]. 計(jì)算機(jī)學(xué)報(bào), 2011, 34(10): 1853-1862.(LIN X M, WANG W. Set and string similarity queries: a survey[J]. Chinese Journal of Computers, 2011, 34(10): 1853-1862.)

    [3] YU M H, LI G L, DENG D, et al. String similarity search and join: a survey[J]. Frontiers of Computer Science, 2016, 10(3): 399-417.

    [4] 龐俊, 于戈, 許嘉, 等.基于MapReduce框架的海量數(shù)據(jù)相似性連接研究進(jìn)展[J]. 計(jì)算機(jī)科學(xué), 2015, 42(1): 1-5.(PANG J, YU G, XU J, et al. Similarity joins on massive data based on MapReduce framework[J]. Computer Science, 2015, 42(1): 1-5.)

    [5] SILVA Y, REED J, BROWN K, et al. An experimental survey of MapReduce-based similarity joins[C]// Proceedings of the 9th International Conference on Similarity Search and Applications. Berlin: Springer, 2016: 181-195.

    [6] KIMMETT B, SRINIVASAN V, THOMO A. Fuzzy joins in MapReduce: an experimental study[J]. Proceedings of the VLDB Endowment, 2015, 8(12): 1514-1517.

    [7] LIN J. Brute force and indexed approaches to pairwise document similarity comparisons with MapReduce[C]// Proceedings of the 32nd International ACM SIGIR Conference on Research and Development in Information Retrieval. New York: ACM, 2009: 155-162.

    [8] VERNICA R, CAREY M J, LI C. Efficient parallel set-similarity joins using MapReduce[C]// Proceedings of the 2010 ACM SIGMOD International Conference on Management of Data. New York: ACM, 2010: 495-506.

    [9] 李瑞, 王朝坤, 鄭偉, 等.基于MapReduce框架的近似復(fù)制文本檢測(cè)[J]. 計(jì)算機(jī)研究與發(fā)展, 2010, 47(增刊1): 400-406.(LI R, WANG C K, ZHENG W, et al. Near duplicate text detection based on MapReduce[J]. Journal of Computer Research and Development, 2010, 47(S1): 400-406.)

    [10] RONG C T, LU W, WANG X, et al. Efficient and scalable processing of string similarity join[J]. IEEE Transactions on Knowledge and Data Engineering, 2013, 25(10): 2217-2230.

    [11] ELSAYED T, LIN J, OARD D. Pairwise document similarity in large collections with MapReduce[C]// HLT-Short 2008: Proceedings of the 46th Annual Meeting of the Association for Computational Linguistics on Human Language Technologies. Stroudsburg, PA, USA: ACL, 2008: 265-268.

    [12] METWALLY A, FALOUTSOS C. V-SMART-Join: a scalable MapReduce framework for all-pair similarity joins of multisets and vectors[J]. Proceedings of the VLDB Endowment, 2012, 5(8): 704-715.

    [13] BARAGLIA R, MORALES G, LUCCHESE C. Document similarity self-join with MapReduce[C]// Proceedings of the 10th IEEE International Conference on Data Mining. Piscataway, NJ: IEEE, 2010: 731-736.

    [14] RONG C T, LIN C B, SILVA Y, et al. Fast and scalable distributed set similarity joins for big data analytics[C]// Proceedings of the 2017 IEEE 33rd International Conference on Data Engineering. Piscataway, NJ: IEEE, 2017: 1-12.

    [15] DENG D, LI G L, WEN H, et al. An efficient partition based method for exact set similarity joins[J]. Proceedings of the VLDB Endowment, 2015, 9(4): 360-371.

    [16] WANG J J, LIN C. MapReduce based personalized locality sensitive hashing for similarity joins on large scale data[J]. Computational Intelligence and Neuroscience, 2015, 2015: Article No. 37.

    [17] LUO W, TAN H, MAO H, et al. Efficient similarity joins on massive high-dimensional datasets using MapReduce[C]// Proceedings of the 13th IEEE International Conference on Mobile Data Management. Piscataway, NJ: IEEE, 2012: 1-10.

    [18] SEIDL T, FRIES S, BODEN B. MR-DSJ: distance-based self-join for large-scale vector data analysis with MapReduce[C]// Proceedings of the 15th BTW Conference on Database Systems for Business, Technology, and Web. Berlin: Springer, 2013: 37-56.

    [19] FRIES S, BODEN B, STEPIEN G, et al. PHiDJ: parallel similarity self-join for high-dimensional vector data with MapReduce[C]// Proceedings of the 30th IEEE International Conference on Data Engineering. Piscataway, NJ: IEEE, 2014: 796-807.

    [20] SILVA Y N, REED J M, TSOSIE L M. MapReduce-based similarity join for metric spaces[C]// Proceedings of the 1st International Workshop on Cloud Intelligence. New York: ACM, 2012: Article No. 3.

    [21] SILVA Y N, REED J M. Exploiting MapReduce-based similarity joins[C]// Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data. New York: ACM, 2012: 693-696.

    [22] 徐媛媛, 陳華輝. 基于MapReduce增量式數(shù)據(jù)集的相似性連接[J]. 計(jì)算機(jī)應(yīng)用研究, 2014, 31(11): 3369-3384.(XU Y Y, CHEN H H. MapReduce-based similarity join for incremental data set[J]. Application Research of Computers, 2014, 31(11): 3369-3384.)

    [23] YANG B, KIM H, SHIM J, et al. Fast and scalable vector similarity joins with MapReduce[J]. Journal of Intelligent Information Systems, 2016, 46(3): 473-497.

    [24] MA Y Z, MENG X F, WANG S Y. Parallel similarity joins on massive high-dimensional data using MapReduce[J]. Concurrency and Computation: Practice and Experience, 2016, 28(1): 166-183.

    [25] MA Y Z, JIA S J, ZHANG Y X. A novel approach for high-dimensional vector similarity join query[J]. Concurrency and Computation: Practice and Experience, 2017, 29(5): 1-12.

    [26] JANG M Y, SONG Y, CHANG J. A density-aware similarity join query processing algorithm on MapReduce[M]// PARK J J, JIN H, KHAN M K, et al. Advanced Multimedia and Ubiquitous Engineering. Berlin: Springer, 2016: 469-475.

    [27] LIU W, SHEN Y M, WANG P. An efficient MapReduce algorithm for similarity join in metric spaces[J]. The Journal of Supercomputing, 2016, 72(3): 1179-1200.

    [28] ZHANG C, LI F, JESTES J. Efficient parallel kNN joins for large data in MapReduce[C]// Proceedings of the 15th International Conference on Extending Database Technology. New York: ACM, 2012: 38-49.

    [29] LU W, SHEN Y, CHEN S, et al. Efficient processing of k nearest neighbor joins using MapReduce [J]. Proceedings of the VLDB Endowment, 2012, 5(10): 1016-1027.

    [30] 戴健, 丁治明. 基于MapReduce快速kNN Join方法[J]. 計(jì)算機(jī)學(xué)報(bào), 2015, 38(1): 99-108.(DAI J, DING Z M. MapReduce based fast kNN join[J]. Chinese Journal of Computers, 2015, 38(1): 99-108.)

    [31] KIM Y, SHIM K. Parallel Top-Ksimilarity join algorithms using MapReduce[C]// Proceedings of the 2012 IEEE 28th International Conference on Data Engineering. Washington, DC: IEEE Computer Society, 2012, 510-521.

    [32] 馬友忠, 慈祥. 海量高維向量的并行Top-k連接查詢[J]. 計(jì)算機(jī)學(xué)報(bào), 2015, 38(1): 86-98.(MA Y Z, CI X. Parallel Top-kjoin on massive high-dimensional vectors[J]. Chinese Journal of Computers, 2015, 38(1): 86-98.)

    [33] CHEN D H, SHEN C G, FENG J Y, et al. An efficient parallel Top-ksimilarity join for massive multidimensional data using spark[J]. International Journal of Database Theory and Application, 2015, 8(3): 57-68.

    [34] ZHANG S B, HAN J Z, LIU Z Y, et al. SJMR: parallelizing spatial join with MapReduce on clusters[C]// Proceedings of 2009 IEEE International Conference on Cluster Computing and Workshops. Piscataway, NJ: IEEE, 2009: 1-8.

    [35] 劉義, 陳犖, 景寧, 等. 海量空間數(shù)據(jù)的并行Top-k連接查詢[J]. 計(jì)算機(jī)研究與發(fā)展, 2011, 48(增刊3): 163-172.(LIU Y, CHEN L, JING N, et al. Parallel Top-kspatial join query processing on massive spatial data[J]. Journal of Computer Research and Development, 2011, 48(S3): 163-172.)

    [36] LIU Y, CHEN L, JING N, et al. MRFM: an efficient approach to spatial join aggregate[C]// Proceedings of the WAIM 2012 International Workshops: GDMM, IWSN, MDSP, USDM, and XMLDM. Berlin: Springer, 2012, 140-150.

    [37] 劉義, 景寧, 陳犖, 等. MapReduce框架下基于R-樹的k-近鄰連接算法[J]. 軟件學(xué)報(bào), 2013, 24(8): 1836-1851.(LIU Y, JING N, CHEN L, et al. Algorithm for processingk-nearest join based on R-tree in MapReduce[J]. Journal of Software, 2013, 24(8): 1836-1851.)

    [38] GUPTA H, CHAWDA B, NEGI S, et al. Processing multi-way spatial joins on Map-Reduce[C]// Proceedings of the 16th International Conference on Extending Database Technology. New York: ACM, 2013, 113-124.

    [39] ZHANG Y, MA Y, MENG X. Efficient spatio-textual similarity join using MapReduce [C]// Proceedings of the 2014 IEEE/WIC/ACM International Joint Conferences on Web Intelligence and Intelligent Agent Technologies. Piscataway, NJ: IEEE, 2014: 52-59.

    [40] 雷斌, 許嘉, 谷峪, 等. 概率數(shù)據(jù)上基于EMD距離的并行Top-k相似性連接算法[J]. 軟件學(xué)報(bào), 2013, 24(增刊2): 188-199.(LEI B, XU J, GU Y, et al. Parallel Top-ksimilarity join algorithm on large probabilistic data based on earth mover’s distance[J]. Journal of Software, 2013, 24(S2): 188-199.)

    [41] HUANG J, ZHANG R, BUYYA R, et al. MELODY-JOIN: efficient earth mover’s distance similarity joins using MapReduce[C]// Proceedings of the 30th IEEE International Conference on Data Engineering. Piscataway, NJ: IEEE, 2014: 808-819.

    [42] HUANG J, ZHANG R, BUYYA R, et al. Heads-Join: efficient earth mover’s distance similarity joins on Hadoop[J]. IEEE Transactions on Parallel and Distributed Systems, 2016, 27(6): 1660-1673.

    [43] XU J, LEI B, GU Y, et al. Efficient similarity join based on earth mover’s distance using MapReduce[J]. IEEE Transactions on Knowledge and Data Engineering, 2015, 27(8): 2148-2162.

    [44] MA Y Z, MENG X F. Set similarity join on massive probabilistic data using MapReduce[J]. Distributed and Parallel Databases, 2014, 32(3): 447-464.

    [45] WANG J N, LI G L, FENG J H. Extending string similarity join to tolerant fuzzy token matching[J]. ACM Transactions on Database Systems, 2014, 39(1) : Article No. 7.

    [46] LI G L, DENG D, FENG J H. Pass-Join+: a partition-based method for string similarity joins with edit-distance constraints[J]. ACM Transactions on Database Systems, 2013, 38(2) : Article No. 9.

    [47] JIANG Y, LI G, FENG J H, et al. String similarity joins: an experimental evaluation[J]. Proceedings of the VLDB Endowment, 2014, 7(8): 625-636.

    [48] WANG W, QIN J B, XIAO C, et al. VChunkJoin: an efficient algorithm for edit similarity joins[J]. IEEE Transactions on Knowledge & Data Engineering, 2013, 25(8): 1916-1929.

    [49] LU J H, LIN C B, WANG W, et al. String similarity measures and joins with synonyms[C]// SIGMOD 2013: Proceedings of the 2013 ACM SIGMOD International Conference on Management of Data. New York: ACM, 2013: 373-384.

    [50] XIAO C, WANG W, LIN X M, et al. Efficient similarity joins for near duplicate detection[J]. ACM Transaction of Database Systems, 2011, 36(3): Article No. 15.

    [52] DENG D, LI G L, HAO S, et al. MassJoin: a MapReduce-based algorithm for string similarity joins[C]// Proceedings of IEEE 30th International Conference on Data Engineering. Piscataway, NJ: IEEE, 2014: 340-351.

    [53] LIN C, YU H Y, WENG W, et al. Large scale similarity join with edit-distance constraints[C]// Proceedings of 19th International Conference on Database Systems for Advanced Applications. Berlin: Springer, 2014: 328-342.

    [54] LI G L, DENG D, WANG J N, et al. Pass-join: a partition-based method for similarity joins[J]. Proceedings of the VLDB Endowment. Berlin: Springer, 2011, 5(3): 253-264.

    [55] PANG J, GU Y, XU J, et al. Efficient graph similarity join with scalable prefix-filtering using MapReduce[C]// Proceedings of 15th International Conference on Web-Age Information Management. Berlin: Springer, 2014: 415-418.

    [56] CHEN Y F, ZHAO X, GE B, et al. Practising scalable graph similarity joins in MapReduce[C]// Proceedings of the 2014 IEEE International Congress on Big Data. Washington, DC: IEEE Computer Society, 2014: 112-119.

    [57] ZHANG X F, CHEN L, WANG M. Towards efficient join processing over large RDF graph using MapReduce[C]// Proceedings of the 24th International Conference on Scientific and Statistical Database Management. Berlin: Springer, 2012: 250-259.

    This work is partially supported by the National Natural Science Foundation of China (61602231), the National Key R&D Plan Project (2016YFE0104600), the Science and Technology Open Cooperation Project of Henan Province (172106000077, 152106000048), the Key Scientific Research Project of Higher Education of Henan Province (16A520022).

    猜你喜歡
    代價(jià)相似性框架
    一類上三角算子矩陣的相似性與酉相似性
    框架
    淺析當(dāng)代中西方繪畫的相似性
    廣義框架的不相交性
    愛的代價(jià)
    海峽姐妹(2017年12期)2018-01-31 02:12:22
    代價(jià)
    WTO框架下
    法大研究生(2017年1期)2017-04-10 08:55:06
    低滲透黏土中氯離子彌散作用離心模擬相似性
    一種基于OpenStack的云應(yīng)用開發(fā)框架
    成熟的代價(jià)
    精品欧美一区二区三区在线| 另类精品久久| 电影成人av| 亚洲精品美女久久av网站| 1024香蕉在线观看| 极品少妇高潮喷水抽搐| 午夜91福利影院| 国产一区二区 视频在线| 日韩一卡2卡3卡4卡2021年| 美女午夜性视频免费| 久久性视频一级片| 一区二区三区激情视频| 在线观看免费日韩欧美大片| 国产亚洲一区二区精品| 国产精品偷伦视频观看了| 99热全是精品| 母亲3免费完整高清在线观看| 亚洲专区国产一区二区| 午夜老司机福利片| www.自偷自拍.com| 天天添夜夜摸| 国产精品一区二区在线不卡| www.999成人在线观看| 黑人欧美特级aaaaaa片| 在线精品无人区一区二区三| 国产成人精品久久二区二区免费| 韩国精品一区二区三区| 视频区图区小说| 高清黄色对白视频在线免费看| 脱女人内裤的视频| 亚洲av综合色区一区| 性色av乱码一区二区三区2| 最近手机中文字幕大全| 亚洲国产欧美一区二区综合| 午夜激情av网站| 久久99一区二区三区| 一级a爱视频在线免费观看| 亚洲七黄色美女视频| 亚洲欧美一区二区三区久久| 人成视频在线观看免费观看| 亚洲精品第二区| 中文欧美无线码| 99热全是精品| 欧美亚洲 丝袜 人妻 在线| 97精品久久久久久久久久精品| 日韩一区二区三区影片| 黑人巨大精品欧美一区二区蜜桃| 国产不卡av网站在线观看| 欧美日本中文国产一区发布| 18禁国产床啪视频网站| 成人免费观看视频高清| 亚洲欧美一区二区三区黑人| 久久99一区二区三区| 国产黄色免费在线视频| 大香蕉久久成人网| 精品熟女少妇八av免费久了| 国产极品粉嫩免费观看在线| bbb黄色大片| 操美女的视频在线观看| 国产97色在线日韩免费| 午夜激情久久久久久久| 国产片内射在线| 男男h啪啪无遮挡| 97人妻天天添夜夜摸| 日韩中文字幕欧美一区二区 | 欧美亚洲日本最大视频资源| 精品亚洲乱码少妇综合久久| av欧美777| 视频区欧美日本亚洲| 这个男人来自地球电影免费观看| 爱豆传媒免费全集在线观看| 黄片播放在线免费| 热99国产精品久久久久久7| 国产成人欧美| 在线观看免费视频网站a站| 国产精品一区二区在线观看99| 99精国产麻豆久久婷婷| 欧美在线一区亚洲| 视频在线观看一区二区三区| 69精品国产乱码久久久| 一本—道久久a久久精品蜜桃钙片| 啦啦啦在线免费观看视频4| 在线 av 中文字幕| 国产深夜福利视频在线观看| 国产淫语在线视频| 亚洲精品一二三| 少妇裸体淫交视频免费看高清 | 日韩av不卡免费在线播放| 操出白浆在线播放| 日韩av免费高清视频| 午夜久久久在线观看| 久久久久久久久免费视频了| 国产成人a∨麻豆精品| 午夜福利影视在线免费观看| 午夜福利影视在线免费观看| 亚洲精品中文字幕在线视频| 亚洲av成人不卡在线观看播放网 | 丝袜脚勾引网站| 男人舔女人的私密视频| 精品视频人人做人人爽| 国产av精品麻豆| 日本色播在线视频| 免费久久久久久久精品成人欧美视频| 一级毛片女人18水好多 | 成在线人永久免费视频| 男女免费视频国产| 最新的欧美精品一区二区| 青草久久国产| 精品欧美一区二区三区在线| 国产男人的电影天堂91| 国产视频首页在线观看| 国产精品一区二区免费欧美 | 丝袜人妻中文字幕| 十八禁网站网址无遮挡| 欧美黄色片欧美黄色片| 亚洲久久久国产精品| 久久精品国产亚洲av涩爱| 18禁国产床啪视频网站| 人人妻人人爽人人添夜夜欢视频| 丰满少妇做爰视频| 黄色怎么调成土黄色| 丰满迷人的少妇在线观看| 欧美日韩视频高清一区二区三区二| 欧美大码av| 丰满迷人的少妇在线观看| 中文字幕最新亚洲高清| 日本av手机在线免费观看| 国精品久久久久久国模美| 91精品国产国语对白视频| av国产精品久久久久影院| 美国免费a级毛片| 亚洲精品国产av成人精品| 一本大道久久a久久精品| 手机成人av网站| 亚洲精品中文字幕在线视频| av线在线观看网站| 日本欧美视频一区| 男女无遮挡免费网站观看| 日韩 欧美 亚洲 中文字幕| 国产午夜精品一二区理论片| 国产主播在线观看一区二区 | 99热国产这里只有精品6| 久久久久久亚洲精品国产蜜桃av| 自拍欧美九色日韩亚洲蝌蚪91| 精品久久蜜臀av无| 欧美精品av麻豆av| 黄色怎么调成土黄色| 高清不卡的av网站| 亚洲av片天天在线观看| 国产老妇伦熟女老妇高清| 性色av一级| 性色av一级| 飞空精品影院首页| 国产爽快片一区二区三区| 天天躁狠狠躁夜夜躁狠狠躁| 成人午夜精彩视频在线观看| 中文字幕人妻丝袜一区二区| 色网站视频免费| 国产精品 国内视频| 日本色播在线视频| 亚洲欧洲国产日韩| 熟女少妇亚洲综合色aaa.| 亚洲国产精品一区三区| 一级毛片女人18水好多 | 亚洲精品一二三| 国产在线视频一区二区| 亚洲av电影在线进入| 欧美日韩综合久久久久久| 天天操日日干夜夜撸| 婷婷色综合大香蕉| av片东京热男人的天堂| 熟女少妇亚洲综合色aaa.| 国产高清videossex| 久久久久久久久免费视频了| 国产免费视频播放在线视频| 免费日韩欧美在线观看| 亚洲精品第二区| 日韩 欧美 亚洲 中文字幕| 国产一卡二卡三卡精品| 大香蕉久久网| 久久人妻熟女aⅴ| 亚洲人成电影免费在线| e午夜精品久久久久久久| 一级片'在线观看视频| 日本av手机在线免费观看| 男人爽女人下面视频在线观看| 亚洲精品一卡2卡三卡4卡5卡 | 极品人妻少妇av视频| 桃花免费在线播放| av又黄又爽大尺度在线免费看| 一级毛片电影观看| 好男人视频免费观看在线| 老司机深夜福利视频在线观看 | 精品第一国产精品| 91老司机精品| 免费日韩欧美在线观看| 亚洲欧美激情在线| 三上悠亚av全集在线观看| 一区福利在线观看| 国产精品九九99| 51午夜福利影视在线观看| 亚洲熟女精品中文字幕| 可以免费在线观看a视频的电影网站| av国产精品久久久久影院| 国产视频一区二区在线看| 国产成人欧美| tube8黄色片| avwww免费| 老汉色av国产亚洲站长工具| 久久久国产精品麻豆| videosex国产| 少妇裸体淫交视频免费看高清 | 韩国精品一区二区三区| 成人国产一区最新在线观看 | 国产成人av教育| 久久久久久亚洲精品国产蜜桃av| 国产成人欧美在线观看 | 国产亚洲欧美在线一区二区| 叶爱在线成人免费视频播放| 伊人亚洲综合成人网| 国产色视频综合| 日韩大片免费观看网站| 成人18禁高潮啪啪吃奶动态图| 国精品久久久久久国模美| 一本大道久久a久久精品| 国产精品国产三级国产专区5o| 人人妻,人人澡人人爽秒播 | 精品少妇黑人巨大在线播放| 大话2 男鬼变身卡| 免费人妻精品一区二区三区视频| e午夜精品久久久久久久| 久久午夜综合久久蜜桃| 99久久99久久久精品蜜桃| 亚洲国产欧美日韩在线播放| 宅男免费午夜| 成在线人永久免费视频| 制服诱惑二区| 各种免费的搞黄视频| 久久 成人 亚洲| 国产精品一二三区在线看| 国产成人系列免费观看| 亚洲成av片中文字幕在线观看| 亚洲九九香蕉| 男的添女的下面高潮视频| 国产成人91sexporn| 成人影院久久| 久久久久久久精品精品| 99国产精品一区二区三区| 精品亚洲成a人片在线观看| av视频免费观看在线观看| 黄频高清免费视频| 成人国产av品久久久| 国产黄色视频一区二区在线观看| 精品人妻1区二区| 亚洲精品一二三| 免费女性裸体啪啪无遮挡网站| 国产极品粉嫩免费观看在线| 欧美少妇被猛烈插入视频| 色播在线永久视频| 日韩中文字幕欧美一区二区 | 国产精品一国产av| 免费久久久久久久精品成人欧美视频| 在线观看国产h片| 日韩免费高清中文字幕av| 免费在线观看视频国产中文字幕亚洲 | 国产有黄有色有爽视频| 国产极品粉嫩免费观看在线| 黄色a级毛片大全视频| 久久人人爽人人片av| 久久国产精品男人的天堂亚洲| 一级毛片黄色毛片免费观看视频| 国产熟女午夜一区二区三区| 国产1区2区3区精品| 啦啦啦啦在线视频资源| av欧美777| 人人妻人人澡人人爽人人夜夜| av福利片在线| 我的亚洲天堂| 国产黄色视频一区二区在线观看| 国产一区有黄有色的免费视频| 精品人妻熟女毛片av久久网站| cao死你这个sao货| 日本vs欧美在线观看视频| 丰满迷人的少妇在线观看| 无限看片的www在线观看| 黄网站色视频无遮挡免费观看| 美女中出高潮动态图| 久久国产精品大桥未久av| 一区在线观看完整版| 久久热在线av| 日韩一区二区三区影片| 久久久欧美国产精品| 国产成人精品久久二区二区91| 狂野欧美激情性xxxx| 在现免费观看毛片| av在线老鸭窝| 老司机影院毛片| 后天国语完整版免费观看| 国产高清国产精品国产三级| av电影中文网址| 婷婷成人精品国产| 美女高潮到喷水免费观看| 欧美黄色淫秽网站| 狂野欧美激情性bbbbbb| 久久av网站| 操出白浆在线播放| 免费在线观看视频国产中文字幕亚洲 | 亚洲欧洲日产国产| 中文乱码字字幕精品一区二区三区| 国产淫语在线视频| 欧美人与性动交α欧美精品济南到| 啦啦啦在线免费观看视频4| 波多野结衣av一区二区av| 欧美精品一区二区大全| www.熟女人妻精品国产| 激情视频va一区二区三区| 色94色欧美一区二区| 亚洲精品国产色婷婷电影| 人人妻,人人澡人人爽秒播 | 一级毛片电影观看| 蜜桃国产av成人99| 亚洲精品美女久久av网站| 国产精品人妻久久久影院| 亚洲一区中文字幕在线| 成年动漫av网址| 亚洲一卡2卡3卡4卡5卡精品中文| 国产片特级美女逼逼视频| 热99久久久久精品小说推荐| 精品熟女少妇八av免费久了| 九色亚洲精品在线播放| www.av在线官网国产| 亚洲精品自拍成人| 激情五月婷婷亚洲| 超碰97精品在线观看| 波野结衣二区三区在线| 美女扒开内裤让男人捅视频| 亚洲精品中文字幕在线视频| 高清黄色对白视频在线免费看| 青春草亚洲视频在线观看| av天堂在线播放| 欧美在线一区亚洲| 人人妻人人添人人爽欧美一区卜| 99久久人妻综合| 欧美激情高清一区二区三区| 夫妻午夜视频| 亚洲国产欧美日韩在线播放| 男女下面插进去视频免费观看| 亚洲精品国产av成人精品| 久久国产精品大桥未久av| 中文字幕高清在线视频| 久久国产精品大桥未久av| 亚洲成人手机| 亚洲九九香蕉| 热99国产精品久久久久久7| 你懂的网址亚洲精品在线观看| 欧美日韩国产mv在线观看视频| 夫妻性生交免费视频一级片| 大片免费播放器 马上看| 国产一区二区三区综合在线观看| 久久 成人 亚洲| av有码第一页| netflix在线观看网站| 人人妻人人澡人人爽人人夜夜| 美女福利国产在线| 最近中文字幕2019免费版| av国产久精品久网站免费入址| 久久国产精品大桥未久av| 国产免费一区二区三区四区乱码| 天天添夜夜摸| 久久精品亚洲熟妇少妇任你| 精品福利永久在线观看| 久久人人爽人人片av| 最新的欧美精品一区二区| 久久人人爽人人片av| 18在线观看网站| 亚洲五月色婷婷综合| 日韩av在线免费看完整版不卡| 久久国产精品影院| 久久九九热精品免费| 免费看av在线观看网站| 久9热在线精品视频| 久久久久久人人人人人| 人人妻人人澡人人看| www.自偷自拍.com| 在线av久久热| 国产精品香港三级国产av潘金莲 | 久久精品熟女亚洲av麻豆精品| 国产亚洲欧美精品永久| 热99久久久久精品小说推荐| 天堂8中文在线网| 捣出白浆h1v1| 99久久99久久久精品蜜桃| 欧美日韩综合久久久久久| 日韩免费高清中文字幕av| 免费观看av网站的网址| 午夜激情av网站| 视频在线观看一区二区三区| 亚洲av综合色区一区| 中文字幕人妻熟女乱码| 亚洲伊人色综图| 成人国产av品久久久| 欧美日韩精品网址| 亚洲精品日韩在线中文字幕| 欧美亚洲日本最大视频资源| 少妇人妻 视频| av天堂在线播放| 成人国语在线视频| 日韩精品免费视频一区二区三区| 欧美另类一区| 精品人妻熟女毛片av久久网站| 日日摸夜夜添夜夜爱| 午夜福利在线免费观看网站| 欧美性长视频在线观看| 亚洲精品自拍成人| 国产成人欧美| 亚洲av男天堂| 久久亚洲精品不卡| 欧美日韩视频高清一区二区三区二| 国产在线视频一区二区| 欧美日韩国产mv在线观看视频| 免费女性裸体啪啪无遮挡网站| 亚洲国产精品成人久久小说| 亚洲五月婷婷丁香| 91字幕亚洲| 国产97色在线日韩免费| 午夜免费观看性视频| 搡老乐熟女国产| 国产在线视频一区二区| 咕卡用的链子| 老鸭窝网址在线观看| 亚洲成人免费电影在线观看 | 一个人免费看片子| 欧美另类一区| 日韩,欧美,国产一区二区三区| 真人做人爱边吃奶动态| 精品免费久久久久久久清纯 | 国产精品一区二区精品视频观看| 亚洲中文av在线| 久久久久久久久免费视频了| 赤兔流量卡办理| 日韩中文字幕视频在线看片| 中文字幕亚洲精品专区| 一级,二级,三级黄色视频| 婷婷色综合www| 天堂俺去俺来也www色官网| 少妇粗大呻吟视频| 免费观看av网站的网址| 亚洲精品久久午夜乱码| 午夜免费男女啪啪视频观看| 国产成人免费观看mmmm| 老汉色∧v一级毛片| 亚洲七黄色美女视频| 一区二区三区四区激情视频| 亚洲国产看品久久| 亚洲人成电影观看| 欧美人与性动交α欧美软件| 男女床上黄色一级片免费看| 七月丁香在线播放| 精品国产超薄肉色丝袜足j| 男的添女的下面高潮视频| 精品卡一卡二卡四卡免费| 欧美激情 高清一区二区三区| 自拍欧美九色日韩亚洲蝌蚪91| 国产深夜福利视频在线观看| 婷婷丁香在线五月| a级片在线免费高清观看视频| 高潮久久久久久久久久久不卡| 精品久久久久久久毛片微露脸 | 国产精品熟女久久久久浪| 亚洲精品日韩在线中文字幕| 国产爽快片一区二区三区| 各种免费的搞黄视频| 国产午夜精品一二区理论片| 啦啦啦视频在线资源免费观看| 狠狠婷婷综合久久久久久88av| 午夜激情av网站| 一区在线观看完整版| 国产日韩欧美亚洲二区| 男女国产视频网站| 熟女av电影| 国产人伦9x9x在线观看| 一区福利在线观看| 爱豆传媒免费全集在线观看| 狠狠精品人妻久久久久久综合| 中国美女看黄片| 午夜福利影视在线免费观看| 狠狠婷婷综合久久久久久88av| av不卡在线播放| 国产有黄有色有爽视频| 亚洲 欧美一区二区三区| 18禁国产床啪视频网站| 又粗又硬又长又爽又黄的视频| 男人舔女人的私密视频| 亚洲成av片中文字幕在线观看| 欧美另类一区| 亚洲成人免费av在线播放| 欧美日韩视频精品一区| www日本在线高清视频| 色网站视频免费| 亚洲中文日韩欧美视频| 亚洲第一青青草原| 免费久久久久久久精品成人欧美视频| 嫩草影视91久久| 日本色播在线视频| 亚洲精品一卡2卡三卡4卡5卡 | 亚洲欧美日韩另类电影网站| 你懂的网址亚洲精品在线观看| 午夜福利视频精品| 国产精品九九99| 亚洲av电影在线观看一区二区三区| 国产xxxxx性猛交| 亚洲欧美成人综合另类久久久| 欧美亚洲日本最大视频资源| 日韩人妻精品一区2区三区| 国产成人免费无遮挡视频| 另类亚洲欧美激情| 精品久久蜜臀av无| 亚洲少妇的诱惑av| 99精品久久久久人妻精品| 韩国高清视频一区二区三区| 最新的欧美精品一区二区| 精品少妇一区二区三区视频日本电影| 精品福利永久在线观看| 久久国产亚洲av麻豆专区| 国产精品香港三级国产av潘金莲 | 九色亚洲精品在线播放| 国产亚洲精品久久久久5区| 大片免费播放器 马上看| 人妻一区二区av| 搡老乐熟女国产| h视频一区二区三区| av又黄又爽大尺度在线免费看| 丝瓜视频免费看黄片| 欧美日韩视频精品一区| 亚洲五月色婷婷综合| 伊人亚洲综合成人网| 中文乱码字字幕精品一区二区三区| 久久久国产精品麻豆| 亚洲 欧美一区二区三区| 亚洲,欧美精品.| 国产亚洲欧美精品永久| 一个人免费看片子| 国产麻豆69| 国产高清视频在线播放一区 | 久久99一区二区三区| 欧美日韩国产mv在线观看视频| www.av在线官网国产| 成人影院久久| 80岁老熟妇乱子伦牲交| 中文精品一卡2卡3卡4更新| 黑人巨大精品欧美一区二区蜜桃| 中国美女看黄片| 一边摸一边抽搐一进一出视频| 国产av精品麻豆| 人人澡人人妻人| 人妻 亚洲 视频| 精品欧美一区二区三区在线| 老熟女久久久| 久久九九热精品免费| 一边摸一边做爽爽视频免费| 亚洲国产精品一区二区三区在线| 91九色精品人成在线观看| 女人久久www免费人成看片| 两个人看的免费小视频| 国产精品国产av在线观看| 国产精品免费大片| 人人妻,人人澡人人爽秒播 | 成人影院久久| 热99久久久久精品小说推荐| 国产精品一区二区在线不卡| 国产一卡二卡三卡精品| 搡老乐熟女国产| 久久天堂一区二区三区四区| 国产视频首页在线观看| 黄片小视频在线播放| 两个人看的免费小视频| 男女床上黄色一级片免费看| av国产精品久久久久影院| 啦啦啦 在线观看视频| 午夜日韩欧美国产| 美女高潮到喷水免费观看| 高清不卡的av网站| 老司机影院毛片| 亚洲欧美一区二区三区久久| 久久人妻福利社区极品人妻图片 | 久久国产精品大桥未久av| 大片免费播放器 马上看| 国产熟女欧美一区二区| 超碰成人久久| 欧美精品人与动牲交sv欧美| 久热爱精品视频在线9| 在线观看免费日韩欧美大片| 热re99久久精品国产66热6| 国产黄频视频在线观看| 国产无遮挡羞羞视频在线观看| 国产一区二区三区av在线| 纯流量卡能插随身wifi吗| 操美女的视频在线观看| 少妇精品久久久久久久| 美女扒开内裤让男人捅视频| 国产主播在线观看一区二区 | 国产精品久久久av美女十八| 国产亚洲欧美精品永久| 国产欧美日韩一区二区三 | 日韩大码丰满熟妇| 久久精品久久久久久久性| 亚洲人成电影免费在线| 精品人妻1区二区| 大码成人一级视频| 在线观看免费视频网站a站| av一本久久久久| 1024香蕉在线观看| 久久综合国产亚洲精品| 国产精品九九99| netflix在线观看网站|