Ranked反近鄰空間關(guān)鍵字查詢方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本申請涉及近鄰查詢技術(shù)領(lǐng)域,更具體地,涉及Ranked反近鄰空間關(guān)鍵字查詢方法及裝置。
【背景技術(shù)】
[0002]近年來,反K近鄰查詢是一種常用的數(shù)據(jù)查詢方法,用于依據(jù)預(yù)先設(shè)置的查詢目標(biāo),對大量的數(shù)據(jù)進(jìn)行分析判斷,以查詢出與查詢目標(biāo)具有關(guān)聯(lián)關(guān)系的數(shù)據(jù)。具體地,反K近鄰查詢方法的一個(gè)應(yīng)用領(lǐng)域是,對大量具有空間特征的文本屬性進(jìn)行查詢,獲得與某個(gè)空間地點(diǎn)具有關(guān)聯(lián)性的文本屬性。
[0003]例如,人們可以發(fā)布微博,評論,簽到等數(shù)據(jù),這些數(shù)據(jù)通常帶有地理位置信息和文本描述。這些數(shù)據(jù)中隱含著潛在信息,例如假設(shè)想要對某些用戶推送A餐廳的就餐信息,則可以使用反K近鄰查詢方法來查詢出哪些用戶是A餐廳的潛在用戶,具體地,反K近鄰空間關(guān)鍵字查詢查找距離A餐廳附近,且內(nèi)容是對A餐廳食物進(jìn)行評論的微博,將發(fā)布這些微博數(shù)據(jù)的用戶作為目標(biāo)用戶。在該查詢場景中,A餐廳及A餐廳的地址即是查詢目標(biāo)信息,微博及微博的發(fā)布地址即是待查詢數(shù)據(jù)。
[0004]然而,目前幾種常見的反K近鄰查詢方法并不能確定查詢結(jié)果對查詢條件的影響程度。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本申請?zhí)峁┝艘环N基于Ranked反k近鄰空間關(guān)鍵字查詢的Ranked反近鄰空間關(guān)鍵字查詢方法,可以將查詢結(jié)果按照對查詢的影響程度大小進(jìn)行排序。另外,本申請還提供了一種Ranked反近鄰空間關(guān)鍵字查詢裝置,用以保證所述方法在實(shí)際中的應(yīng)用及實(shí)現(xiàn)。
[0006]為實(shí)現(xiàn)所述目的,本申請?zhí)峁┑募夹g(shù)方案如下:
[0007]本申請的第一方面提供了一種Ranked反近鄰空間關(guān)鍵字查詢方法,包括:
[0008]獲取預(yù)先構(gòu)建的倒排索引及查詢條件;其中,所述倒排索引是為源數(shù)據(jù)集構(gòu)建的倒排索引,所述源數(shù)據(jù)集中包括若干源數(shù)據(jù),源數(shù)據(jù)包含文本屬性及空間屬性,所述倒排索引用于記錄文本屬性與源數(shù)據(jù)之間的映射關(guān)系,所述查詢條件中包含查詢關(guān)鍵字和空間信息;
[0009]利用所述倒排索引,在所述源數(shù)據(jù)集中,查找包含所述查詢關(guān)鍵字的目標(biāo)源數(shù)據(jù),并將查找到的目標(biāo)源數(shù)據(jù)確定為候選數(shù)據(jù);;
[0010]利用預(yù)先構(gòu)建的R-tree樹形索引,確定各個(gè)所述候選數(shù)據(jù)與所述查詢條件在空間距離上的遠(yuǎn)近順序,并按照從近到遠(yuǎn)的順序,在所述R-tree樹形索引中,依次查找各個(gè)所述候選數(shù)據(jù)所在的目標(biāo)葉子節(jié)點(diǎn);其中,所述R-tree樹形索引是依據(jù)所述源數(shù)據(jù)集中的空間屬性構(gòu)建的空間索引,記錄所述源數(shù)據(jù)集中各個(gè)源數(shù)據(jù)之間的距離關(guān)系;
[0011]依據(jù)二分面垂直面算法,計(jì)算所述目標(biāo)葉子節(jié)點(diǎn)包含的所述候選數(shù)據(jù)對所述查詢條件的空間影響度;
[0012]依據(jù)空間影響度的大小,對所述若干候選數(shù)據(jù)進(jìn)行排序,并依據(jù)空間影響度的大小排序,將排序在前或在后的預(yù)設(shè)數(shù)量的所述候選數(shù)據(jù)確定為目標(biāo)數(shù)據(jù)。
[0013]本申請的第二方面提供了一種Ranked反近鄰空間關(guān)鍵字查詢方法,包括:
[0014]獲取預(yù)先構(gòu)建的InvSR-tree混合樹形索引及查詢條件;其中,所述InvSR-tree混合樹形索引在R-tree樹形索引的每個(gè)節(jié)點(diǎn)具有各自的簽名文件,簽名文件是由節(jié)點(diǎn)包含的源數(shù)據(jù)的文本屬性生成的簽名文件,所述查詢條件中包含查詢關(guān)鍵字及空間信息,且InvSR-tree混合樹形索引的每個(gè)葉子節(jié)點(diǎn)具有各自的倒排索引,倒排索引用于記錄葉子節(jié)點(diǎn)包含的源數(shù)據(jù)的文本屬性與源數(shù)據(jù)之間的映射關(guān)系;
[0015]在所述InvSR-tree混合樹形索引中,查找與所述空間信息距離滿足預(yù)設(shè)距離條件、且簽名文件中包含所述查詢關(guān)鍵字的目標(biāo)葉子節(jié)點(diǎn);
[0016]加載所述目標(biāo)葉子節(jié)點(diǎn)的目標(biāo)倒排索引,并在所述目標(biāo)倒排索引中,查找包含所述查詢關(guān)鍵字的目標(biāo)文本屬性,并將所述目標(biāo)文本屬性映射的源數(shù)據(jù)確定為候選數(shù)據(jù);
[0017]依據(jù)二分面垂直面算法,計(jì)算所述候選數(shù)據(jù)對所述查詢條件的空間影響度,在所述候選數(shù)據(jù)為多個(gè)的情況下,依據(jù)空間影響度的大小,對多個(gè)所述候選數(shù)據(jù)進(jìn)行排序,并將排序在前或在后的預(yù)設(shè)數(shù)量的所述候選數(shù)據(jù)確定為目標(biāo)數(shù)據(jù)。
[0018]本申請的第三方面提供了一種Ranked反近鄰空間關(guān)鍵字查詢裝置,包括:
[0019]第一倒排索引及查詢獲取模塊,用于獲取預(yù)先構(gòu)建的倒排索引及查詢條件;其中,所述倒排索引是為源數(shù)據(jù)集構(gòu)建的倒排索引,所述源數(shù)據(jù)集中包括若干源數(shù)據(jù),源數(shù)據(jù)包括文本屬性及空間屬性,所述倒排索引用于記錄文本屬性與源數(shù)據(jù)之間的映射關(guān)系,所述查詢條件中包含查詢關(guān)鍵字及空間信息;
[0020]第一候選數(shù)據(jù)查找模塊,用于利用所述倒排索引,在所述源數(shù)據(jù)集中,查找包含所述查詢關(guān)鍵字的目標(biāo)源數(shù)據(jù),并將查找到的目標(biāo)源數(shù)據(jù)確定為候選數(shù)據(jù);
[0021]第一目標(biāo)葉子節(jié)點(diǎn)確定模塊,用于利用預(yù)先構(gòu)建的R-tree樹形索引,確定各個(gè)所述候選數(shù)據(jù)與所述查詢條件在空間距離上的遠(yuǎn)近順序,并按照從近到遠(yuǎn)的順序,在所述R-tree樹形索引中,依次查找各個(gè)所述候選數(shù)據(jù)所在的目標(biāo)葉子節(jié)點(diǎn);其中,所述R-tree樹形索引是依據(jù)所述源數(shù)據(jù)集中的空間屬性構(gòu)建的空間索引,記錄所述源數(shù)據(jù)集中各個(gè)源數(shù)據(jù)之間的距離關(guān)系;
[0022]第一空間影響度計(jì)算模塊,用于依據(jù)二分面垂直面算法,計(jì)算所述目標(biāo)葉子節(jié)點(diǎn)包含的所述候選數(shù)據(jù)對所述查詢條件的空間影響度;
[0023]第一目標(biāo)數(shù)據(jù)確定模塊,用于依據(jù)空間影響度的大小,對所述若干候選數(shù)據(jù)進(jìn)行排序,并依據(jù)空間影響度的大小排序,將排序在前或在后的預(yù)設(shè)數(shù)量的所述候選數(shù)據(jù)確定為目標(biāo)數(shù)據(jù)。
[0024]本申請的第四方面提供了一種Ranked反近鄰空間關(guān)鍵字查詢裝置,包括:
[0025]第二倒排索引及查詢獲取模塊,用于獲取預(yù)先構(gòu)建的InvSR-tree混合樹形索引及查詢條件;其中,所述InvSR-tree混合樹形索引在R-tree樹形索引的每個(gè)節(jié)點(diǎn)具有各自的簽名文件,簽名文件是由節(jié)點(diǎn)包含的源數(shù)據(jù)的文本屬性生成的簽名文件,所述查詢條件中包含查詢關(guān)鍵字及空間信息,且InvSR-tree混合樹形索引的每個(gè)葉子節(jié)點(diǎn)具有各自的倒排索引,倒排索引用于記錄葉子節(jié)點(diǎn)包含的源數(shù)據(jù)的文本屬性與源數(shù)據(jù)之間的映射關(guān)系;
[0026]第二目標(biāo)葉子節(jié)點(diǎn)確定模塊,用于在所述InvSR-tree混合樹形索引中,查找與所述空間信息距離滿足預(yù)設(shè)距離條件、且簽名文件中包含所述查詢關(guān)鍵字的目標(biāo)葉子節(jié)點(diǎn);
[0027]第二候選數(shù)據(jù)查找模塊,用于加載所述目標(biāo)葉子節(jié)點(diǎn)的目標(biāo)倒排索引,并在所述目標(biāo)倒排索引中,查找包含所述查詢關(guān)鍵字的目標(biāo)文本屬性,并將所述目標(biāo)文本屬性映射的源數(shù)據(jù)確定為候選數(shù)據(jù);
[0028]第二目標(biāo)數(shù)據(jù)確定模塊,用于依據(jù)二分面垂直面算法,計(jì)算所述候選數(shù)據(jù)對所述查詢條件的空間影響度,在所述候選數(shù)據(jù)為多個(gè)的情況下,依據(jù)空間影響度的大小,對多個(gè)所述候選數(shù)據(jù)進(jìn)行排序,并將排序在前或在后的預(yù)設(shè)數(shù)量的所述候選數(shù)據(jù)確定為目標(biāo)數(shù)據(jù)。
[0029]由以上技術(shù)方案可知,本申請?zhí)峁┝艘环NRanked反近鄰空間關(guān)鍵字查詢方法,首先獲取倒排索引及查詢條件,查詢條件中包含查詢關(guān)鍵字及空間信息,在倒排索引中,查找包含查詢關(guān)鍵字的候選數(shù)據(jù),利用預(yù)先構(gòu)建的R-tree樹形索引,確定候選數(shù)據(jù)與查詢條件在空間距離上的遠(yuǎn)近順序,并按照從近到遠(yuǎn)的順序,在R-tree樹形索引中,依次查找各個(gè)候選數(shù)據(jù)所在的目標(biāo)葉子節(jié)點(diǎn),依據(jù)二分面垂直面算法,計(jì)算目標(biāo)葉子節(jié)點(diǎn)包含的候選數(shù)據(jù)對查詢條件的空間影響度,依據(jù)空間影響度的大小,對若干候選數(shù)據(jù)進(jìn)行排序,并依據(jù)空間影響度的大小排序,將排序在前或在后的預(yù)設(shè)數(shù)量的候選數(shù)據(jù)確定為目標(biāo)數(shù)據(jù)??梢?,本實(shí)施例利用倒排索引及R-tree樹形索引分別進(jìn)行文本及空間剪枝,減少了查詢所用的數(shù)據(jù),提高了查詢目標(biāo)數(shù)據(jù)的效率,且可以查詢獲得預(yù)設(shè)數(shù)量的目標(biāo)數(shù)據(jù)。
[0030]當(dāng)然,實(shí)施本申請的任一產(chǎn)品并不一定需要同時(shí)達(dá)到以上所述的所有優(yōu)點(diǎn)。
【附圖說明】
[0031]為了更清楚地說明本申請實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0032]圖1為本申請?zhí)峁┑腞anked反近鄰空間關(guān)鍵字查詢方法實(shí)施例1的流程圖;
[0033]圖2為本申請?zhí)峁┑脑磾?shù)據(jù)集的一個(gè)示例圖;
[0034]圖3為本申請?zhí)峁┑脑磾?shù)