亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的方法及系統(tǒng)

文檔序號:40402908發(fā)布日期:2024-12-20 12:26閱讀:3來源:國知局
混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的方法及系統(tǒng)

本發(fā)明涉及數(shù)據(jù)處理,特別是指一種混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的方法及系統(tǒng)。


背景技術(shù):

1、sql(structured?query?language,結(jié)構(gòu)化查詢語言)是一種用于管理關(guān)系型存儲數(shù)據(jù)集的標(biāo)準(zhǔn)化語言。它是一種聲明式的、非過程化的語言,一方面,用戶只需要在邏輯層面描述需求,不必關(guān)心具體的數(shù)據(jù)存儲、提取等操作步驟,簡化了訪問存儲數(shù)據(jù)集的復(fù)雜性,使用戶能夠更專注于問題的本質(zhì),而非過多關(guān)注底層實現(xiàn)細(xì)節(jié)。另一方面,查詢語句可以自動進(jìn)行優(yōu)化過程,存儲數(shù)據(jù)集管理系統(tǒng)根據(jù)查詢的語義和底層數(shù)據(jù)結(jié)構(gòu)選擇最有效的執(zhí)行計劃。sql的理論基礎(chǔ)是關(guān)系模型,該模型將數(shù)據(jù)組織為表格形式,并基于關(guān)系代數(shù)提供了一套規(guī)范的操作方法。通過使用sql,用戶可以輕松實現(xiàn)各種存儲數(shù)據(jù)集操作,包括數(shù)據(jù)查詢、數(shù)據(jù)定義、數(shù)據(jù)操縱和數(shù)據(jù)控制等。

2、多模態(tài)數(shù)據(jù)是指來自不同類型和格式的數(shù)據(jù),這些數(shù)據(jù)可以包含文本、圖像、音頻、視頻以及其他形式的信息?;旌辖Y(jié)構(gòu)的多模態(tài)數(shù)據(jù)則融合了結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化的數(shù)據(jù),從而提供更全面和豐富的內(nèi)容描述。多模態(tài)數(shù)據(jù)存儲在nosql數(shù)據(jù)庫中,與傳統(tǒng)的關(guān)系型存儲數(shù)據(jù)集不同,多模態(tài)數(shù)據(jù)集的查詢語言目前沒有統(tǒng)一的標(biāo)準(zhǔn),隨數(shù)據(jù)庫的不同而有較大差別。例如,mongodb使用接口函數(shù)操作數(shù)據(jù)集,couchbase使用聲明式的n1ql(non-first?normal?form?query?language,非第一范式查詢語言)來檢索數(shù)據(jù)集,elasticsearch使用自定義的dsl(domain?specific?language,領(lǐng)域特定語言)查詢語法,neo4j使用聲明式查詢語言cypher。

3、隨著互聯(lián)網(wǎng)、社交網(wǎng)絡(luò)、智能推薦等大數(shù)據(jù)業(yè)務(wù)的興起,多模態(tài)數(shù)據(jù)的分析處理需求大幅增長,傳統(tǒng)的sql在面臨海量的多源異構(gòu)數(shù)據(jù)時已不再適用。一方面是數(shù)據(jù)模型不匹配,sql只能處理原子類型的屬性,因為關(guān)系模型中不存在嵌套屬性,而多模態(tài)數(shù)據(jù)模型中嵌套結(jié)構(gòu)是很常見的,因此傳統(tǒng)sql無法滿足多模態(tài)數(shù)據(jù)模型中對嵌套屬性的支持。另一方面,關(guān)系模型中的表結(jié)構(gòu)是在存儲數(shù)據(jù)集建立之初,由存儲數(shù)據(jù)集管理員事前定義好的固定模式,無法根據(jù)需求的變化由終端用戶在使用存儲數(shù)據(jù)集的過程中自行動態(tài)調(diào)整。但在大數(shù)據(jù)環(huán)境下,數(shù)據(jù)和需求的更新都是快速的、實時的,存儲數(shù)據(jù)集管理員難以未卜先知考慮所有情況,用戶在使用中動態(tài)地自主構(gòu)建模式是必要的。這違背了傳統(tǒng)sql的部分范式和固定模式,因此無法將sql直接用于多模態(tài)數(shù)據(jù),無法利用sql本身具備的強(qiáng)大功能和其聲明式、非過程化的特性。

4、鑒于此,如何克服現(xiàn)有技術(shù)所存在的缺陷,解決傳統(tǒng)sql語言與多模態(tài)數(shù)據(jù)兼容度低的現(xiàn)象,是本技術(shù)領(lǐng)域待解決的問題。


技術(shù)實現(xiàn)思路

1、為了解決現(xiàn)有技術(shù)存在的技術(shù)問題,本發(fā)明實施例提供了一種混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的方法及系統(tǒng)。所述技術(shù)方案如下:

2、一方面,提供了一種混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的方法,該方法由混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的設(shè)備實現(xiàn),該方法包括:

3、s1、用戶將已有的數(shù)據(jù)整理后,自主創(chuàng)建多模態(tài)數(shù)據(jù)集的數(shù)據(jù)模式,獲取數(shù)據(jù)模式中不同類型數(shù)據(jù)元素之間的嵌套關(guān)系;其中,多模態(tài)數(shù)據(jù)是指融合了結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化的數(shù)據(jù)。

4、s2、選擇一個關(guān)鍵數(shù)據(jù)結(jié)構(gòu)或輔以算法作為整個數(shù)據(jù)模式的第一層數(shù)據(jù)結(jié)構(gòu),將不同類型的數(shù)據(jù)元素作為第一層數(shù)據(jù)結(jié)構(gòu)或第一層數(shù)據(jù)結(jié)構(gòu)下的元素或子結(jié)構(gòu),并輔以算法形成單層或多層數(shù)據(jù)結(jié)構(gòu)。

5、s3、根據(jù)s2中的單層或多層數(shù)據(jù)結(jié)構(gòu)所形成的嵌套關(guān)系以及構(gòu)建的查詢語言,建立數(shù)據(jù)元素對象。

6、s4、根據(jù)數(shù)據(jù)元素對象、定義的數(shù)據(jù)模式表示規(guī)則、定義的屬性表示規(guī)則、定義的值變換規(guī)則以及定義的普通的表達(dá)式過濾條件和針對嵌套類型數(shù)據(jù)元素的復(fù)雜過濾條件,完成多模態(tài)數(shù)據(jù)集查詢語言動態(tài)自主構(gòu)建。

7、s5、獲取用戶輸入的查詢語句,根據(jù)查詢語句以及構(gòu)建的多模態(tài)數(shù)據(jù)集查詢語言,得到查詢結(jié)果。

8、可選地,數(shù)據(jù)元素包括單層或多層級的數(shù)據(jù)元素。

9、數(shù)據(jù)元素對象包括:數(shù)據(jù)元素的屬性、數(shù)據(jù)元素的數(shù)據(jù)類型以及當(dāng)?shù)谝粚蛹壍臄?shù)據(jù)元素的數(shù)據(jù)類型為非原子類型時,非原子類型的數(shù)據(jù)元素所包含的子數(shù)據(jù)元素。

10、可選地,定義的數(shù)據(jù)模式表示規(guī)則,包括:

11、采用多種表達(dá)方式,對所有數(shù)據(jù)元素以及對不同類型數(shù)據(jù)元素之間的嵌套關(guān)系進(jìn)行表示。

12、多種表達(dá)方式包括多維立體化表達(dá)方式和二維扁平化表達(dá)方式。

13、多維立體化表達(dá)方式包括顯式的表達(dá)數(shù)據(jù)元素的類型以及數(shù)據(jù)元素包含的子數(shù)據(jù)元素的屬性、類型和特征,將處于同一層級的數(shù)據(jù)元素間用逗號分隔,將處于不同層級的數(shù)據(jù)元素間用縮進(jìn)的位置進(jìn)行區(qū)分。

14、二維扁平化表達(dá)方式包括對數(shù)據(jù)元素的嵌套關(guān)系進(jìn)行平鋪展開,將平鋪展開后的所有數(shù)據(jù)元素放到同一層級,用符號連接數(shù)據(jù)元素中的父數(shù)據(jù)元素和子數(shù)據(jù)元素,對每一個除第一層級外的其他層級的數(shù)據(jù)元素,將層級的上層級的所有數(shù)據(jù)元素作為前綴。

15、可選地,定義的屬性表示規(guī)則,包括:

16、對第一層級的數(shù)據(jù)元素的屬性進(jìn)行表示,以及當(dāng)?shù)谝粚蛹壍臄?shù)據(jù)元素的數(shù)據(jù)類型為非原子類型時,對非原子類型的數(shù)據(jù)元素包含的子數(shù)據(jù)元素的屬性進(jìn)行表示。

17、其中,對第一層級的數(shù)據(jù)元素的屬性進(jìn)行表示,包括:

18、當(dāng)?shù)谝粚蛹壍臄?shù)據(jù)元素的數(shù)據(jù)類型為原子類型時,數(shù)據(jù)元素的屬性為原子類型的數(shù)據(jù)元素的字段名稱。

19、當(dāng)?shù)谝粚蛹壍臄?shù)據(jù)元素的數(shù)據(jù)類型為非原子類型時,第一層級的非原子類型的數(shù)據(jù)元素的屬性為非原子類型的數(shù)據(jù)元素的名稱,其他層級的非原子類型的數(shù)據(jù)元素的屬性為其他層級的父層級數(shù)據(jù)元素的結(jié)構(gòu)遞歸直至第一層級的非原子類型的數(shù)據(jù)元素的結(jié)構(gòu)。

20、可選地,定義的值變換規(guī)則,包括:

21、對根據(jù)屬性表示規(guī)則描述的屬性,進(jìn)行數(shù)據(jù)內(nèi)容的提取和變換。

22、可選地,定義的where子句的過濾條件,包括:

23、對原子類型的數(shù)據(jù)元素,設(shè)計普通的表達(dá)式過濾條件,對非原子類型的數(shù)據(jù)元素,設(shè)計復(fù)雜的表達(dá)式過濾條件。

24、過濾條件包括全部滿足和存在滿足。

25、可選地,s5中的獲取用戶輸入的查詢語句,根據(jù)查詢語句以及構(gòu)建的多模態(tài)數(shù)據(jù)集查詢語言,得到查詢結(jié)果,包括:

26、s51、獲取用戶輸入的查詢語句,將查詢語句輸入到模塊編譯器,得到模塊編譯器輸出。

27、其中,模塊編譯器輸出包括通過詞法分析器輸出的tokens,根據(jù)tokens以及語法分析器,得到語法分析樹。

28、s52、將模塊編譯器輸出輸入到模塊解析器,得到模塊解析器輸出。

29、其中,模塊解析器輸出包括通過掃描器輸出的語法分析樹的節(jié)點值,根據(jù)節(jié)點值以及綁定器,得到邏輯計劃樹。

30、s53、將模塊解析器輸出輸入到模塊權(quán)限檢查器,得到允許訪問或不允許訪問。

31、s54、若允許訪問,則將模塊解析器輸出輸入到模塊優(yōu)化器,得到模塊優(yōu)化器輸出。

32、若不允許訪問,則結(jié)束查詢。

33、s55、將模塊優(yōu)化器輸出輸入到模塊執(zhí)行器,得到查詢結(jié)果。

34、另一方面,提供了一種混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的系統(tǒng),該系統(tǒng)應(yīng)用于混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的方法,該系統(tǒng)包括:

35、獲取模塊,用于用戶將已有的數(shù)據(jù)整理后,自主創(chuàng)建多模態(tài)數(shù)據(jù)集的數(shù)據(jù)模式,獲取數(shù)據(jù)模式中不同類型數(shù)據(jù)元素之間的嵌套關(guān)系;其中,多模態(tài)數(shù)據(jù)是指融合了結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化的數(shù)據(jù)。

36、結(jié)構(gòu)構(gòu)建模塊,用于選擇一個關(guān)鍵數(shù)據(jù)結(jié)構(gòu)或輔以算法作為整個數(shù)據(jù)模式的第一層數(shù)據(jù)結(jié)構(gòu),將不同類型的數(shù)據(jù)元素作為第一層數(shù)據(jù)結(jié)構(gòu)或第一層數(shù)據(jù)結(jié)構(gòu)下的元素或子結(jié)構(gòu),并輔以算法形成單層或多層數(shù)據(jù)結(jié)構(gòu)。

37、建立模塊,用于根據(jù)單層或多層數(shù)據(jù)結(jié)構(gòu)所形成的嵌套關(guān)系以及構(gòu)建的查詢語言,建立數(shù)據(jù)元素對象。

38、構(gòu)建模塊,用于根據(jù)數(shù)據(jù)元素對象、定義的數(shù)據(jù)模式表示規(guī)則、定義的屬性表示規(guī)則、定義的值變換規(guī)則以及定義的普通的表達(dá)式過濾條件和針對嵌套類型數(shù)據(jù)元素的復(fù)雜過濾條件,完成多模態(tài)數(shù)據(jù)集查詢語言動態(tài)自主構(gòu)建。

39、輸出模塊,用于獲取用戶輸入的查詢語句,根據(jù)查詢語句以及構(gòu)建的多模態(tài)數(shù)據(jù)集查詢語言,得到查詢結(jié)果。

40、另一方面,提供一種混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的設(shè)備,所述混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的設(shè)備包括:處理器;存儲器,所述存儲器上存儲有計算機(jī)可讀指令,所述計算機(jī)可讀指令被所述處理器執(zhí)行時,實現(xiàn)如上述混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的方法中的任一項方法。

41、另一方面,提供了一種計算機(jī)可讀存儲介質(zhì),所述存儲介質(zhì)中存儲有至少一條指令,所述至少一條指令由處理器加載并執(zhí)行以實現(xiàn)上述混合結(jié)構(gòu)的多模態(tài)數(shù)據(jù)查詢語言的方法中的任一項方法。

42、本發(fā)明實施例提供的技術(shù)方案帶來的有益效果至少包括:

43、本發(fā)明實施例中,解決了傳統(tǒng)sql語言與多模態(tài)數(shù)據(jù)集兼容度低的問題,擴(kuò)展sql有利于簡潔高效檢索多模態(tài)數(shù)據(jù)。

44、本發(fā)明針對數(shù)據(jù)模式進(jìn)行動態(tài)自主構(gòu)建。區(qū)別于傳統(tǒng)的關(guān)系型數(shù)據(jù)庫和sql由數(shù)據(jù)庫管理員事前構(gòu)建數(shù)據(jù)模式,本發(fā)明提出的查詢語言和方法支持用戶在使用數(shù)據(jù)庫的過程中,根據(jù)需求動態(tài)自主構(gòu)建數(shù)據(jù)模式,無需依賴數(shù)據(jù)庫管理員。同時支持更多的數(shù)據(jù)類型和嵌套操作,在使用模式和具體操作上都更加靈活。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1