本發明專利技術實施例公開了一種獲取隱性關系的方法和裝置及計算機可讀存儲介質,包括:根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段,獲取確定出的字段對應的索引;根據確定出的字段對應的索引在預先以表格形式存儲在數據庫中的原始數據中查找滿足查詢條件的原始數據,根據所述隱性關系需要滿足的規則計算查找到的滿足查詢條件的原始數據與不滿足查詢條件的原始數據之間是否具有隱性關系。本發明專利技術實施例通過獲取相應字段的索引,基于獲得的相應字段的索引來實現數據的查詢和隱性關系的計算,提高了隱性關系的獲取速度。
A method and device for obtaining implicit relation and computer readable storage medium
【技術實現步驟摘要】
一種獲取隱性關系的方法和裝置及計算機可讀存儲介質
本專利技術實施例涉及但不限于數據挖掘技術,尤指一種獲取隱性關系的方法和裝置及計算機可讀存儲介質。
技術介紹
顯性關系是指不需要進行計算就能獲得的關系,例如,戶口本上每一個人與戶主的關系在戶口本上直接就體現出來,并不需要做額外的計算;而隱性關系是指需要進行計算才能提取的關系,例如,同住關系,需要根據酒店的入住信息表進行相關的計算才能得出。相關技術在查詢具有隱性關系的數據之前,預先將原始數據存儲在關系型數據庫中,采用MR計算引擎計算原始數據之間是否具有隱性關系,將具有同一隱性關系的所有原始數據存儲在關系型數據庫中的同一張表格中,表格的名稱為原始數據之間存在的隱性關系;在查詢具有隱性關系的數據時,需要先將所有具有隱性關系的數據加載到內存中,用戶通過輸入隱性關系的名稱即可查詢到內存中的具有輸入的隱性關系的所有數據。相關技術中,MR計算引擎在計算隱性關系時,計算速度比較慢,無法實現線上實時計算。
技術實現思路
本專利技術實施例提供了一種獲取隱性關系的方法和裝置及計算機可讀存儲介質,能夠提高隱性關系的獲取速度。本專利技術實施例提供了一種獲取隱性關系的方法,包括:根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段,獲取確定出的字段對應的索引;根據確定出的字段對應的索引在預先以表格形式存儲在數據庫中的原始數據中查找滿足查詢條件的原始數據,根據所述隱性關系需要滿足的規則計算查找到的滿足查詢條件的原始數據與不滿足查詢條件的原始數據之間是否具有隱性關系。在本專利技術實施例中,所述根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段之前,該方法還包括:接收到查詢請求;其中,查詢請求包括:所述隱性關系的查詢條件和所述隱性關系需要滿足的規則;所述根據所述隱性關系需要滿足的規則計算查找到的滿足查詢條件的原始數據與不滿足查詢條件的原始數據之間是否具有隱性關系后,該方法還包括:輸出不滿足查詢條件的原始數據中,與查找到的滿足查詢條件的原始數據之間具有隱性關系的原始數據。在本專利技術實施例中,所述根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段之前,該方法還包括:預先將所述原始數據以表格形式存儲在數據庫中。在本專利技術實施例中,所述預先將所述原始數據以表格形式存儲在數據庫中包括:預先將所述原始數據以表格形式存儲在分布式存儲系統Hbase列式數據庫中;所述接收到查詢請求之前,該方法還包括:采用Phoenix創建所述Hbase列式數據庫中的原始數據對應的表;所述根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段包括:根據所述隱性關系的查詢條件和隱性關系需要滿足的規則確定創建的表中需要創建索引的字段;所述根據確定出的字段對應的索引在預先以表格形式存儲在數據庫中的原始數據中查找滿足查詢條件的原始數據包括:根據所述確定出的字段對應的索引在創建的表中查找滿足查詢條件的原始數據。在本專利技術實施例中,所述隱性關系的查詢條件包括至少一個查詢項,每一個所述查詢項包括:查詢類型、查詢字段和查詢內容;所述隱性關系需要滿足的規則包括至少一個比較項,每一個所述比較項包括:比較類型和比較字段。在本專利技術實施例中,所述根據所述隱性關系需要滿足的規則計算查找到的滿足查詢條件的原始數據與不滿足查詢條件的原始數據之間是否具有隱性關系包括:根據所述確定出的字段對應的索引在不滿足查詢條件的原始數據中,查找與查找到的滿足查詢條件的原始數據之間滿足比較類型為等于的比較項的原始數據,根據隱性關系需要滿足的規則中比較類型不是等于的比較項計算查找到的滿足查詢條件的原始數據之間滿足比較類型為等于的比較項的原始數據,與查找到的滿足查詢條件的原始數據之間是否具有隱性關系。在本專利技術實施例中,所述獲取確定出的字段對應的索引包括以下任意一個或多個的組合:當已創建索引的字段中包含所述確定出的字段時,從已創建的索引中獲取所述確定出的字段對應的索引;當所述已創建索引的字段中不包含所述確定出的字段時,創建所述確定出的字段對應的索引。在本專利技術實施例中,所述確定出的字段對應的索引為Phoenix二級索引。本專利技術實施例提出了一種獲取隱性關系的裝置,包括處理器和計算機可讀存儲介質,所述計算機可讀存儲介質中存儲有指令,當所述指令被所述處理器執行時,實現上述任一種獲取隱性關系的方法。本專利技術實施例還提出了一種計算機可讀存儲介質,其上存儲有計算機程序,所述計算機程序被處理器執行時實現上述任一種獲取隱性關系的方法的步驟。本專利技術一個實施例包括:根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段,獲取確定出的字段對應的索引;根據確定出的字段對應的索引在預先以表格形式存儲在數據庫中的原始數據中查找滿足查詢條件的原始數據,根據所述隱性關系需要滿足的規則計算查找到的滿足查詢條件的原始數據與不滿足查詢條件的原始數據之間是否具有隱性關系。本專利技術實施例通過獲取相應字段的索引,基于獲得的相應字段的索引來實現數據的查詢和隱性關系的計算,提高了隱性關系的獲取速度。在本專利技術另一個實施例中,所述根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段之前,該方法還包括:接收到查詢請求;其中,查詢請求包括:所述隱性關系的查詢條件和所述隱性關系需要滿足的規則;所述根據所述隱性關系需要滿足的規則計算查找到的滿足查詢條件的原始數據與不滿足查詢條件的原始數據之間是否具有隱性關系后,該方法還包括:輸出不滿足查詢條件的原始數據中,與查找到的滿足查詢條件的原始數據之間滿足隱性關系需要滿足的規則的原始數據。本專利技術實施例在接收到查詢請求以后,基于查詢請求獲取相應字段的索引,基于獲得的相應字段的索引來實現數據的查詢和隱性關系的計算,最終得到具有隱性關系的數據,實現了在進行具有隱性關系的數據的查詢時再進行隱性關系的計算,從而隱性關系需要滿足的規則可以隨意修改,不需要額外的存儲,并基于索引提高了查詢效率。本專利技術實施例的其它特征和優點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本專利技術實施例而了解。本專利技術實施例的目的和其他優點可通過在說明書、權利要求書以及附圖中所特別指出的結構來實現和獲得。附圖說明附圖用來提供對本專利技術實施例技術方案的進一步理解,并且構成說明書的一部分,與本專利技術實施例的實施例一起用于解釋本專利技術實施例的技術方案,并不構成對本專利技術實施例技術方案的限制。圖1為本專利技術一個實施例提出的獲取隱性關系的方法的流程圖;圖2為本本文檔來自技高網...
【技術保護點】
1.一種獲取隱性關系的方法,包括:/n根據隱性關系的查詢條件和所述隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段,獲取確定出的字段對應的索引;/n根據所述確定出的字段對應的索引在所述預先以表格形式存儲在數據庫中的原始數據中查找滿足查詢條件的原始數據,根據所述隱性關系需要滿足的規則計算查找到的滿足查詢條件的原始數據與不滿足查詢條件的原始數據之間是否具有隱性關系。/n
【技術特征摘要】
1.一種獲取隱性關系的方法,包括:
根據隱性關系的查詢條件和所述隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段,獲取確定出的字段對應的索引;
根據所述確定出的字段對應的索引在所述預先以表格形式存儲在數據庫中的原始數據中查找滿足查詢條件的原始數據,根據所述隱性關系需要滿足的規則計算查找到的滿足查詢條件的原始數據與不滿足查詢條件的原始數據之間是否具有隱性關系。
2.根據權利要求1所述的方法,其特征在于,所述根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段之前,該方法還包括:
接收到查詢請求;其中,查詢請求包括:所述隱性關系的查詢條件和所述隱性關系需要滿足的規則;
所述根據所述隱性關系需要滿足的規則計算查找到的滿足查詢條件的原始數據與不滿足查詢條件的原始數據之間是否具有隱性關系后,該方法還包括:
輸出所述不滿足查詢條件的原始數據中,與查找到的滿足查詢條件的原始數據之間具有隱性關系的原始數據。
3.根據權利要求1所述的方法,其特征在于,所述根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段之前,該方法還包括:預先將所述原始數據以表格形式存儲在數據庫中。
4.根據權利要求3所述的方法,其特征在于,其中,所述預先將所述原始數據以表格形式存儲在數據庫中包括:
預先將所述原始數據以表格形式存儲在分布式存儲系統Hbase列式數據庫中;所述接收到查詢請求之前,該方法還包括:
采用Phoenix創建所述Hbase列式數據庫中的原始數據對應的表;
所述根據隱性關系的查詢條件和隱性關系需要滿足的規則確定預先以表格形式存儲在數據庫中的原始數據中需要創建索引的字段包括:
根據所述隱性關系的查詢條件和隱性關系需要滿足的規則確定創建的表中需要創建索引的字段;
所述根據確定出的字段對應的索引在預先以表格形式存儲在數據...
【專利技術屬性】
技術研發人員:何海鴻,
申請(專利權)人:北京明略軟件系統有限公司,
類型:發明
國別省市:北京;11
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。