本技術(shù)屬于計算機(jī),具體涉及一種數(shù)據(jù)查詢方法、數(shù)據(jù)查詢裝置、計算機(jī)可讀介質(zhì)、電子設(shè)備以及計算機(jī)程序產(chǎn)品。
背景技術(shù):
1、圖數(shù)據(jù)庫是一種專為處理圖形數(shù)據(jù)而設(shè)計的數(shù)據(jù)庫系統(tǒng),其核心優(yōu)勢在于高效的數(shù)據(jù)關(guān)系管理。與傳統(tǒng)的關(guān)系型數(shù)據(jù)庫相比,圖數(shù)據(jù)庫使用節(jié)點(vertex)和邊(edge)來表示數(shù)據(jù)實體及其相互關(guān)系,這使得它在處理高度關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)時更加高效和直觀。
2、當(dāng)需要從圖數(shù)據(jù)庫中查詢數(shù)據(jù)時,一個簡單直接的方法是將數(shù)據(jù)文件完整加載到內(nèi)存中,在內(nèi)存中搜索對應(yīng)的查詢結(jié)果。然而,使用這種查詢方法需要訪問大量的數(shù)據(jù)來檢索所需的信息,導(dǎo)致查詢查詢效率低、計算資源消耗量大等問題。
技術(shù)實現(xiàn)思路
1、本技術(shù)目的是提供一種數(shù)據(jù)查詢方法、數(shù)據(jù)查詢裝置、計算機(jī)可讀介質(zhì)、電子設(shè)備以及計算機(jī)程序產(chǎn)品,旨在提高數(shù)據(jù)查詢效率,降低數(shù)據(jù)查詢過程的資源消耗。
2、根據(jù)本技術(shù)實施例的一個方面,提供一種數(shù)據(jù)查詢方法,該方法包括:解析數(shù)據(jù)查詢請求得到查詢條件,所述查詢條件包括主體、客體和謂詞中的一個或多個,所述謂詞用于表示所述主體與所述客體之間的邏輯關(guān)系;根據(jù)所述查詢條件確定圖數(shù)據(jù)庫中的目標(biāo)數(shù)據(jù)分區(qū),所述圖數(shù)據(jù)庫包括根據(jù)節(jié)點之間的緊密度關(guān)系進(jìn)行區(qū)域劃分得到的一級數(shù)據(jù)分區(qū),所述一級數(shù)據(jù)分區(qū)包括根據(jù)節(jié)點之間的邏輯關(guān)系進(jìn)行區(qū)域劃分得到的二級數(shù)據(jù)分區(qū);在所述目標(biāo)數(shù)據(jù)分區(qū)中檢索與所述查詢條件相匹配的數(shù)據(jù)查詢結(jié)果。
3、根據(jù)本技術(shù)實施例的一個方面,提供一種數(shù)據(jù)查詢裝置,該裝置包括:
4、解析模塊,被配置為解析數(shù)據(jù)查詢請求得到查詢條件,所述查詢條件包括主體、客體和謂詞中的一個或多個,所述謂詞用于表示所述主體與所述客體之間的邏輯關(guān)系;
5、分區(qū)模塊,被配置為根據(jù)所述查詢條件確定圖數(shù)據(jù)庫中的目標(biāo)數(shù)據(jù)分區(qū),所述圖數(shù)據(jù)庫包括根據(jù)節(jié)點之間的緊密度關(guān)系進(jìn)行區(qū)域劃分得到的一級數(shù)據(jù)分區(qū),所述一級數(shù)據(jù)分區(qū)包括根據(jù)節(jié)點之間的邏輯關(guān)系進(jìn)行區(qū)域劃分得到的二級數(shù)據(jù)分區(qū);
6、檢索模塊,被配置為在所述目標(biāo)數(shù)據(jù)分區(qū)中檢索與所述查詢條件相匹配的數(shù)據(jù)查詢結(jié)果。
7、在本技術(shù)的一些實施例中,基于以上技術(shù)方案,所述分區(qū)模塊可以進(jìn)一步包括:
8、模式圖獲取模塊,被配置為獲取圖數(shù)據(jù)庫中保存的完整模式圖,所述完整模式圖中的節(jié)點用于表示主體或者客體,所述完整模式圖中的邊用于表示謂詞;
9、緊密度確定模塊,被配置為遍歷所述完整模式圖,得到節(jié)點之間的緊密度關(guān)系,所述緊密度關(guān)系包括重要性參數(shù)和依賴性參數(shù),所述重要性參數(shù)用于表示各個節(jié)點在所述完整模式圖中的重要程度,所述依賴性參數(shù)用于表示任意兩個節(jié)點之間的依賴程度;
10、核心節(jié)點選取模塊,被配置為根據(jù)所述重要性參數(shù)從所述完整模式圖中選取預(yù)設(shè)數(shù)量的核心節(jié)點,所述核心節(jié)點是在所述完整模式圖中的重要性參數(shù)最高的多個節(jié)點;
11、節(jié)點分配模塊,被配置為根據(jù)所述依賴性參數(shù)將所述完整模式圖中的各個節(jié)點分配至以所述核心節(jié)點為中心的一級數(shù)據(jù)分區(qū)。
12、在本技術(shù)的一些實施例中,基于以上技術(shù)方案,所述完整模式圖為有向圖,所述緊密度確定模塊包括:
13、最短路徑集合獲取模塊,被配置為按照所述謂詞的指向確定兩個節(jié)點之間的最短路徑,得到所述完整模式圖的最短路徑集合;
14、分布比例統(tǒng)計模塊,被配置為統(tǒng)計各個節(jié)點在所述最短路徑集合中的分布比例,得到所述節(jié)點的核心度參數(shù);
15、重要性參數(shù)確定模塊,被配置為根據(jù)所述核心度參數(shù)和所述節(jié)點的實例數(shù)確定所述節(jié)點的重要性參數(shù)。
16、在本技術(shù)的一些實施例中,基于以上技術(shù)方案,所述最短路徑集合獲取模塊進(jìn)一步被配置為:遍歷所述完整模式圖,得到由任意兩個節(jié)點組成的節(jié)點對;按照所述謂詞的指向確定以所述節(jié)點對作為起點和終點的所有節(jié)點對路徑;比較所述節(jié)點對路徑的長度,得到所述節(jié)點對的最短路徑集合。
17、在本技術(shù)的一些實施例中,基于以上技術(shù)方案,分布比例統(tǒng)計模塊進(jìn)一步被配置為:針對一個選定節(jié)點對,統(tǒng)計所述最短路徑集合中的所有最短路徑的數(shù)量,得到第一路徑數(shù)量;針對一個選定節(jié)點,統(tǒng)計所述最短路徑集合中包含有所述選定節(jié)點的最短路徑的數(shù)量,得到第二路徑數(shù)量;獲取所述第二路徑數(shù)量與所述第一路徑數(shù)量的比值,得到所述選定節(jié)點在所述選定節(jié)點對的最短路徑集合中的分布比例;累加對應(yīng)于各個節(jié)點和各個節(jié)點對的分布比例,得到所述節(jié)點的核心度參數(shù)。
18、在本技術(shù)的一些實施例中,基于以上技術(shù)方案,分布比例統(tǒng)計模塊進(jìn)一步被配置為:對所述節(jié)點的核心度參數(shù)進(jìn)行歸一化處理,得到所述節(jié)點的歸一化核心度;對所述節(jié)點的實例數(shù)進(jìn)行歸一化處理,得到所述節(jié)點的歸一化實例數(shù);將所述歸一化核心度和所述歸一化實例數(shù)加和得到所述節(jié)點的重要性參數(shù)。
19、在本技術(shù)的一些實施例中,基于以上技術(shù)方案,所述緊密度確定模塊包括:
20、長度獲取模塊,被配置為針對一個選定節(jié)點對,獲取所述選定節(jié)點對的最短路徑的長度;
21、依賴性參數(shù)確定模塊,被配置為根據(jù)位于所述最短路徑上的各個節(jié)點的重要性參數(shù)以及所述最短路徑的長度確定所述節(jié)點對的依賴性參數(shù),所述依賴性參數(shù)與所述最短路徑上的起點的重要性參數(shù)呈正相關(guān)關(guān)系、與所述最短路徑上除所述起點之外的其他節(jié)點的重要性參數(shù)呈負(fù)相關(guān)關(guān)系、且與所述最短路徑的長度呈負(fù)相關(guān)關(guān)系。
22、在本技術(shù)的一些實施例中,基于以上技術(shù)方案,所述依賴性參數(shù)還與所述最短路徑上的兩個相鄰節(jié)點的緊密度參數(shù)呈負(fù)相關(guān)關(guān)系,所述緊密度參數(shù)用于對所述最短路徑上除所述起點之外的其他節(jié)點的重要性參數(shù)進(jìn)行加權(quán)處理。
23、在本技術(shù)的一些實施例中,基于以上技術(shù)方案,所述緊密度參數(shù)的確定方法包括:獲取兩個相鄰節(jié)點中的起始節(jié)點的實例數(shù)和結(jié)束節(jié)點的實例數(shù);根據(jù)所述起始節(jié)點的實例數(shù)、所述結(jié)束節(jié)點的實例數(shù)以及所述完整模式圖的節(jié)點總數(shù),確定所述兩個相鄰節(jié)點的緊密度參數(shù)。
24、在本技術(shù)的一些實施例中,基于以上技術(shù)方案,當(dāng)所述結(jié)束節(jié)點的實例數(shù)為零時,所述緊密度參數(shù)與所述完整模式圖的節(jié)點總數(shù)呈負(fù)相關(guān)關(guān)系;當(dāng)所述結(jié)束節(jié)點的實例數(shù)不為零時,所述緊密度參數(shù)與所述完整模式圖的節(jié)點總數(shù)呈負(fù)相關(guān)關(guān)系、與所述起始節(jié)點的實例數(shù)呈正相關(guān)關(guān)系、且與所述結(jié)束節(jié)點的實例數(shù)呈負(fù)相關(guān)關(guān)系。
25、根據(jù)本技術(shù)實施例的一個方面,提供一種計算機(jī)可讀介質(zhì),其上存儲有計算機(jī)程序,該計算機(jī)程序被處理器執(zhí)行時實現(xiàn)如以上技術(shù)方案中的數(shù)據(jù)查詢方法。
26、根據(jù)本技術(shù)實施例的一個方面,提供一種電子設(shè)備,該電子設(shè)備包括:處理器;以及存儲器,用于存儲所述處理器的可執(zhí)行指令;其中,所述處理器被配置為執(zhí)行所述可執(zhí)行指令來實現(xiàn)如以上技術(shù)方案中的數(shù)據(jù)查詢方法。
27、根據(jù)本技術(shù)實施例的一個方面,提供一種計算機(jī)程序產(chǎn)品,包括計算機(jī)程序,所述計算機(jī)程序被處理器執(zhí)行時實現(xiàn)如以上技術(shù)方案中的數(shù)據(jù)查詢方法。
28、在本技術(shù)實施例提供的技術(shù)方案中,通過智能解析數(shù)據(jù)查詢請求,提取關(guān)鍵的查詢條件,包括主體、客體和謂詞,以此精確捕捉查詢的邏輯關(guān)系。然后,方案利用圖數(shù)據(jù)庫的分區(qū)結(jié)構(gòu),首先識別出基于節(jié)點緊密度的一級數(shù)據(jù)分區(qū),再進(jìn)一步細(xì)化到基于邏輯關(guān)系的二級數(shù)據(jù)分區(qū),從而高效定位目標(biāo)數(shù)據(jù)。本技術(shù)實施例不僅提高了查詢的精確度和效率,還通過減少數(shù)據(jù)檢索范圍,優(yōu)化了查詢性能,最終實現(xiàn)快速準(zhǔn)確地檢索出與查詢條件匹配的結(jié)果。