TWI838318B - 企業資料維運系統及其方法 - Google Patents
企業資料維運系統及其方法 Download PDFInfo
- Publication number
- TWI838318B TWI838318B TW112136114A TW112136114A TWI838318B TW I838318 B TWI838318 B TW I838318B TW 112136114 A TW112136114 A TW 112136114A TW 112136114 A TW112136114 A TW 112136114A TW I838318 B TWI838318 B TW I838318B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- maintenance
- enterprise
- database
- reverse recovery
- Prior art date
Links
- 238000012423 maintenance Methods 0.000 title claims abstract description 104
- 238000000034 method Methods 0.000 title claims description 9
- 238000011084 recovery Methods 0.000 claims abstract description 64
- 238000012217 deletion Methods 0.000 claims description 22
- 230000037430 deletion Effects 0.000 claims description 22
- 238000012986 modification Methods 0.000 claims description 20
- 230000004048 modification Effects 0.000 claims description 20
- 230000006870 function Effects 0.000 description 11
- 238000012550 audit Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000013474 audit trail Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000002513 implantation Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Abstract
本發明提供一種企業資料維運系統,包括:一維運伺服器,維護一企
業維運資料,該企業維運資料儲存於一維運資料庫,用於管理和執行來自一使用者的操作指令;以及一反向回復指令產生器,對應每一操作指令的執行,根據一反向資料參數資料庫之參數產生多個反向回復指令,該反向回復指令儲存執行之每該操作指令;其中,該些反向回復指令產生器產生之該些反向回復指令儲存於一轉返(Rollback)儲存資料模組,當維運伺服器接收回復請求時,可以從該轉返儲存資料模組取得並執行該些反向回復指令。
Description
本發明係關於一種資料維運系統,特別係關於一種企業內部儲存重要資料之資料維運系統。
網路應用系統運行時,因應系統維運人員有些時得進入數據庫修改資料,以解決應用程式設計上的錯誤而造成的錯誤資料。從稽核與資安的需求來看,維運人員所搜尋與修改的資料必須留下稽核軌跡,以供稽核人員日後的稽核需求。尤其是應用系統如果儲存敏感個資、更要小心地確保維運人員是因為客戶回報有客戶問題,或者是內部使用者經由正當的申請流程的商業需求而必須存取正式資料庫。
現今常用之資料庫系統一旦不小心誤刪或是修正錯誤,多會使用還原系統搭配區域伺服器之快照(snapshot),其中快照是一個可以將資料庫產生一個資料庫的複本的一種技術,找出最接近之欲還原點進行還原,但若其中有其他輸入無誤或正確刪除之資料皆會被一起還原,且還原工程需要大量耗時,因此導致效率低下。故需要一種能夠快速存取並且誤刪或誤植時能夠及時處理之資料庫系統,乃該行業亟待解決的問題之一。
為解決以上問題,本發明提供一種企業資料維運系統,包括:一維運伺服器,維護一企業維運資料,該企業維運資料儲存於一維運資料庫,用於管理和執行來自一使用者的操作指令;以及一反向回復指令產生器,對應每一操作指令的執行,根據一反向資料參數資料庫之參數產生多個反向回復指令,該反向回復指令儲存執行之每該操作指令;其中,該些反向回復指令產生器產生之該些反向回復指令儲存於一轉返(Rollback)儲存資料模組,當維運伺服器接收回復請求時,可以從該轉返儲存資料模組取得並執行該些反向回復指令。
本發明再提供一種企業資料維運系統,其中該些操作指令包括:一查詢功能、一新增功能、一修改功能,以及一刪除功能其中之一;一維運資料庫選擇模組,根據該些操作指令對該維運資料庫之目標欄位執行該查詢功能、該新增功能、該修改功能或該刪除功能其中之一;該些反向回復指令包括:刪除新增之資料、回傳修改前之資料作為回復指令,以及插入所刪除前的資料其中之一;該維運資料庫中具有複數個敏感表格(table),該些敏感表格需要管理員權限才可進行該或該些操作指令中新增、修改,以及刪除其中之一。
本發明又提供一種企業資料維運系統,其中包括一應用程式介面,該應用程式介面使用一JAVA資料庫連接(Java Database Connectivity)提供該使用者訪問該維運資料庫進行操作;該JAVA資料庫可以透過找出該企業維運資料之關聯母資料,並透過串聯方式以一藍圖儲存寫入該轉返儲存資料模組,依序恢復該企業維運資料之關聯子資料。
藉由本發明之一種企業資料維運系統,使用者可以透過該應用程式介面訪問該維運資料庫,進行新增、修改,以及刪除資料等操作,若誤植或
是誤刪資料時,可以透過反向回復指令產生器呼叫存儲於轉返儲存資料模組取得並執行該些反向回復指令,提高維運效率。
1:維運伺服器
11:轉返儲存資料模組
12:維運資料庫選擇模組
121:維運資料庫
13:反向回復指令產生器
131:反向指令參數資料庫
2:應用程式介面
S1~S7:步驟
圖1為本發明企業資料維運系統之一系統架構圖。
圖2為本發明企業資料維運系統之一反向回復指令產生器之運行示意圖。
圖3為本發明企業資料維運系統之一系統流程圖。
圖4為本發明企業資料維運系統之一操作指令之範例。
以下將參考圖式更完整說明本發明,並且藉由例示顯示特定範例具體實施例。不過,本主張主題可具體實施於許多不同形式,因此所涵蓋或申請主張主題的建構並不受限於本說明書所揭示的任何範例具體實施例;範例具體實施例僅為例示。同樣,本發明在於提供合理寬闊的範疇給所申請或涵蓋之主張主題。除此之外,例如主張主題可具體實施為方法、裝置或系統。因此,具體實施例可採用例如硬體、軟體、韌體或這些的任意組合(已知並非軟體)之形式。
請參考圖1,圖1為本發明企業資料維運系統之一系統架構圖。在一個企業中,當維運人員(即使用者)收到維運需求時必須使用資料庫工具,或者直接下指令來存取資料庫,使用者必須擁有進入正式資料庫的權限,才可以透過企業內部之電子設備開啟應用程式介面2進入維運伺服器1之中。
在一實施例中,該應用程式介面2使用一JAVA資料庫連接(Java Database Connectivity,又稱JDBC)提供該使用者訪問該維運資料庫1進行操作,JAVA資料庫連接是一種使用Java語言中用來規範客戶端程式如何來訪問資料庫的應用程式介面,其不需要在客戶端載入資料庫廠商提供的程式碼庫,單個驅動程式可以對多個資料庫進行訪問,可延伸性較好。
其中該維運伺服器1需先透過該企業資料維運系統之管理者(即具管理員身份)開啟維運伺服器1之稽核日誌,進行稽核日誌資之操作,如新增、修改,以及刪除等功能。使用者必須使用企業之維運帳號進行登入,而企業內部可以透過維運帳號的分級給予不同之權限,讓使用者不會誤觸不可修改、刪除之資料。
而當具有操作權限的使用者進行維運操作時,係指透過維運資料庫選擇模組12進行操作維運資料庫121之資料,以進行之新增、修改,以及刪除之操作。而該些操作紀錄皆會被轉返(Rollback)儲存資料模組11所儲存,該轉返儲存資料模組11會儲存一系列之操作,並透過反向回復指令產生器13產生對應之指令。例如,當使用者新增一筆資料的同時,轉返儲存資料庫模組11便會記錄該筆資料,並呼叫反向回復指令產生器13生成一反向回復指令。在一具體實施例中,新增之指令對應的刪除之指令,反向回復指令產生器13會透過反向指令參數資料庫131生成該對應之刪除指令並回傳至轉返儲存資料模組11之中。當有回復需求時,轉返儲存資料庫模組11會執行轉返回復,並回到修改前之資料狀態。
其中,關於刪除的維運指令雖然相對較少,但是刪除之回復指令卻最為複雜且困難,例如,若資料呈現資料樹(data tree)之型態,即一部分資
料具有母資料與子資料等關聯性。這種具有關聯性之資料,若移除子資料,並不會對於母資料有影響,但若移除母資料,子資料通常也會一併跟著刪除;即使子資料不一併刪除,也會導致部分關鍵繼承資料缺失而無法運行。因此,本發明較佳實施例使用串聯刪除(Cascade Delete)之設定,當刪除母資料時也會一併刪除子資料,同時在轉返儲存資料庫模組11存儲時,亦須一併進行該母資料與子資料之串聯存儲。
若偵測到資料有串聯刪除的設定時,維運伺服器1會要求使用者先刪除關聯之子資料,再刪除母資料。此時轉返儲存資料庫模組11會透過外鍵(Foreign key)將母資料與子資料取回串聯起來,並以串聯方式透過一藍圖儲存寫入轉返儲存資料模組11,若需執行轉返回復時,可以透過母資料與子資料之串聯一同復原該些資料,以避免關聯資料之缺失。
再參考圖2,圖2為反向回復指令產生器13之運行示意圖。當使用者透過應用程式介面2訪問維運伺服器1並操作維運資料庫121時,該些對應之操作指令在被執行時,轉返儲存資料模組11會記錄該些操作指令之反向回復指令,而該些反向回復指令需透過反向回復指令產生器13所生成。
查詢指令並無實際更改維運資料庫121任何內容,故不需要儲存反向回復指令。新增指令之反向回復指令為刪除指令,即刪除該新增之資料。修改指令之反向回復指令為回復指令,即記錄儲存修改前之資料,並在需要時回傳修改前之資料。刪除指令之反向回復指令為新增指令,即新增該刪除之資料,插入至該資料位於維運資料庫121之原位置。
反向回復指令產生器13在產出該些反向回復指令的同時,會向反向指令參數資料庫131提取相對應之參數,每一個指令皆有對應之參數,以及位
置參數等。該些詳細內容可進一步參考圖4,圖4為一操作指令之實施例示意圖,其中查詢指令之稽核日誌參數為查詢表格之欄位、查詢之資料表;刪除指令之稽核日誌參數為刪除資料的條件、刪除資料的筆數;新增指令之稽核日誌參數為新增之資料位置與新增之資料表;修改指令之稽核日誌參數即為修改之資料。稽核日誌中參數之部分會被記錄至相關對應之操作指令之反向指令參數資料庫131中,以作為後續反向回復指令之參數所使用。
繼續參考圖4,圖4亦揭示權限與對應維運操作指令對於敏感表格之限制。查詢指令中,會依權限限制使用者對於敏感表格可見之筆數與隱碼,權限越高,可見數越高,其中隱碼技術係指加密、數字水印、隱藏式標記和密碼學等相關技術。刪除指令中,會依權限決定是否可以刪除敏感表格的資料,與可刪除的筆數之限制,以防誤刪除過多重要且不該移除之敏感表格。新增指令中,會依權限決定是否可以在敏感表格新增資料。而修改指令中,會依權限決定是否可以修改敏感表格之資料。
再繼續參考圖4,圖4提供一操作指令及其反向回復指令之實施例,其中查詢指令中,會先使用“select”去尋找位置,並透過“from”和“where”設定尋找維運資料庫121位置之範圍,查詢指令並於反向回復指令;在刪除指令中,會使用“DELETE”刪除指令,並同樣透過“from”和“where”設定刪除維運資料庫121位置之範圍,而刪除指令的反向指令步驟為滿足刪除資料條件的刪除前資料,並插入所刪除的資料,先使用“select”去尋找原資料之位置,再透過插入“insert into”曾刪除之資料至原本之位置。其中當偵測到資料有串聯刪除的設定時,維運伺服器1會要求使用者先刪除關聯之子資料,再刪除母資料。
此時轉返儲存資料庫模組11會透過外鍵(Foreign key)將母資料與子資料取回串聯起來,並以串聯方式透過一藍圖儲存寫入轉返儲存資料模組11,若需執行轉返回復時,可以透過母資料與子資料之串聯一同復原該些資料,以避免關聯資料之缺失。有時維運資料庫121的資料設計會形成迴路,即兩資料互相為對方的母資料,該迴路之檢查可透過建立一個依賴圖(Dependency graph)、再針對這個圖進行拓樸排序(Topological sort)避免造成迴路之產生。其中該依賴圖為在計算機科學領域中,表示多個對象相互依賴的有向圖。可以根據依賴關係圖推導出尊重給定依賴關係的評估順序或不存在評估順序。
其中,當使用“cascade delete”指令,也就是串聯刪除指令,可以串聯刪除母資料及其子資料。相對的,本發明利用藍圖儲存母資料與子資料的串聯,當復原母資料時,可以將母資料與子資料一同復原。在一具體實施例中,當僅利用一般刪除功能時,若刪除母資料,則子資料都無所依附。若利用串聯刪除時,可以串聯刪除母資料及其子資料。若要回復時,即透過儲存在轉返儲存資料模組11的藍圖將母資料與子資料一同復原。
新增指令中,會使用插入“insert”指令,透過“values”設定新增插入維運資料庫121位置之參數,而新增指令的反向指令步驟則是刪除先前新增之資料,使用“select”去尋找位置,再使用“DELETE”刪除指令刪除相關指令;修改指令中,會使用“update”與“set”指令修改,透過“where”尋找維運資料庫121位置目標,而修改指令的反向指令步驟為回傳修改前的資料,並同樣將修改指令作為反向回復指令使用。在此範例中,修改指令在「2020-12-01」的時間點做出修改,而其反向回復時為將「2020-11-05」的時間點同樣使用“update”與“set”指令修改,進行修改指令將數據修改,返還至「2020-11-05」的時間點之數據。
請參考圖3,圖3為本發明企業資料維運系統之一方法流程圖。一企業內之維運人員可透過應用程式介面2登入維運伺服器1,而該維運伺服器1會依據登入身分的不同有不同之權限控管(S1)。維運伺服器1會根據這次使用者(維運人員)登入,並將此次維運活動整合為一邏輯單元,該邏輯單元會記錄該次維運活動,並且儲存為稽核日誌(S2)。
維運伺服器1會根據邏輯單元串聯維運資料庫121中,維運需求相關之維運資料,並根據該次登入之權限設定與調整敏感欄位與對該次使用者的限制設定,並且針對此次維運活動,維運伺服器1提供相關之資料欄位的查詢、新增、修改、刪除的功能(S3~S5),例如,此次登入的權限為一工程師權限,該工程師並無法更改,甚至無法查看一些較機密之維運資料。相對地,若此次登入之權限為一資訊經理之權限,該資訊經理可以查詢所有維運資料庫121內的資訊,但由於防止誤刪過多筆重要資訊,仍然會對該權限之使用者進行刪除、修改之次數限制等。
在使用者進行指令操作時,反向回復指令產生器13會產生對應之回復指令,並儲存於轉返儲存資料模組11,如新增指令會產生刪除新增資料之指令、修改指令會產生回傳修改前之資料作為修改回復指令,以及刪除指令會產生插入所刪除前的資料之新增指令,其中查詢指令不會有反向回復指令(S6)。當使用者發生錯誤,需要修改、回復時,維運伺服器1接收回復請求,會從轉返儲存資料模組11取得反向回復指令,執行該些反向回復指令,以回復指令至原本狀態(S7)。其中該反向回復指令可以針對多次指令中之某一單次指令進行反向回復,而不需如系統還原將全部指令全部重置。
以上所述實施例僅表達了本發明的幾種實施方式,其描述較為具體和詳細,但並不能因此而理解為對發明專利範圍的限制。應當指出的是,對於本領域的普通技術人員來說,在不脫離本發明構思的前提下,還可以做出若干變形和改進,這些都屬於本發明的保護範圍。因此,本發明專利的保護範圍應以所附請求項為準。
熟習該項技術者將瞭解,本發明可具體實施為系統、方法或電腦程式產品。因此,本發明可為完整硬體具體實施例、完整軟體具體實施例(包含韌體、常駐軟體、微碼等)或軟體與硬體的組合具體實施例之樣態,在此全部通稱為「電路」、「模組」或「系統」。「電路」、「模組」或「系統」可包括一或多個個別實體硬體及/或軟體組件之一或多個部分,其可一起執行「電路」、「模組」或「系統」所揭示功能,或者「電路」、「模組」或「系統」可為一個獨立單元(例如,硬體的及/或軟體的)。再者,本發明的樣態可採用具有媒體內具體實施電腦可讀取程式碼的一或多個電腦可讀取媒體內具體實施之電腦程式產品之形式。
本說明書可運用任何一或多個電腦可讀取媒體的組合。該電腦可讀取媒體可為電腦可讀取信號媒體或電腦可讀取儲存媒體。電腦可讀取媒體例如可為,但不受限於電、磁、光學、電磁、紅外線或半導體系統、設備或裝置或上述任何合適的組合。電腦可讀取儲存媒體的更多特定實例(非詳盡列舉)包括:具有一或多條線的電連接、可攜式電腦磁碟、硬碟、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可抹除可程式唯讀記憶體(EPROM或快閃記憶體)、光纖、可攜式小型光碟唯讀記憶體(CD-ROM)、光學儲存裝置、磁性儲存裝置或前述任何合適的組合。在本文件的內文中,電腦可讀取儲存媒
體可為:可包含或儲存程式,來讓指令執行系統、設備或裝置使用或相連之任何有形媒體。
1:維運資料庫
11:轉返儲存資料模組
12:維運資料庫選擇模組
121:維運資料庫
13:反向回復指令產生器
131:反向指令參數資料庫
2:應用程式介面
Claims (8)
- 一種企業資料維運系統,包括:一維運伺服器,維護一企業維運資料,該企業維運資料儲存於一維運資料庫,用於管理和執行來自一使用者的操作指令;以及一反向回復指令產生器,對應每一操作指令的執行,根據一反向資料參數資料庫之參數產生多個反向回復指令,該反向回復指令儲存執行之每該操作指令;其中,該反向回復指令產生器產生之該些反向回復指令儲存於一轉返(Rollback)儲存資料模組,當維運伺服器接收回復請求時,從一轉返儲存資料模組取得並執行該些反向回復指令;其中,該些反向回復指令包括刪除新增之資料、回傳修改前之資料作為回復指令,以及插入所刪除前的資料其中之一。
- 如請求項1之企業資料維運系統,其中該些操作指令包括:一查詢功能、一新增功能、一修改功能,以及一刪除功能其中之一。
- 如請求項2之企業資料維運系統,其中進一步包括:一維運資料庫選擇模組,根據該些操作指令對該維運資料庫之目標欄位執行該查詢功能、該新增功能、該修改功能或該刪除功能其中之一。
- 如請求項1之企業資料維運系統,其中該維運資料庫中具有複數個敏感表格(table),該些敏感表格需要管理員權限才可進行該或該些操作指令中新增、修改,以及刪除其中之一。
- 如請求項1之企業資料維運系統,其中進一步包括:一應用程式介面,該應用程式介面使用一JAVA資料庫連接(Java Database Connectivity)提供該使用者訪問該維運資料庫進行操作。
- 如請求項5之企業資料維運系統,其中該JAVA資料庫可以透過找出該企業維運資料之關聯母資料,並透過串聯方式以一藍圖儲存寫入該轉返儲存資料模組,依序恢復該企業維運資料之關聯子資料。
- 一種企業資料維運方法,包含:由一應用程式介面,接收一使用者之複數個操作指令,以維護一企業維運資料;由一維運伺服器,儲存該企業維運資料於一維運資料庫,並執行來自該使用者之該些操作指令;由一反向回復指令產生器,對應每一操作指令的執行,根據一反向資料參數資料庫之參數產生多個反向回復指令。
- 如請求項7之企業資料維運方法,其中該反向回復指令產生器,將該些反向回復指令儲存於一轉返儲存資料模組,當該維運伺服器接收回復請求時,該維運伺服器從該轉返儲存資料模組取得並執行該些反向回復指令。
Publications (1)
Publication Number | Publication Date |
---|---|
TWI838318B true TWI838318B (zh) | 2024-04-01 |
Family
ID=
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200723089A (en) | 2005-08-31 | 2007-06-16 | Ibm | Heterogenous high availability cluster manager |
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200723089A (en) | 2005-08-31 | 2007-06-16 | Ibm | Heterogenous high availability cluster manager |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7539680B2 (en) | Revision control for database of evolved design | |
US7805419B2 (en) | System for tracking and analyzing the integrity of an application | |
CN101351805B (zh) | 用于提供数字权利管理系统之间互操作性的方法和装置 | |
US5581749A (en) | System and method for maintaining codes among distributed databases using a global database | |
US6895414B2 (en) | Method and apparatus for authorizing and reporting changes to device configurations | |
JP2008171433A (ja) | 電子計算機のファイルシステムドライバの制御方法 | |
US20050114338A1 (en) | System and method for determining file system data integrity | |
WO2006108057A2 (en) | Records management federation | |
US20140214866A1 (en) | Electronic device and database accessing method | |
CN110781525A (zh) | 一种基于区块链的档案信息安全管理系统和方法 | |
US9961111B2 (en) | Assured federated records management | |
US20140165036A1 (en) | Methods and apparatus for authentication of configuration items via configuration item change analysis | |
Doroudian et al. | Multilayered database intrusion detection system for detecting malicious behaviors in big data transaction | |
US11704114B2 (en) | Data structures for managing configuration versions of cloud-based applications | |
JP2007148946A (ja) | 不正アクセス検知方法 | |
KR100786261B1 (ko) | 메타데이터 저장소에의 메타데이터 자동적재 방법 | |
TWI838318B (zh) | 企業資料維運系統及其方法 | |
CN112968862A (zh) | 一种基于redis的单点登录方法与装置 | |
US20230334344A1 (en) | Distributed ledger based machine-learning model management | |
US20040139141A1 (en) | Integration of virtual data within a host operating environment | |
CN114626084A (zh) | 用于控制对数据的访问的安全智能容器 | |
JP4857199B2 (ja) | 情報資産管理システム、ログ分析装置、及びログ分析用プログラム | |
US11093485B2 (en) | Branch-based recovery in a database system | |
US10659483B1 (en) | Automated agent for data copies verification | |
CN106293897B (zh) | 组件自动化调度系统 |