專利名稱:數(shù)據(jù)倉庫中異常行為的處理方法及監(jiān)測服務器的制作方法
技術領域:
本發(fā)明涉及數(shù)據(jù)倉庫技術,尤其涉及一種數(shù)據(jù)倉庫中異常行為的處理方法及監(jiān)測服務器。
背景技術:
數(shù)據(jù)倉庫是在企業(yè)管理和決策中面向主題的、集成的、與時間相關的、不可修改的數(shù)據(jù)集合,也就是說對所有應用系統(tǒng),例如客戶關系管理系統(tǒng)、財務系統(tǒng)等,按照主題進行集成并記錄整個歷史變化情況。數(shù)據(jù)抽取、轉換、裝載(Extract、Transform、Load ;簡稱為 ETL)的過程是構建數(shù)據(jù)倉庫的重要過程,它通過抽取數(shù)據(jù)源中相關數(shù)據(jù),對數(shù)據(jù)進行轉換使其滿足數(shù)據(jù)倉庫的要求,并將數(shù)據(jù)加載到目的端的數(shù)據(jù)倉庫中。在實際應用中,該ETL過程經(jīng)常會有一些異常行為發(fā)生,例如提取了不相關的數(shù)據(jù)、經(jīng)轉換后的數(shù)據(jù)不符合數(shù)據(jù)倉庫要求等,這些問題會讓ETL過程崩潰,甚至會將錯誤帶入數(shù)據(jù)倉庫中。最初主要是由人工分析并監(jiān)控該ETL過程來防止異常發(fā)生,但其效率較低、 質量也不高。于是出現(xiàn)了一些帶有自動監(jiān)測ETL過程工具的數(shù)據(jù)倉庫,例如TERADATA, 其所提供的自動監(jiān)測工具名為ETL AUTOMATION。該工具采用客戶端/服務器(Client/ Server ;簡稱為-纖架構,通過數(shù)據(jù)倉庫內部接口,由用戶主動觸發(fā)查詢數(shù)據(jù)倉庫ETL過程中各個任務的狀態(tài)及相關日志,從而獲取ETL過程中出現(xiàn)的異常行為以便于采取補救措施,該方式在檢測效率和質量上都有了一定的提高。但是,該方式在檢測效率和檢測質量上的提高是以要求用戶必須頻繁主動觸發(fā)狀態(tài)查詢操作為基礎的,如果用戶未能及時主動觸發(fā)狀態(tài)查詢操作,就算ETL過程遇到異常, 用戶也無法及時獲知。
發(fā)明內容
本發(fā)明提供一種數(shù)據(jù)倉庫中異常行為的處理方法及監(jiān)測服務器,用以解決現(xiàn)有技術中用戶需要手動按鍵切換視頻輸出模式的缺陷,實現(xiàn)視頻輸出模式的自動切換。本發(fā)明提供一種數(shù)據(jù)倉庫中異常行為的處理方法,包括監(jiān)測服務器定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表,所述系統(tǒng)表包括任務信息;所述監(jiān)測服務器根據(jù)所述系統(tǒng)表中的任務信息,判斷所述數(shù)據(jù)倉庫的ETL過程是否存在異常行為;當判斷出所述數(shù)據(jù)倉庫的ETL過程存在異常行為時,所述監(jiān)測服務器將異常行為信息記錄到所述數(shù)據(jù)倉庫中的異常信息記錄表中;所述監(jiān)測服務器將所述異常行為信息發(fā)送給運維監(jiān)測設備。本發(fā)明提供一種監(jiān)測服務器,包括第一獲取模塊,用于定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表,所述系統(tǒng)表包括任務信息;判斷模塊,用于根據(jù)所述系統(tǒng)表中的任務信息,判斷所述數(shù)據(jù)倉庫的ETL過程是否存在異常行為;
記錄模塊,用于在所述判斷模塊判斷出所述數(shù)據(jù)倉庫的ETL過程存在異常行為時,將異常行為信息記錄到所述數(shù)據(jù)倉庫中的異常信息記錄表中;第一發(fā)送模塊,用于將所述異常行為信息發(fā)送給運維監(jiān)測設備。本發(fā)明的數(shù)據(jù)倉庫中異常行為的處理方法及監(jiān)測服務器,監(jiān)測服務器根據(jù)數(shù)據(jù)倉庫中系統(tǒng)表中記錄的任務信息來判斷ETL過程是否出現(xiàn)異常,并在出現(xiàn)異常時將異常行為信息記錄到數(shù)據(jù)倉庫的異常信息表中并將異常行為信息發(fā)送到運維監(jiān)測設備,以使運維人員及時獲取到異常行為信息,進而及時采取相應處理措施,與現(xiàn)有技術相比,運維人員無需頻繁的去查詢數(shù)據(jù)倉庫就可以及時獲知異常行為信息,保證了數(shù)據(jù)倉庫的安全性。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖;圖2為本發(fā)明另一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖;圖3為本發(fā)明再一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖;圖4為本發(fā)明又一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖;圖5為本發(fā)明又一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖;圖6為本發(fā)明一實施例提供的監(jiān)測服務器的結構示意圖;圖7為本發(fā)明另一實施例提供的監(jiān)測服務器的結構示意圖。
具體實施例方式為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。圖1為本發(fā)明一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖。如圖1 所示,本實施例的方法包括步驟101、監(jiān)測服務器定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表,該系統(tǒng)表包括任務信息。在每個數(shù)據(jù)倉庫中都存在記錄任務信息的系統(tǒng)表,任務信息主要是指與任務的 ETL過程相關的各種信息,例如任務的執(zhí)行狀態(tài)、任務的執(zhí)行時間、任務的提交時間等等。不同數(shù)據(jù)倉庫對應的系統(tǒng)表的實現(xiàn)方式不同,在一些數(shù)據(jù)倉庫中該系統(tǒng)表以一張表實現(xiàn),而在另一些數(shù)據(jù)倉庫中該系統(tǒng)表可由多張表來實現(xiàn),多張表用于分別存儲不同的任務信息。以TERADATA數(shù)據(jù)倉庫為例,本實施例的系統(tǒng)表包括ETL服務器映射關系表(ETL_ Server)、ETL 接收文件記錄表(ETL_Received File)、ETL 任務列表(ETL_J0B)。其中,ETL_ Server主要用于存儲任務與運行該任務的ETL服務器的映射關系,而ETL_Received File 主要用于記錄該數(shù)據(jù)倉庫對應的外部數(shù)據(jù)源、外部數(shù)據(jù)源上傳數(shù)據(jù)文件的時間等信息, ETL_J0B主要用于記錄每個任務的運行狀態(tài)、歷史執(zhí)行時間等信息。
其中,監(jiān)測服務器定時登錄數(shù)據(jù)倉庫,獲取其上的系統(tǒng)表。定時周期可以預先設定,且定時周期設定的越小監(jiān)測服務器對數(shù)據(jù)倉庫的監(jiān)測就越頻繁。定時周期可以根據(jù)實際情況來設定。步驟102、監(jiān)測服務器根據(jù)系統(tǒng)表中的任務信息,判斷數(shù)據(jù)倉庫的ETL過程是否存在異常行為。如果判斷結果為是,即數(shù)據(jù)倉庫的ETL過程中存在異常行為,則執(zhí)行步驟103 ; 如果判斷結果為否,即數(shù)據(jù)倉庫的ETL過程不存在異常行為,則執(zhí)行步驟105。由于系統(tǒng)表中記錄了與ETL過程相關的信息,因此,監(jiān)測服務器根據(jù)系統(tǒng)表中的任務信息來判斷數(shù)據(jù)倉庫的ETL過程是否出現(xiàn)異常行為。例如監(jiān)測服務器從任務信息中獲取當前任務的執(zhí)行狀態(tài)信息,直接執(zhí)行狀態(tài)信息判斷相應任務是否出現(xiàn)異常行為。以TERADATA數(shù)據(jù)倉庫為例,監(jiān)測服務器具體從ETL_ JOB中獲取各條任務的執(zhí)行狀態(tài)信息。其中,一條任務的執(zhí)行狀態(tài)包括等待(pending)、運行(running)、執(zhí)行成功(Done)或執(zhí)行失敗O^ail),且各種狀態(tài)的運行邏輯是先pending 再running最后Done或!^ail,其中,只要出現(xiàn)pending狀態(tài)就應當出現(xiàn)running。該條任務對應的執(zhí)行狀態(tài)信息包括pending、running. Done或i^iil。其中,當監(jiān)測服務器監(jiān)測到一條任務的執(zhí)行狀態(tài)信息包括i^ail或者僅包括pending和Done而不包括running時,說明該條任務的ETL過程出現(xiàn)異常,則判定該執(zhí)行狀態(tài)信息對應的該條任務出現(xiàn)異常行為。其中,該異常行為主要出現(xiàn)的數(shù)據(jù)轉換或加載過程中。又例如監(jiān)測服務器從任務信息中執(zhí)行狀態(tài)信息僅包括pending或者僅包括 pending和running的任務(即執(zhí)行狀態(tài)為非Done或非i^iil的任務)的歷史執(zhí)行時間,并根據(jù)歷史執(zhí)行時間判斷相應任務是否出現(xiàn)異常行為。以TERADATA數(shù)據(jù)倉庫為例,監(jiān)測服務器具體從ETL_J0B中獲取各條非Done或非i^ail任務的歷史執(zhí)行時間,該歷史執(zhí)行時間是指某個任務最近幾次(具體可以預先設定最近的執(zhí)行次數(shù))執(zhí)行時所需的時間。其中,對每條任務來說,其每次的執(zhí)行時間基本上是相同的,且該標準執(zhí)行時間以執(zhí)行時間閾值的形式存儲在系統(tǒng)表中,在本實施例中該系統(tǒng)表是指ETL_J0B。具體的,監(jiān)測服務器對歷史執(zhí)行時間進行平均處理,即用最近幾次的歷史執(zhí)行時間之和除以歷史執(zhí)行時間的個數(shù),獲取執(zhí)行狀態(tài)為非Done或非i^ail的任務的當前執(zhí)行時間,然后將當前執(zhí)行時間與執(zhí)行時間閾值進行比較,如果當前執(zhí)行時間大于執(zhí)行時間閾值,則判定執(zhí)行狀態(tài)為非Done或非i^ail的任務出現(xiàn)異常行為。反之,監(jiān)測服務器判定執(zhí)行狀態(tài)為非Done或非Mil的任務未出現(xiàn)異常行為。再例如監(jiān)測服務器從任務信息中獲取外部數(shù)據(jù)源預先設定的上傳數(shù)據(jù)文件的時間,并根據(jù)外部數(shù)據(jù)源預先設定的上傳數(shù)據(jù)文件的時間來判斷相應任務是否出現(xiàn)異常行為。以TERADATA數(shù)據(jù)倉庫為例,在ETL_ReCeived File中不僅存儲著外部數(shù)據(jù)源上傳的數(shù)據(jù)文件以及實際上傳數(shù)據(jù)文件的時間,還記錄著外部數(shù)據(jù)源應該上傳的數(shù)據(jù)文件的名稱以及應該上傳數(shù)據(jù)文件的時間(即預先設定的上傳數(shù)據(jù)文件的時間)。監(jiān)測服務器從ETL_ Received File中獲取外部數(shù)據(jù)源應該上傳數(shù)據(jù)文件的時間,將未接收到數(shù)據(jù)文件時的當前系統(tǒng)時間與外部數(shù)據(jù)源應該上傳數(shù)據(jù)文件的時間進行比較,如果當前系統(tǒng)時間與外部數(shù)據(jù)源應該上傳數(shù)據(jù)文件的時間的差值大于時間閾值,即超出了系統(tǒng)所允許的應該上傳數(shù)據(jù)文件的時間范圍時,判定該數(shù)據(jù)文件對應的任務出現(xiàn)異常行為,即該數(shù)據(jù)抽取過程出現(xiàn)了異常行為;反之,判定該數(shù)據(jù)抽取過程未出現(xiàn)異常行為。例如設某一外部數(shù)據(jù)源應該上傳數(shù)據(jù)文件的時間范圍為下午2點,時間閾值為半個小時,也就是系統(tǒng)所允許的外部數(shù)據(jù)源上傳數(shù)據(jù)文件的時間范圍為2點至2點半,如果監(jiān)測服務器監(jiān)測到到下午2點半時仍未接收到數(shù)據(jù)文件,則監(jiān)測服務器判定與該數(shù)據(jù)文件對應的任務出現(xiàn)異常行為,且該異常行為具體出現(xiàn)在數(shù)據(jù)抽取過程中。其中,每個數(shù)據(jù)文件對應一個任務,只有在接收到數(shù)據(jù)文件后才構成一條任務。其中,上述給出了幾種監(jiān)測服務器根據(jù)系統(tǒng)表中的任務信息進行異常行為判斷的示例,但并不限于此。監(jiān)測服務器可以根據(jù)實際所使用的數(shù)據(jù)倉庫以及數(shù)據(jù)倉庫的系統(tǒng)表中的具體任務信息而進行不同的判斷操作。步驟103、監(jiān)測服務器將異常行為信息記錄到數(shù)據(jù)倉庫中的異常信息記錄表中,并執(zhí)行步驟104。具體的,當監(jiān)測服務器判斷出數(shù)據(jù)倉庫的ETL過程出現(xiàn)異常行為時,登錄數(shù)據(jù)倉庫并將異常行為信息記錄到數(shù)據(jù)倉庫的異常信息記錄表中。其中,異常行為信息是指與出現(xiàn)的異常行為相關的信息。例如對于在數(shù)據(jù)轉換或加載過程中出現(xiàn)的執(zhí)行狀態(tài)異常行為, 該異常行為信息包括出現(xiàn)異常行為的任務標識、異常行為出現(xiàn)在轉換或加載過程、異常狀態(tài)的具體體現(xiàn)形式(例如是I^ail狀態(tài)還是包括pending和Done狀態(tài)而不包括running的狀態(tài))等。又例如對于在數(shù)據(jù)轉換過程中出現(xiàn)的執(zhí)行時間超時的異常行為,該異常行為信息包括出現(xiàn)異常行為的任務標識、異常行為出現(xiàn)在數(shù)據(jù)轉換過程、該異常行為任務的執(zhí)行時間具體為多少等。再例如對于在數(shù)據(jù)抽取過程中出現(xiàn)的未能在正常時間范圍內上傳數(shù)據(jù)文件的異常行為而言,該異常行為信息包括出現(xiàn)異常行為的任務標識、異常行為出現(xiàn)在數(shù)據(jù)抽取過程、該異常行為對應的數(shù)據(jù)文件的實際上傳時間以及應該上傳時間等。步驟104、監(jiān)測服務器將異常行為信息發(fā)送給運維監(jiān)測設備,并執(zhí)行步驟105。當監(jiān)測服務器監(jiān)測到ETL過程中的異常行為之后,將異常行為信息發(fā)送給運維監(jiān)測設備,以便及時告知運維人員ETL過程出現(xiàn)的異常行為。其中,運維監(jiān)測設備可以是任何能夠及時通知運維人員的設備,例如計算機、運維人員的手機等。本實施例提供一種監(jiān)測服務器將異常行為信息發(fā)送給運維監(jiān)測設備的實施方式, 該實施方式包括監(jiān)測服務器在獲取到異常行為并將異常行為信息記錄到數(shù)據(jù)倉庫的異常信息記錄表中之后,直接將記錄到異常信息記錄表中的異常行為信息發(fā)送給運維監(jiān)測設備。換句話說,監(jiān)測服務器每次獲取到異常行為時,都會通過運維監(jiān)測設備將相應的異常行為信息告知運維人員,以便于運維人員及時采取相應措施對異常行為進行處理,保證數(shù)據(jù)倉庫的安全性和可靠性。在上述實施方式中,異常行為的發(fā)現(xiàn)過程與異常行為信息的上報過程是同一過程。本實施例另提供一種監(jiān)測服務器將異常行為信息發(fā)送給運維監(jiān)測設備的實施方式,在該實施方式中,異常行為的發(fā)現(xiàn)和異常行為信息的上報是獨立執(zhí)行的。具體的,監(jiān)測服務器定時登錄數(shù)據(jù)倉庫查詢其上的異常信息記錄表,判斷當前異常信息記錄表中的異常行為信息與上一次查詢時異常信息記錄表中的異常行為信息是否相同;如果相同,說明沒有新的異常行為信息被記錄到異常信息記錄表中;如果不相同,說明有新的異常行為信息(即不相同的異常行為信息)被記錄到了異常信息記錄表中,則將不相同的異常行為信息發(fā)送給運維監(jiān)測設備。其中,當運維監(jiān)測設備為手機時,監(jiān)測服務器具體向該手機發(fā)送攜帶異常行為信息的短信,以將ETL過程中出現(xiàn)的異常行為告知運維人員。步驟105、結束此次監(jiān)測操作。其中,當監(jiān)測服務器根據(jù)系統(tǒng)表中的任務信息未發(fā)現(xiàn)異常行為時,可以結束本次監(jiān)測操作,并等待下一次監(jiān)測操作的到來,即等待下一次定時時間的到來。本實施例的數(shù)據(jù)倉庫中異常行為的處理方法,監(jiān)測服務器自動根據(jù)預設的定時周期對數(shù)據(jù)倉庫進行監(jiān)測,通過數(shù)據(jù)倉庫中系統(tǒng)表中的任務信息判斷ETL過程是否出現(xiàn)異常行為,在出現(xiàn)異常行為時將異常行為記錄到異常信息表中并通知運維人員,使得運維人員不必主動去數(shù)據(jù)倉庫查詢即可及時獲取ETL過程中出現(xiàn)的異常行為,解決了因人為查詢數(shù)據(jù)倉庫的頻繁程度不夠造成無法及時獲取異常行為的問題,還提高了運維人員獲取異常行為信息的及時性,便于及時采取相應措施,保證了數(shù)據(jù)倉庫的安全性和可靠性。圖2為本發(fā)明另一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖。本實施例基于圖1所示實施例實現(xiàn),如圖2所示,本實施例的方法在步驟104之后還包括步驟106、監(jiān)測服務器根據(jù)系統(tǒng)表和異常信息記錄表,對當前任務進行綜合處理, 生成監(jiān)測結果。其中,步驟106的一種實施方式為每次發(fā)現(xiàn)異常行為并將異常行為記錄到異常信息表中之后,直接從數(shù)據(jù)倉庫中獲取系統(tǒng)表和異常信息記錄表(即根據(jù)當時的異常信息記錄表),根據(jù)兩個表的信息對當前任務進行綜合分析,以更加全面的對當前任務的狀態(tài)進行分析,生成包括當前任務的詳細執(zhí)行狀態(tài)信息的監(jiān)測結果。步驟106的再一種實施方式為監(jiān)測服務器按照預先設定的另一定時周期與數(shù)據(jù)倉庫建立連接,即登錄數(shù)據(jù)倉庫,并獲取系統(tǒng)表和異常信息記錄表。在該實施方式中,監(jiān)測服務器定時監(jiān)測數(shù)據(jù)倉庫異常行為的操作、監(jiān)測服務器定時檢查異常信息記錄表發(fā)現(xiàn)新的異常行為信息的操作和監(jiān)測服務器定時生成監(jiān)測結果的操作是并行執(zhí)行的,三種定時周期互不相關。在上述各實施方式中,監(jiān)測服務器上保存有登錄數(shù)據(jù)倉庫的密碼,在網(wǎng)絡連接正常的情況下,可以直接登錄數(shù)據(jù)倉庫。步驟107、監(jiān)測服務器存儲監(jiān)測結果,以供運維人員查看。具體的,監(jiān)測服務器將上述監(jiān)測結果制作成服務器端Web頁面,并采用B/S結果展現(xiàn)出來。運維人員只需通過運維監(jiān)測設備登錄監(jiān)測服務器的頁面即可實時查看到當前所有任務的狀態(tài)信息。更進一步,在本實施例中,監(jiān)測服務器還可以根據(jù)系統(tǒng)表(例如ETLJerver)中存儲的任務與運行任務的ETL服務器的映射關系,獲取運行當前任務的ETL服務器,并與運行當前任務的ETL服務器建立連接,從ETL服務器上獲取當前任務的日志文件,并存儲日志文件,以供運維人員查看該日志文件。其中,日志文件中記錄了每個任務在整個運行過程中的各種信息,運維人員通過該日志文件可以查詢到任務出現(xiàn)異常的具體原因。監(jiān)測服務器也可以通過制作服務器端Web頁面將該日志文件展現(xiàn)出來,運維人員通過登錄監(jiān)測服務器即可實時查看到日志文件。本實施例的數(shù)據(jù)倉庫中異常行為的處理方法,監(jiān)測服務器根據(jù)發(fā)現(xiàn)異常行為后記錄的異常行為信息對當前任務做綜合分析和處理,并允許運維人員查看處理結果,從而方便運維人員查找出現(xiàn)異常行為的原因,便于對異常行為進行處理,進一步保證了數(shù)據(jù)倉庫的安全性和可靠性。圖3為本發(fā)明再一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖。本實施例可基于圖1所示實施例實現(xiàn),如圖3所示,本實施例的方法還包括步驟301、監(jiān)測服務器定時查詢ETL服務器的日志文件,并將日志文件中最后一條日志的記錄時間與當前系統(tǒng)時間進行比較,判斷最后一條日志的記錄時間與當前系統(tǒng)時間的差值是否大于時間差閾值;如果判斷結果為是,即比較結果為記錄時間與當前系統(tǒng)時間的差值大于時間差閾值,執(zhí)行步驟302;如果判斷結果為否,S卩比較結果為記錄時間與當前系統(tǒng)時間的差值小于或等于時間差閾值,執(zhí)行步驟105。其中,監(jiān)測服務器可以從任務信息中獲取任務與執(zhí)行任務的ETL服務器的映射關系,然后定時登錄ETL服務器,并對ETL服務器進行異常監(jiān)測。在正常情況下,隨著任務的執(zhí)行,ETL服務器會不斷將任務執(zhí)行過程中的信息記錄到與該任務對應的日志文件中,因此,監(jiān)測服務器通過判斷日志文件中最后一條日志的時間與當前系統(tǒng)時間的差值即可判斷出ETL服務器是否一直在執(zhí)行任務;如果該ETL服務器不再執(zhí)行任務,則認為該ETL服務器處于假死狀態(tài)。其中,監(jiān)測服務器定時監(jiān)測各ETL服務器的操作與定時監(jiān)測數(shù)據(jù)倉庫的操作可以并行執(zhí)行,也可以同時執(zhí)行。步驟302、監(jiān)測服務器判定ETL服務器處于假死狀態(tài),將異常行為信息記錄到異常信息記錄表中,并觸發(fā)ETL服務器重啟對應的服務進程。當監(jiān)測服務器發(fā)現(xiàn)ETL服務器處于假死狀態(tài)時,監(jiān)測服務器將該異常行為信息記錄到異常信息記錄表中,同時觸發(fā)ETL服務器重啟對應的服務進程以重新正常執(zhí)行相應的任務。本實施例的數(shù)據(jù)倉庫中異常行為的處理方法,監(jiān)測服務器除了根據(jù)系統(tǒng)表中的任務信息判斷ETL過程是否出現(xiàn)異常行為之外,進一步通過各ETL服務器的日志文件判斷各 ETL服務器是否處于假死狀態(tài),以判斷出ETL過程中的另一種異常行為(即由ETL服務器處于假死狀態(tài)造成的異常),從而更加全面的監(jiān)測數(shù)據(jù)倉庫中的異常行為,進一步保證了數(shù)據(jù)倉庫的可靠性、正確性和安全性。圖4為本發(fā)明又一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖。本實施例基于圖2所示實施例實現(xiàn),如圖4所示,本實施例的方法在步驟107之后還包括步驟401、監(jiān)測服務器接收預設終端號碼對應的終端發(fā)送的短信,根據(jù)預設處理規(guī)則將短信內容和終端號碼生成文本文件,并存儲到預設文件夾下。在實際應用中,采用數(shù)據(jù)倉庫的企業(yè)處于種種安全考慮通常會將數(shù)據(jù)倉庫所在系統(tǒng)與外部網(wǎng)絡相隔離,但是在實際運行維護過程中,需要及早獲知各種異常行為并及時進行相應處理。基于此,本實施例的監(jiān)測服務器上安裝有一臺全球移動通信系統(tǒng)(GlcAal System of Mobile communication ;簡稱為GSM)調制解調器(MODEM)設備,允許接收終端設備發(fā)送的短信或者電話,以便于運維人員或用戶等及時獲知監(jiān)測結果。其中,為了安全起見,監(jiān)測服務器預先設定了所允許接收的終端設備的終端號碼。當有終端設備發(fā)送的短信時,監(jiān)測服務器首先判斷終端的號碼是否為預設終端號碼,如果判斷結果為是,就接收短信;如果判斷結果為否,直接將該短信丟棄。當監(jiān)測服務器確定接收短信時,將短信存儲到預先設定的一文件夾中。步驟402、監(jiān)測服務器定時輪循數(shù)據(jù)庫,并判斷數(shù)據(jù)庫中是否有文本文件存在;如果判斷結果為是,即監(jiān)測服務器輪循到文件夾中存在文本文件時,執(zhí)行步驟403 ;如果判斷結果為否,即監(jiān)測服務器輪循到文件夾中不存在文本文件時,執(zhí)行步驟105。在本實施例中,監(jiān)測服務器會定時輪循文件夾,以判斷文件夾中是否存在文本文件。其中,定時輪循文件夾的周期可以預先設定。步驟403、監(jiān)測服務器取出文件夾中的文本文件,并根據(jù)預設檢測規(guī)則對文本文件中的短信內容進行合法性檢測,即判斷短信內容是否合法;如果判斷結果為是,即檢測結果為短信內容合法,執(zhí)行步驟404;如果判斷結果為否,即檢測結果為短信內容不合法,執(zhí)行步驟405。當監(jiān)測服務器輪循到文件夾中存在文本文件時,會取出該文本文件。所述取出是指讀取文本文件并將文件夾中的文本文件刪除,以便于存儲下一個文本文件。同時,在監(jiān)測服務器上預先設定了檢測規(guī)則,用于檢測文本文件中的短信內容是否合法。步驟404、監(jiān)測服務器根據(jù)短信內容將監(jiān)測結果發(fā)送給終端,并執(zhí)行步驟105。當檢測結果為合法時,監(jiān)測服務器根據(jù)短信內容將所生成的監(jiān)測結果通過GSM MODEM設備發(fā)送給終端設備,以使處于外部網(wǎng)絡的運維人員或工作人員能夠及時獲取當前任務的狀態(tài)信息,便于進行緊急處理等。具體的,運維人員或工作人員可以直接編寫結構化查詢語言(Structured Query Language ;簡稱為SQL)查詢命令或者操作系統(tǒng)命令來查詢并獲取監(jiān)測結果,而監(jiān)測服務器可以直接將短信內容翻譯成相應的命令并通過相應的命令將監(jiān)測結果發(fā)送給終端設備。另外,運維人員或工作人員還可以通過短信方式對數(shù)據(jù)倉庫系統(tǒng)進行控制,例如用戶可以使用特定終端號碼并經(jīng)由GSMM0DEM設備發(fā)送短信“STOP IP 地址”到監(jiān)測服務器,來實現(xiàn)遠程停止一個服務器,或者停止某個正在運行的服務。步驟405、監(jiān)測服務器將文本文件丟棄,并執(zhí)行步驟105。為保證數(shù)據(jù)倉庫的安全性,當監(jiān)測服務器發(fā)現(xiàn)短信內容不合法時,直接將文本文件丟棄,并結束操作。進一步說明,本實施例處于外部網(wǎng)絡中的運維人員或工作人員等除了通過短信獲取監(jiān)測服務器生成的監(jiān)測結果外,還可以通過向監(jiān)測服務器發(fā)送短信來控制ETL服務器或相應進程的重啟、對某個任務強制重新運行或跳過不處理等操作。本實施例的數(shù)據(jù)倉庫中異常行為的處理方法,監(jiān)測服務器通過配置GSMM0DEM設備允許外部網(wǎng)絡中的運維人員或工作人員獲取數(shù)據(jù)倉庫中的異常行為信息以便于對數(shù)據(jù)倉庫中異常行為進行及時處理等操作,在保證數(shù)據(jù)倉庫安全性的同時,提高了數(shù)據(jù)倉庫的安全性和正確性。圖5為本發(fā)明又一實施例提供的數(shù)據(jù)倉庫中異常行為的處理方法的流程圖。本實施例基于圖2所示的實施例實現(xiàn),如圖5所示,本實施例的方法在步驟107之后還包括步驟501、監(jiān)測服務器獲取指定用戶發(fā)送的郵件,并根據(jù)郵件的郵件主題或郵件附件將監(jiān)測結果以郵件形式發(fā)送給用戶。具體的,為了保證數(shù)據(jù)倉庫的安全性,同時使外部網(wǎng)絡中的運維人員或工作人員及早獲知各種異常行為并及時進行相應處理,本實施例的監(jiān)測服務器預先申請了一個郵箱作為指定郵箱,監(jiān)測服務器預先編寫自動監(jiān)聽的Windows后臺服務進程,以輪循方式定時連接到指定郵箱的第3版本郵局協(xié)議(Post Office Protocol 3 ;簡稱為P0P3)服務器檢測指定郵箱中是否接收到郵件;當查詢到郵件時,判斷郵件的郵箱地址是否為指定用戶的郵箱地址;如果判斷結果為是,監(jiān)測服務器獲知該郵件,并根據(jù)該郵件的郵件主題或郵件附件內容將監(jiān)測結果通過郵箱發(fā)送給外網(wǎng)的運維人員或工作人員。如果判斷結果為否,監(jiān)測服務器直接將郵件刪除。其中,在獲取郵件之后,監(jiān)測服務器還會根據(jù)預先設定的檢測規(guī)則對郵件主題或郵件附件進行合法性判斷,例如判斷郵件主題命名規(guī)則是否正確、附件內容大小是否符合要求等,以保證數(shù)據(jù)倉庫的安全性。進一步說明,本實施例處于外部網(wǎng)絡中的運維人員或工作人員等除了通過郵件獲取監(jiān)測服務器生成的監(jiān)測結果外,還可以通過向監(jiān)測服務器發(fā)送郵件來控制ETL服務器或相應進程的重啟、對某個任務強制重新運行或跳過不處理等操作。本實施例的數(shù)據(jù)倉庫中異常行為的處理方法,監(jiān)測服務器通過申請郵箱并允許外部網(wǎng)絡中指定的運維人員或工作人員獲取數(shù)據(jù)倉庫中的異常行為信息以便于對數(shù)據(jù)倉庫中異常行為進行及時處理等操作,在保證數(shù)據(jù)倉庫安全性的同時,提高了數(shù)據(jù)倉庫的安全性和正確性。在上述各實施例中,監(jiān)測服務器定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表之前,即步驟101 之前還包括監(jiān)測服務器根據(jù)本地存儲的密碼定時與數(shù)據(jù)倉庫建立連接,如果連接建立成功,監(jiān)測服務器執(zhí)行步驟101 ;如果連接建立不成功,監(jiān)測服務器判定數(shù)據(jù)倉庫連接發(fā)生異常,并通過其顯示裝置顯示連接異常信息。即在步驟101之前先登錄數(shù)據(jù)倉庫,只有在登錄數(shù)據(jù)倉庫成功之后,才能執(zhí)行后續(xù)操作,否則說明連接數(shù)據(jù)倉庫出現(xiàn)異常,該異??赡苁怯捎诰W(wǎng)絡造成的,也可能是由于數(shù)據(jù)倉庫本身出現(xiàn)問題造成的。進一步,監(jiān)測服務器還可以將上述數(shù)據(jù)倉庫連接異常信息發(fā)送給運維監(jiān)測設備,由運維人員做進行處理。圖6為本發(fā)明一實施例提供的監(jiān)測服務器的結構示意圖。如圖6所示,本實施例的監(jiān)測服務器包括第一獲取模塊61、判斷模塊62、記錄模塊63和第一發(fā)送模塊64。其中,第一獲取模塊61,用于定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表,該系統(tǒng)表包括任務信息。判斷模塊62,與第一獲取模塊61連接,用于根據(jù)系統(tǒng)表中的任務信息,判斷數(shù)據(jù)倉庫的 ETL過程是否存在異常行為。記錄模塊63,與判斷模塊62連接,用于在判斷模塊62判斷出數(shù)據(jù)倉庫的ETL過程存在異常行為時,將異常行為信息記錄到數(shù)據(jù)倉庫中的異常信息記錄表中。第一發(fā)送模塊64,用于將異常行為信息發(fā)送給運維監(jiān)測設備。本實施例的監(jiān)測服務器的各功能模塊可用于執(zhí)行圖1所示方法實施例的流程,其工作原理不再贅述,詳見方法實施例的描述。本實施例的監(jiān)測服務器,通過上述各功能模塊自動根據(jù)設定的定時周期對數(shù)據(jù)倉庫進行監(jiān)測,通過數(shù)據(jù)倉庫中系統(tǒng)表中的任務信息判斷ETL過程是否出現(xiàn)異常行為,在出現(xiàn)異常行為時將異常行為記錄到異常信息表中并通知運維人員,使得運維人員不必主動去數(shù)據(jù)倉庫查詢即可及時獲取ETL過程中出現(xiàn)的異常行為,解決了因人為查詢數(shù)據(jù)倉庫的頻繁程度不夠造成無法及時獲取異常行為的問題,還提高了運維人員獲取異常行為信息的及時性,便于及時采取相應措施,保證了數(shù)據(jù)倉庫的安全性和可靠性。圖7為本發(fā)明另一實施例提供的監(jiān)測服務器的結構示意圖。本實施例基于圖6所示實施例實現(xiàn),如圖7所示,本實施例的判斷模塊62包括以下任一判斷單元或其組合第一判斷單元621,用于從任務信息中獲取當前任務的執(zhí)行狀態(tài)信息,當執(zhí)行狀態(tài)信息包括 Fail或者當執(zhí)行狀態(tài)信息僅包括pending和Done而不包括running時,判定執(zhí)行狀態(tài)信息對應的任務出現(xiàn)異常行為。第二判斷單元622,用于從任務信息中執(zhí)行狀態(tài)信息僅包括pending或僅包括 pending和running的任務的歷史執(zhí)行時間,對歷史執(zhí)行時間進行平均處理,獲取執(zhí)行狀態(tài)信息僅包括pending或僅包括pending和running的任務的當前執(zhí)行時間,當當前執(zhí)行時間大于執(zhí)行時間閾值時,判定執(zhí)行狀態(tài)信息僅包括pending或僅包括pending和running 的任務出現(xiàn)異常行為。第三判斷單元623,用于從任務信息中獲取外部數(shù)據(jù)源預先設定的上傳數(shù)據(jù)文件的時間,當未收到數(shù)據(jù)文件時的當前系統(tǒng)時間與外部數(shù)據(jù)源預先設定的上傳數(shù)據(jù)文件的時間的差值大于時間閾值時,判定數(shù)據(jù)抽取過程出現(xiàn)了異常行為。其中,上述各功能單元具體可用于執(zhí)行圖1所示實施例中步驟102描述的流程,其具體工作原理不再贅述,詳見方法實施例的描述。進一步,第一發(fā)送模塊64的一種實現(xiàn)結構包括查詢判斷單元641和發(fā)送單元 642。查詢判斷單元641,用于定時查詢異常信息記錄表,并判斷當前異常信息記錄表中的異常行為信息與上一次查詢時異常信息記錄表中的異常行為信息是否相同。發(fā)送單元642,與查詢判斷單元641連接,用于在查詢判斷單元641判斷出存在不相同的異常行為信息時,將不相同的異常行為信息發(fā)送給運維監(jiān)測設備。另外,第一發(fā)送模塊64還可以通過與記錄模塊63連接,并在記錄模塊63將異常行為信息記錄到所述異常信息記錄表中后,直接將記錄模塊63記錄到異常信息表中的異常行為信息發(fā)送給運維監(jiān)測設備。該實施方式未進行圖示。上述第一發(fā)送模塊或其功能單元可分別用于執(zhí)行圖1所示實施例中步驟104中兩種實施方式的流程,其具體工作原理不再贅述,詳見方法實施例的描述。如圖7所示,本實施例的監(jiān)測服務器還包括第一連接模塊71,用于在第一獲取模塊61定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表之前,與數(shù)據(jù)倉庫建立連接。其中,第一連接模塊71具體會根據(jù)本地存儲的密碼定時登錄數(shù)據(jù)倉庫,以與數(shù)據(jù)倉庫建立連接,并為第一獲取模塊 61定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表打下基礎。其中,如果第一連接模塊71未能與數(shù)據(jù)倉庫建立連接,則說明連接過程發(fā)生異常。進一步,本實施例的監(jiān)測服務器還包括生成模塊72、存儲模塊73和第二連接模塊74。生成模塊72,用于根據(jù)系統(tǒng)表和異常信息記錄表,對當前任務進行綜合處理,生成監(jiān)測結果。存儲模塊73,用于存儲監(jiān)測結果,以供運維人員查看。第二連接模塊74,用于定時與數(shù)據(jù)倉庫建立連接,并獲取系統(tǒng)表和異常信息記錄表,并提供給生成模塊72?;谏鲜?,本實施例的監(jiān)測服務器還包括第三連接模塊75。第三連接模塊,用于與運行當前任務的ETL服務器建立連接,從ETL服務器上獲取當前任務的日志文件,并存儲日志文件,以供運維人員查看。通過該模塊可便于運維人員分析出現(xiàn)異常行為的原因。另外,本實施例的監(jiān)測服務器還包括查詢比較模塊76和記錄觸發(fā)模塊77。其中,查詢比較模塊76,用于定時查詢ETL服務器的日志文件,并將日志文件中最后一條日志的記錄時間與當前系統(tǒng)時間進行比較。記錄觸發(fā)模塊77,與查詢比較模塊76連接,用于在查詢比較模塊76的比較結果為差值大于時間差閾值時,判定ETL服務器處于假死狀態(tài),將異常行為信息記錄到異常信息記錄表中,并觸發(fā)ETL服務器重啟對應的服務進程。本實施例的監(jiān)測服務器通過上述模塊還可以對ETL服務器異常行為進行監(jiān)測,更加全面的對ETL過程中異常行為進行監(jiān)測,使得運維人員能夠更加全面的了解各種異常行為,并及時采取相應措施。更進一步,本實施例的監(jiān)測服務器還包括接收模塊81、輪循檢測模塊82和第二發(fā)送模塊83。其中,接收模塊81,用于接收預設終端號碼對應的終端發(fā)送的短信,根據(jù)預設處理規(guī)則將短信內容和所述終端號碼生成文本文件,并存儲到預設文件夾下。輪循檢測模塊82, 與接收模塊81連接,用于輪循文件夾,并在文件夾中存在文本文件時,取出文本文件,根據(jù)預設檢測規(guī)則對文本文件中的短信內容進行合法性檢測。第二發(fā)送模塊83,與輪循檢測模塊82連接,用于在輪循檢測模塊82的檢測結果為合法時,根據(jù)短信內容將監(jiān)測結果發(fā)送給終端。上述模塊可用于執(zhí)行圖4所示實施例中的相應流程,其工作原理不再贅述,詳見方法實施例的描述。更進一步,本實施例的監(jiān)測服務器還可以包括第二獲取模塊84。第二獲取模塊 84,用于獲取指定用戶發(fā)送的郵件,并根據(jù)郵件的主題或郵件附件將監(jiān)測結果以郵件形式發(fā)送給所述用戶。上述模塊可用于執(zhí)行圖5所示實施例中的相應流程,其工作原理不再贅述,詳見方法實施例的描述。本實施例的監(jiān)測服務器通過上述接收模塊81、輪循檢測模塊82和第二發(fā)送模塊 83,或者通過第二獲取模塊84可以接收處于數(shù)據(jù)倉庫所在網(wǎng)絡之外的其他網(wǎng)絡中的用戶或運維人員發(fā)送的獲取監(jiān)測結果的請求,并將監(jiān)測結果及時提供給外部網(wǎng)絡中的用戶或運維人員,可以使外部網(wǎng)絡中的用戶或運維人員及時了解數(shù)據(jù)倉庫的ETL過程中的異常行為,便于及時采取措施,保證數(shù)據(jù)倉庫的安全。本領域普通技術人員可以理解實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質包括R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質。最后應說明的是以上實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的精神和范圍。
權利要求
1.一種數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,包括監(jiān)測服務器定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表,所述系統(tǒng)表包括任務信息; 所述監(jiān)測服務器根據(jù)所述系統(tǒng)表中的任務信息,判斷所述數(shù)據(jù)倉庫的數(shù)據(jù)抽取、轉換、 裝載ETL過程是否存在異常行為;當判斷出所述數(shù)據(jù)倉庫的ETL過程存在異常行為時,所述監(jiān)測服務器將異常行為信息記錄到所述數(shù)據(jù)倉庫中的異常信息記錄表中;所述監(jiān)測服務器將所述異常行為信息發(fā)送給運維監(jiān)測設備。
2.根據(jù)權利要求1所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,所述監(jiān)測服務器根據(jù)所述系統(tǒng)表中的任務信息,判斷所述數(shù)據(jù)倉庫的ETL過程是否存在異常行為包括所述監(jiān)測服務器從所述任務信息中獲取當前任務的執(zhí)行狀態(tài)信息,當所述執(zhí)行狀態(tài)信息包括執(zhí)行失敗i^ail或者當所述執(zhí)行狀態(tài)信息僅包括等待pending和執(zhí)行成功Done而不包括運行running時,判定所述執(zhí)行狀態(tài)信息對應的任務出現(xiàn)異常行為;或者所述監(jiān)測服務器從所述任務信息中執(zhí)行狀態(tài)信息僅包括pending或僅包括pending和 running的任務的歷史執(zhí)行時間,對所述歷史執(zhí)行時間進行平均處理,獲取所述執(zhí)行狀態(tài)信息僅包括pending或僅包括pending和running的任務的當前執(zhí)行時間,當所述當前執(zhí)行時間大于執(zhí)行時間閾值時,判定所述執(zhí)行狀態(tài)信息僅包括pending或僅包括pending和 running的任務出現(xiàn)異常行為;或者所述監(jiān)測服務器從所述任務信息中獲取外部數(shù)據(jù)源預先設定的上傳數(shù)據(jù)文件的時間, 當未收到所述數(shù)據(jù)文件時的當前系統(tǒng)時間與外部數(shù)據(jù)源預先設定的上傳數(shù)據(jù)文件的時間的差值大于時間閾值時,判定數(shù)據(jù)抽取過程出現(xiàn)了異常行為。
3.根據(jù)權利要求1所述的數(shù)據(jù)倉庫中異常行為處理方法,其特征在于,所述監(jiān)測服務器將所述異常行為信息發(fā)送給運維監(jiān)測設備包括所述監(jiān)測服務器定時查詢所述異常信息記錄表,并判斷當前異常信息記錄表中的異常行為信息與上一次查詢時異常信息記錄表中的異常行為信息是否相同;當判斷結果為不同時,將不相同的異常行為信息發(fā)送所述運維監(jiān)測設備。
4.根據(jù)權利要求1所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,所述監(jiān)測服務器將所述異常行為信息發(fā)送給運維監(jiān)測設備包括所述監(jiān)測服務器將所述異常行為信息記錄到所述異常信息記錄表中之后,直接將記錄到所述異常信息表中的所述異常行為信息發(fā)送給所述運維監(jiān)測設備。
5.根據(jù)權利要求1所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,所述運維監(jiān)測設備為手機;所述監(jiān)測服務器將所述異常行為信息發(fā)送給運維監(jiān)測設備具體為所述監(jiān)測服務器向所述手機發(fā)送攜帶所述異常行為信息的短信。
6.根據(jù)權利要求1-5任一項所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,還包括所述監(jiān)測服務器根據(jù)所述系統(tǒng)表和所述異常信息記錄表,對當前任務進行綜合處理, 生成監(jiān)測結果;所述監(jiān)測服務器存儲所述監(jiān)測結果,以供運維人員查看。
7.根據(jù)權利要求6所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,所述監(jiān)測服務器根據(jù)所述系統(tǒng)表和所述異常信息記錄表,對當前任務進行綜合處理,生成監(jiān)測結果之前包括所述監(jiān)測服務器定時與所述數(shù)據(jù)倉庫建立連接,并獲取所述系統(tǒng)表和所述異常信息記錄表。
8.根據(jù)權利要求7所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,還包括 所述監(jiān)測服務器與運行所述當前任務的ETL服務器建立連接,從所述ETL服務器上獲取所述當前任務的日志文件,并存儲所述日志文件,以供所述運維人員查看。
9.根據(jù)權利要求1-5任一項所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,所述監(jiān)測服務器定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表之前包括所述監(jiān)測服務器根據(jù)本地存儲的密碼定時與所述數(shù)據(jù)倉庫建立連接; 如果連接建立成功,所述監(jiān)測服務器執(zhí)行獲取所述數(shù)據(jù)倉庫中的系統(tǒng)表的操作; 如果連接建立不成功,所述監(jiān)測服務器判定所述數(shù)據(jù)倉庫連接發(fā)生異常。
10.根據(jù)權利要求1-5任一項所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,還包括所述監(jiān)測服務器定時查詢ETL服務器的日志文件,并將所述日志文件中最后一條日志的記錄時間與當前系統(tǒng)時間進行比較;如果差值大于時間差閾值,所述監(jiān)測服務器判定所述ETL服務器處于假死狀態(tài),將異常行為信息記錄到所述異常信息記錄表中,并觸發(fā)所述ETL服務器重啟對應的服務進程。
11.根據(jù)權利要求6所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,還包括所述監(jiān)測服務器接收預設終端號碼對應的終端發(fā)送的短信,根據(jù)預設處理規(guī)則將短信內容和所述終端號碼生成文本文件,并存儲到預設文件夾下;當所述監(jiān)測服務器輪循到所述文件夾存在所述文本文件時,取出所述文本文件,根據(jù)預設檢測規(guī)則對所述文本文件中的短信內容進行合法性檢測;當檢測結果為合法時,所述監(jiān)測服務器根據(jù)所述短信內容將所述監(jiān)測結果發(fā)送給所述終端。
12.根據(jù)權利要求6所述的數(shù)據(jù)倉庫中異常行為的處理方法,其特征在于,還包括所述監(jiān)測服務器獲取指定用戶發(fā)送的郵件,并根據(jù)所述郵件的郵件主題或郵件附件將所述監(jiān)測結果以郵件形式發(fā)送給所述用戶。
13.—種監(jiān)測服務器,其特征在于,包括第一獲取模塊,用于定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表,所述系統(tǒng)表包括任務信息; 判斷模塊,用于根據(jù)所述系統(tǒng)表中的任務信息,判斷所述數(shù)據(jù)倉庫的數(shù)據(jù)抽取、轉換、 裝載ETL過程是否存在異常行為;記錄模塊,用于在所述判斷模塊判斷出所述數(shù)據(jù)倉庫的ETL過程存在異常行為時,將異常行為信息記錄到所述數(shù)據(jù)倉庫中的異常信息記錄表中;第一發(fā)送模塊,用于將所述異常行為信息發(fā)送給運維監(jiān)測設備。
14.根據(jù)權利要求13所述的監(jiān)測服務器,其特征在于,所述判斷模塊包括以下任一判斷單元或其組合第一判斷單元,用于從任務信息中獲取當前任務的執(zhí)行狀態(tài)信息,當所述執(zhí)行狀態(tài)信息包括執(zhí)行失敗i^ail或者當所述執(zhí)行狀態(tài)信息僅包括等待pending和執(zhí)行成功Done而不包括運行running時,判定所述執(zhí)行狀態(tài)信息對應的任務出現(xiàn)異常行為;第二判斷單元,用于從所述任務信息中執(zhí)行狀態(tài)信息僅包括pending或僅包括 pending和running的任務的歷史執(zhí)行時間,對所述歷史執(zhí)行時間進行平均處理,獲取所述執(zhí)行狀態(tài)信息僅包括pending或僅包括pending和running的任務的當前執(zhí)行時間,當所述當前執(zhí)行時間大于執(zhí)行時間閾值時,判定所述執(zhí)行狀態(tài)信息僅包括pending或僅包括 pending和running的任務出現(xiàn)異常行為;或第三判斷單元,用于從所述任務信息中獲取外部數(shù)據(jù)源預先設定的上傳數(shù)據(jù)文件的時間,當未收到所述數(shù)據(jù)文件時的當前系統(tǒng)時間與外部數(shù)據(jù)源預先設定的上傳數(shù)據(jù)文件的時間的差值大于時間閾值時,判定數(shù)據(jù)抽取過程出現(xiàn)了異常行為。
15.根據(jù)權利要求13所述的監(jiān)測服務器,其特征在于,所述第一發(fā)送模塊包括查詢判斷單元,用于定時查詢所述異常信息記錄表,并判斷當前異常信息記錄表中的異常行為信息與上一次查詢時異常信息記錄表中的異常行為信息是否相同;發(fā)送單元,用于在所述查詢判斷單元判斷出存在不相同的異常行為信息時,將不相同的異常行為信息發(fā)送給所述運維監(jiān)測設備。
16.根據(jù)權利要求13所述的監(jiān)測服務器,其特征在于,還包括所述第一發(fā)送模塊具體用于在所述記錄模塊將所述異常行為信息記錄到所述異常信息記錄表中后,直接將所述記錄模塊記錄到所述異常信息表中的異常行為信息發(fā)送給所述運維監(jiān)測設備。
17.根據(jù)權利要求13-16任一項所述的監(jiān)測服務器,其特征在于,還包括第一連接模塊,用于在所述第一獲取模塊定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表之前,與所述數(shù)據(jù)倉庫建立連接。
18.根據(jù)權利要求13-16任一項所述的監(jiān)測服務器,其特征在于,還包括生成模塊,用于根據(jù)所述系統(tǒng)表和所述異常信息記錄表,對當前任務進行綜合處理,生成監(jiān)測結果;存儲模塊,用于存儲所述監(jiān)測結果,以供運維人員查看。
19.根據(jù)權利要求18所述的監(jiān)測服務器,其特征在于,還包括第二連接模塊,用于定時與所述數(shù)據(jù)倉庫建立連接,并獲取所述系統(tǒng)表和所述異常信息記錄表。
20.根據(jù)權利要求19所述的監(jiān)測服務器,其特征在于,還包括第三連接模塊,用于與運行所述當前任務的ETL服務器建立連接,從所述ETL服務器上獲取所述當前任務的日志文件,并存儲所述日志文件,以供所述運維人員查看。
21.根據(jù)權利要求13-16任一項所述的監(jiān)測服務器,其特征在于,還包括查詢比較模塊,用于定時查詢ETL服務器的日志文件,并將所述日志文件中最后一條日志的記錄時間與當前系統(tǒng)時間進行比較;記錄觸發(fā)模塊,用于在所述查詢比較模塊的比較結果為差值大于時間差閾值時,判定所述ETL服務器處于假死狀態(tài),將異常行為信息記錄到所述異常信息記錄表中,并觸發(fā)所述ETL服務器重啟對應的服務進程。
22.根據(jù)權利要求17所述的監(jiān)測服務器,其特征在于,還包括接收模塊,用于接收預設終端號碼對應的終端發(fā)送的短信,根據(jù)預設處理規(guī)則將短信內容和所述終端號碼生成文本文件,并存儲到預設文件夾下;輪循檢測模塊,用于輪循所述文件夾,并在所述文件夾中存在所述文本文件時,取出所述文本文件,根據(jù)預設檢測規(guī)則對所述文本文件中的短信內容進行合法性檢測;第二發(fā)送模塊,用于在所述輪循檢測模塊的檢測結果為合法時,根據(jù)所述短信內容將所述監(jiān)測結果發(fā)送給所述終端。
23.根據(jù)權利要求17所述的監(jiān)測服務器,其特征在于,還包括 第二獲取模塊,用于獲取指定用戶發(fā)送的郵件,并根據(jù)所述郵件的主題或郵件附件將所述監(jiān)測結果以郵件形式發(fā)送給所述用戶。
全文摘要
本發(fā)明提供一種數(shù)據(jù)倉庫中異常行為的處理方法及監(jiān)測服務器。其中,方法包括監(jiān)測服務器定時獲取數(shù)據(jù)倉庫中的系統(tǒng)表,所述系統(tǒng)表包括任務信息;所述監(jiān)測服務器根據(jù)所述系統(tǒng)表中的任務信息,判斷所述數(shù)據(jù)倉庫的ETL過程是否存在異常行為;當判斷出所述數(shù)據(jù)倉庫的ETL過程存在異常行為時,所述監(jiān)測服務器將異常行為信息記錄到所述數(shù)據(jù)倉庫中的異常信息記錄表中;所述監(jiān)測服務器將所述異常行為信息發(fā)送給運維監(jiān)測設備。采用本發(fā)明技術方案,運維人員無需頻繁查詢數(shù)據(jù)倉庫就可以及時獲取異常行為信息,保證了數(shù)據(jù)倉庫的安全性。
文檔編號G06Q10/06GK102411599SQ20111021816
公開日2012年4月11日 申請日期2011年8月1日 優(yōu)先權日2011年8月1日
發(fā)明者朱江, 李凡, 李炅宇, 靳軍, 高大鵬 申請人:中國民生銀行股份有限公司