本技術涉及大數據及人工智能,特別是涉及基于數據質量檢測任務重跑方法、裝置及計算機設備。
背景技術:
1、目前大數據領域主要以hadoop生態為主,其應用領域主要以離線跑批任務為主(例如:在企業開發大量的運營報表用以分析以及決策等)。在實際應用中,因一張結果表數據可能來自于多張輸入表數據,只要其中一張輸入表數據出現異常(例如:數據缺失、數據字段異常等),都可能導致該任務生成的指標數據存在異常(例如:標為空或者超出合理范圍等情況),這種指標異常數據會導致錯誤導向。
2、目前針對該情況,需要先檢測上游表的數據量,如果數據量異常則任務不再執行且發出告警,以及根據歷史情況手動設定下游核心指標的合理監控范圍(例如:若超出合理范圍則做出預警)。但是整個監控過程配置繁瑣,且不夠智能。與此同時,當上游表數據恢復之后,無法自動恢復任務進行重跑,導致人工干預過多,成本較高。專利cn2021112803665提供了一種基于數據業務監控的自動數據業務重跑方法,其通過配置監控文件來對業務模塊進行監控,如果監控結果被定為異常則實施對業務模塊進行重跑。該專利需要手動配置監控文件來監控程序的運行健康度,在指標以及維度眾多的情況下,如果要對每個維度每個指標進行監控時,配置監控文件繁瑣,且無法自動識別重跑的時機,導致資源的浪費。
3、針對相關技術中存在配置監控文件繁瑣,且無法自動識別重跑的時機,導致資源的浪費的問題,目前還沒有提出有效的解決方案。
技術實現思路
1、在本實施例中提供了一種基于數據質量檢測任務重跑方法、裝置及計算機設備,以解決相關技術中存在配置監控文件繁瑣,且無法自動識別重跑的時機,導致資源的浪費的問題。
2、第一個方面,在本實施例中提供了一種基于數據質量檢測任務重跑方法,適用于基于數據質量檢測任務重跑裝置;所述裝置包括hadoop元數據檢測模塊和數據質量檢測模塊;所述hadoop元數據檢測模塊與所述數據質量檢測模塊連接;所述方法包括:
3、在所述hadoop元數據檢測模塊檢測到輸入表準備就緒時,觸發執行對應的任務,以生成輸出表;所述輸入表為所述任務的數據源;
4、在所述hadoop元數據檢測模塊檢測到所述輸出表生成后,觸發所述數據質量檢測模塊檢測所述輸出表中的指標,得到質量檢測結果;
5、在所述質量檢測結果存在異常指標時,觸發所述hadoop元數據檢測模塊重新檢測所述輸入表是否發生變更;
6、若所述輸入表發生變更,則重新自動觸發執行對應的所述任務,直到所述數據質量檢測模塊的所述質量檢測結果中不存在異常指標。
7、在其中的一些實施例中,檢測所述輸出表中的指標,得到質量檢測結果,包括:
8、構建動態變化的區間矩陣;所述區間矩陣中的區間數值為所述指標的合理范圍;
9、基于所述區間矩陣,檢測所述輸出表中的指標,得到質量檢測結果。
10、在其中的一些實施例中,構建動態變化的區間矩陣,包括:
11、為所有所述指標賦予周期性標識;
12、基于所述周期性標識,判斷所述輸出表中的指標是否為周期性指標;
13、若不為周期性指標,則構建第一區間數值,基于所述第一區間數值構建動態變化的所述區間矩陣;
14、若為周期性指標,則判斷對應的所述指標的周期長度是否超過預設的長度閾值;
15、若不超過所述長度閾值,則構建第二區間數值,基于所述第二區間數值構建動態變化的所述區間矩陣;
16、若超過所述長度閾值,則判斷當前周期在本周期內是否超過預設的期數;
17、若超過所述期數,則構建第一區間數值,基于所述第一區間數值構建動態變化的所述區間矩陣;
18、是未超過所述期數,則構建第二區間數值,基于所述第二區間數值構建動態變化的所述區間矩陣。
19、在其中的一些實施例中,構建第一區間數值,包括:
20、根據第一區間數值公式和歷史賬期,確定區間數值。
21、在其中的一些實施例中,構建第二區間數值,包括:
22、根據第二區間數值公式和歷史賬期,確定區間數值。
23、在其中的一些實施例中,執行對應的所述任務,包括:
24、構建所述輸入表、所述輸出表與所述任務之間的關系矩陣;
25、根據所述關系矩陣和所述輸入表,執行對應的所述任務。
26、在其中的一些實施例中,構建所述輸入表、所述輸出表與所述任務之間的關系矩陣,包括:
27、初始化所述關系矩陣;
28、編輯所述任務,同時配置所述任務的輸入表和輸出表;所述輸入表的所述任務的數據輸入源;所述輸出表是所述任務的數據輸出源;
29、從所述任務、所述輸入表以及所述輸出表中,配置所述輸入表、所述輸出表與所述任務之間的關系矩陣。
30、第二個方面,在本實施例中提供了一種基于數據質量檢測任務重跑裝置,包括:hadoop元數據檢測模塊和數據質量檢測模塊;
31、所述hadoop元數據檢測模塊,與所述數據質量檢測模塊連接,用于在檢測到輸入表準備就緒時,觸發執行對應的任務,以生成輸出表;所述輸入表為所述任務的數據源;在檢測到所述輸出表生成后,觸發所述數據質量檢測模塊檢測所述輸出表中的指標;
32、所述數據質量檢測模塊,用于檢測所述輸出表中的指標,得到質量檢測結果;在所述質量檢測結果存在異常指標時,觸發所述hadoop元數據檢測模塊重新檢測所述輸入表是否發生變更;
33、所述hadoop元數據檢測模塊,還用于若所述輸入表發生變更,則重新自動觸發執行對應的所述任務,直到所述數據質量檢測模塊的所述質量檢測結果中不存在異常指標。
34、第三個方面,在本實施例中提供了一種計算機設備,包括存儲器、處理器以及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現上述第一個方面所述的基于數據質量檢測任務重跑方法。
35、第四個方面,在本實施例中提供了一種存儲介質,其上存儲有計算機程序,該程序被處理器執行時實現上述第一個方面所述的基于數據質量檢測任務重跑方法。
36、與相關技術相比,在本實施例中提供的基于數據質量檢測任務重跑方法、裝置及計算機設備,在hadoop元數據檢測模塊檢測到輸入表準備就緒時,觸發執行對應的任務,以生成輸出表;輸入表為任務的數據源;在hadoop元數據檢測模塊檢測到輸出表生成后,觸發數據質量檢測模塊檢測輸出表中的指標,得到質量檢測結果;在質量檢測結果存在異常指標時,觸發hadoop元數據檢測模塊重新檢測輸入表是否發生變更;若輸入表發生變更,則重新自動觸發執行對應的任務,直到數據質量檢測模塊的質量檢測結果中不存在異常指標;解決了相關技術中存在配置監控文件繁瑣,且無法自動識別重跑的時機,導致資源的浪費的問題;利用數據質量檢測模塊來自動檢測輸出表中的指標,根據檢測結果來實現自動觸發識別重跑,保障識別重跑的時機,以減少過多的人工干預。
37、本技術的一個或多個實施例的細節在以下附圖和描述中提出,以使本技術的其他特征、目的和優點更加簡明易懂。