本發明涉及元數據管理,具體涉及客戶端元數據的管理方法、裝置、設備、介質及產品。
背景技術:
1、目前,大數據廠商都會提供client下載的功能,即允許用戶在非大數據集群節點通過安裝client來操作集群內的服務。在flink?client場景下,盡管flink?catalog提供了元數據管理功能,但目前已有的多種實現(memorycatalog、mysqlcatalog、postgrescatalog、hivecatalog),要么不支持持久化存儲、要么需要依賴其他服務才能進行持久化存儲,其均不適用于flink?client場景。故而,如何在不引入額外依賴服務的前提下,實現flink?client場景下的元數據管理亟待解決。
技術實現思路
1、有鑒于此,本發明提供了一種客戶端元數據的管理方法、裝置、設備、介質及產品,以解決flink?client場景下的元數據管理需要依賴額外服務的問題。
2、第一方面,本發明提供了一種客戶端元數據的管理方法,包括:獲取客戶端場景下所關聯的管理數據庫;基于客戶端針對集群數據的訪問屬性,在客戶端上構建集群訪問元數據;基于管理數據庫的數據管理屬性,構建集群訪問元數據的元數據目錄;利用元數據目錄,將集群訪問元數據存儲在客戶端中。
3、本實施例提供的客戶端元數據的管理方法,通過獲取客戶端場景下所關聯的管理數據庫,利用客戶端針對集群數據的訪問屬性,在客戶端上構建訪問集群數據的集群訪問元數據,并利用該管理數據庫的數據管理屬性,在客戶端上構建集群訪問元數據的元數據目錄,客戶端則可以利用元數據目錄管理集群訪問元數據。由于元數據目錄是在客戶端中所構建的,故而無需引入額外的依賴服務即可實現集群訪問元數據的存儲。由于該管理數據庫是與客戶端進行關聯的,故而只要客戶端存在,集群訪問元數據即會被持久化存儲,從而避免了集群訪問元數據所對應訪問操作語句的重復編寫和執行,有利于實現客戶端場景下的元數據管理。
4、在一種可選的實施方式中,基于客戶端針對集群數據的訪問屬性,在客戶端上構建集群訪問元數據,包括:基于訪問屬性中的方言屬性,在客戶端上構建方言抽象類;基于訪問屬性中的數據連接屬性,在客戶端上構建數據庫連接工廠類;基于訪問屬性中的實例化屬性,在客戶端上構建元數據抽象實現類;基于訪問屬性中的數據轉換屬性,在客戶端上構建數據轉換類;其中,集群訪問元數據包括方言抽象類、數據庫連接工廠類、元數據抽象實現類以及數據轉換類。
5、本實施例提供的客戶端元數據的管理方法,通過在客戶端上構建方言抽象類、數據庫連接工廠類、元數據抽象實現類以及數據轉換類,以實現利用集群訪問元數據去訪問集群的數據,由此實現了客戶端場景下的集群數據訪問。
6、在一種可選的實施方式中,基于管理數據庫的數據管理屬性,構建集群訪問元數據的元數據目錄,包括:基于管理數據庫的數據描述屬性,構建繼承方言抽象類的目標方言抽象類;基于管理數據庫的數據協議,構建繼承數據庫連接工廠類的目標工廠類;基于管理數據庫的數據連接屬性,構建繼承元數據抽象實現類的目標連接抽象類;基于管理數據庫的數據轉換方式,構建繼承數據轉換類的目標轉換類;對目標方言抽象類、目標工廠類、目標連接抽象類以及目標轉換類進行編譯,生成元數據目錄;其中,數據管理屬性包括數據描述屬性、數據協議、數據連接屬性以及數據轉換方式。
7、本實施例提供的客戶端元數據的管理方法,通過構建繼承方言抽象類的目標方言抽象類、繼承數據庫連接工廠類的目標工廠類、繼承元數據抽象實現類的目標連接抽象類,以及繼承數據轉換類的目標轉換類,從而能夠使得客戶端上的管理數據庫具備集群訪問元數據管理功能。
8、在一種可選的實施方式中,基于管理數據庫的數據描述屬性,構建繼承方言抽象類的目標方言抽象類,包括:獲取與數據描述屬性相對應的數據庫實現參數;利用數據庫實現參數構建目標方言抽象類,以使目標連接抽象類繼承方言抽象類中的相應屬性和方法;其中,數據庫實現參數包括數據類型、數據方言類型、實例化對象、限制查詢語句、包路徑、數據庫標識符以及更新語句中的至少一個。
9、本實施例提供的客戶端元數據的管理方法,通過利用數據庫實現參數構建的目標方言抽象類繼承方言抽象類中的相應屬性和方法,實現了集群訪問元數據管理接口及其實現類生成。
10、在一種可選的實施方式中,基于管理數據庫的數據協議,構建繼承數據庫連接工廠類的目標工廠類,包括:基于數據協議的協議格式,構建管理數據庫的協議判定參數;基于針對數據協議對應的實例化信息,構建針對管理數據庫的類實例化對象;利用協議判定參數和類實例化對象構建目標工廠類,以使目標工廠類繼承數據庫連接工廠類中的相應屬性和方法。
11、本實施例提供的客戶端元數據的管理方法,通過協議格式判定參數和類實例化對象構建的目標工廠類繼承數據庫連接工廠類的相應屬性和方法,以實現結合不同類型的數據庫方言,進行相應對象的實例化。
12、在一種可選的實施方式中,基于管理數據庫的數據連接屬性,構建繼承元數據抽象實現類的目標連接抽象類,包括:基于數據連接的過程,構建管理數據庫的連接方法和關閉方法;利用預設的數據定義語言,構建針對管理數據庫的數據操作參數,數據操作參數包括創建參數、修改參數和刪除參數中的至少一個;利用連接方法、關閉方法和數據操作參數構建目標連接抽象類,以使目標連接抽象類繼承元數據抽象實現類中的相應屬性和方法。
13、本實施例提供的客戶端元數據的管理方法,通過連接方法、關閉方法和數據查詢參數構建的目標連接抽象類繼承元數據抽象實現類中的相應屬性和方法,以在客戶端本地實現數據庫連接、表元數據檢索以及查詢執行等數據操作。
14、在一種可選的實施方式中,基于管理數據庫的數據轉換方式,構建繼承數據轉換類的目標轉換類,包括:基于數據轉換方式在數據轉換類中的父類,構建針對管理數據庫的數據轉換參數;基于管理數據庫的標識,構建針對管理數據庫的標識返回參數;利用數據轉換參數和標識返回參數構建目標轉換類,以使目標轉換類繼承數據轉換類中的相應屬性和方法。
15、本實施例提供的客戶端元數據的管理方法,通過數據轉換參數和標識返回參數構建的目標轉換類繼承數據轉換類中的相應屬性和方法,以在客戶端場景下,按照對象和數據庫表之間的映射關系實現數據轉換。
16、在一種可選的實施方式中,對目標方言抽象類、目標工廠類、目標連接抽象類以及目標轉換類進行編譯,生成元數據目錄,包括:獲取目標集群的類源碼;將目標方言抽象類、目標工廠類、目標連接抽象類以及目標轉換類融合至類源碼中的對應位置,得到目標源碼;對目標源碼進行編譯,生成元數據目錄。
17、本實施例提供的客戶端元數據的管理方法,通過在類源碼中融合目標方言抽象類、目標工廠類、目標連接抽象類以及目標轉換類,在不引入額外依賴服務的前提下,即可在客戶端場景下實現針對集群訪問元數據的持久化存儲。
18、在一種可選的實施方式中,利用元數據目錄,將集群訪問元數據存儲在客戶端中,包括:獲取集群數據對應的目標目錄;將元數據目錄以及管理數據庫的數據包復制至目標目錄;更新客戶端的配置文件中的元數據管理配置,以通過管理數據庫存儲集群訪問元數據。
19、本實施例提供的客戶端元數據的管理方法,通過將集群訪問元數據以及管理數據庫復制至集群數據對應的安裝目錄,并對客戶端的元數據管理配置進行更新,由此實現了針對原生元數據目錄的擴展,便于在客戶端場景下,利用管理數據庫實現輕量級的集群訪問元數據存儲功能。
20、第二方面,本發明提供了一種客戶端元數據的管理裝置,包括:獲取模塊,用于獲取客戶端場景下所關聯的管理數據庫;第一構建模塊,用于基于客戶端針對集群數據的訪問屬性,在客戶端上構建集群訪問元數據;第二構建模塊,用于基于管理數據庫的數據管理屬性,構建集群訪問元數據的元數據目錄;元數據管理模塊,用于利用元數據目錄,將集群訪問元數據存儲在客戶端中。
21、第三方面,本發明提供了一種計算機設備,包括:存儲器和處理器,存儲器和處理器之間互相通信連接,存儲器中存儲有計算機指令,處理器通過執行計算機指令,從而執行上述第一方面或其對應的任一實施方式的客戶端元數據的管理方法。
22、第四方面,本發明提供了一種計算機可讀存儲介質,該計算機可讀存儲介質上存儲有計算機指令,計算機指令用于使計算機執行上述第一方面或其對應的任一實施方式的客戶端元數據的管理方法。
23、第五方面,本發明提供了一種計算機程序產品,包括計算機指令,計算機指令用于使計算機執行上述第一方面或其對應的任一實施方式的客戶端元數據的管理方法。
24、本發明提供的客戶端元數據的管理裝置、計算機設備、計算機可讀存儲介質及計算機程序產品的有益效果參見客戶端元數據的管理方法的相關記載,此處不再贅述。