跳至主要內容

什麼是資料完整性?

什麼是資料完整性?

資料完整性強調維持資料完整性,確保資料在整個生命週期中保持準確、無誤、一致,且可正常發揮作用。無論存取請求數目及資料量和速度為何,都必須能夠管理單一資料存放區中的資料完整性。現代雲端環境需要在分散式資料存放區和服務之間進行複雜的持續性資料移動。高輸送量線上交易處理 (OLTP) 系統需要嚴格的資料完整性檢查,以維持系統一致性。資料工程師必須對全新和現有資料存放區和流程 (包括整合、備份和雲端遷移) 執行資料完整性檢查。本文探討雲端資料完整性管理的挑戰和解決方案。

資料完整性是在整個生命週期中維持資料準確性、一致性和完整性的流程。這是資料品質保證作業的關鍵部分,可確保組織的資料與交易處理、商業智慧及分析相關,並且十分可靠。資料完整性涵蓋各種方法和協議,可在保護敏感資料免受未經授權存取的同時,用於驗證資料。

為什麼資料完整性十分重要? 資料完整性可確保組織的資料保持可靠,以用於記錄財務、其他業務活動及決策。無論處理資料及其轉換的工具和角色為何,資料完整性至關重要。

資料完整性是線上交易處理 (OLTP) 系統的關鍵因素,因為其可確保準確處理商業交易、將財務作業保持一致,並防止重複入帳或遺漏交易等問題。資料完整性失效可能會導致未遵循法規和降低客戶滿意度等後果。

維護資料完整性時會面臨哪些挑戰?

若要確保組織內的資料完整性,則需要解決與人員和技術相關的資料管理挑戰。

OLTP 環境

OLTP 環境中最大的資料完整性挑戰,是在維持資料一致性的同時管理並行交易,尤其是在作業量較大的期間。這項挑戰需要在嚴格的原子性、一致性、隔離性和耐久性 (ACID) 合規性與效能要求之間達成平衡才能克服。在該環境中,多名使用者必須能夠同時修改相同的資料,而不會遇到競爭狀況和鎖死情形,並且還必須保持系統的即時處理能力。

商業智慧和分析

對於商業智慧和分析使用案例,資料來源和系統之間的有限整合,會阻止公司維持統一、準確的資料資產檢視。此外,依賴手動輸入和手動收集資料可能會導致影響資料準確性的錯字、遺漏和不一致性情形。

稽核和資料軌跡

另一個挑戰是缺少適當的稽核軌跡,因此很難追蹤從收集到刪除階段的資料歷史記錄。組織可能會無法掌握未經授權的資料修改情況。舊式系統使用過時的檔案格式或缺少必要驗證功能,進一步使確保資料完整性的作業變得複雜。將資料移至雲端可實作更集中化的資料品質機制,並減少資料完整性檢查所需的時間和作業量。

資料在雲端中受到何種保護?

資料完整性可分為兩種主要類型。

實體完整性

實體完整性流程可防止資料因自然災害、斷電、硬體故障或影響實體儲存裝置的其他因素而受損或毀損。在雲端中,實體完整性會由雲端供應商自動管理。這是雲端供應商在「共同責任模式」下的責任。

例如,AWS 資料中心會為儲存資料的實體裝置提供四層資料安全基礎結構。資料安全功能包括:

  • 透過多重要素身分驗證和電子控制保護伺服器室存取的嚴格存取控制。
  • 未經授權資料移除自動偵測等入侵防範措施。
  • 從安裝和佈建到解除安裝和停用階段的安全儲存裝置管理。
  • 包括設備檢查等 2,600 多個安全要求的嚴格第三方稽核。

邏輯完整性

邏輯完整性流程可確保資料符合其所在之儲存系統的基礎規則。邏輯完整性可進一步分為四個子類型:

  • 網域完整性可以透過限制特定範圍、格式或預先定義集內的值 (例如使用資料類型和其他類似資料限制) 來確保資料的準確性。
  • 實體完整性會透過主索引鍵等機制,確保唯一識別個別資料記錄,避免索引鍵欄位出現重覆值或空值。
  • 參考完整性會強制執行外部索引鍵限制,進而維持資料表之間關係的一致性,以防止出現孤立的資料記錄。
  • 使用者定義的完整性可在標準限制之外實作業務特定規則,例如自訂驗證邏輯或應用程式層級強制執行。

雲端使用者需要負責實作邏輯完整性限制,並確保資料品質。這是客戶在「共同責任模式」下的責任。

不過,AWS 資料服務可提供各種機制來支援資料完整性檢查,例如檢查總和演算法、資料品質監控工具,以及備份和資料同步處理期間的自動化資料完整性檢查。

受管理服務可提供自動且可設定的防護機制,以確保您的資料完整性。在 OLTP 系統和資料庫中,邏輯完整性流程有助於保持每個交易的不可分割性、一致性、獨立性和耐用性。

如何確保雲端中的資料完整性?

在 AWS 雲端中實作邏輯完整性時,請考慮下列措施。

實作物件資料完整性

大多數雲端資料作業都是從 Amazon S3 儲存貯體著手,其可以將任何資料類型儲存為物件。您可以經常在 Amazon S3 儲存貯體、資料庫和其他雲端服務或內部部署儲存體之間移動資料。Amazon S3 提供內建的檢查總和機制,可降低上傳、下載和複製期間的資料完整性風險。

檢查總和是使用特定演算法從資料產生的唯一固定長度值。其會建立獨特的數位指紋,使系統得以偵測資料毀損或意外修改。複製物件時,Amazon S3 會計算來源物件的檢查總和並將其套用到目標物件。如果出現不符合的情況,Amazon S3 會發出警示。Amazon S3 支援分段上傳的完整物件和複合檢查總和。完整物件檢查總和涵蓋整個檔案,而複合檢查總和會彙總個別區塊層級檢查總和。

請依下列所述的方式使用檢查總和功能

上傳

Amazon S3 支援多種安全雜湊演算法 (SHA) 和循環冗餘檢查 (CRC) 演算法,包括 CRC-64/NVME、CRC-32、CRC-32C、SHA-1 和 SHA-256。如果使用 AWS 管理主控台,請在上傳期間選取檢查總和演算法。如果未指定檢查總和,Amazon S3 預設會採用 CRC-64/NVME。

下載

下載物件時,您可以請求儲存的檢查總和值以驗證資料完整性。根據上傳處於完成或進行中狀態,您需要分別使用 GetObject、HeadObject 或 ListParts 作業來擷取檢查總和值。

複製

如果使用 CopyObject 作業複製物件,Amazon S3 會為整個物件產生直接檢查總和。如果物件最初是以分段上傳的形式上傳,那麼即使資料保持不變,其檢查總和值也會在複製時變更。

實作資料管道完整性

另一個常見的使用案例是將資料移動到雲端資料湖、倉儲或受管資料庫服務。在此類資料管道中設定資料完整性檢查很容易發生錯誤,而且作業繁瑣又耗時。您必須手動編寫監控程式碼和資料品質規則,在資料品質下降時提醒資料取用者。

移轉期間

AWS Database Migration Service (DMS) 會透過多種內建的保護措施和驗證機制,在移轉至 AWS 雲端資料庫期間保護資料完整性。DMS 會執行自動驗證來比較來源和目標資料,並透過資料重新同步來識別和解決差異。

DMS 包含檢查點和復原功能,可在發生中斷時透過最後一個已知良好狀態恢復移轉作業,同時提供全面的監控和記錄功能來追蹤移轉進度。此外,DMS 會透過對傳輸中的資料進行 SSL 加密,並與 AWS 安全服務整合來確保資料安全性。

資料庫基礎結構

AWS 資料庫會透過多種全面的機制和功能來保護資料完整性,包括自動備份和多可用區域部署,以確保資料的耐用性和一致性。這些資料庫透過內建限制來強制執行參考完整性、維持 ACID 合規性以實現交易一致性,並提供時間點復原功能。受管理的資料庫服務 (例如 Amazon Relational Database Service (RDS) 和 Amazon Aurora),可讓您設定用於確保資料完整性的特定控制項。例如,Aurora 可讓您在 OLTP 資料庫上設定不同的交易隔離層級。

為了增強保護,AWS 資料庫可透過多區域部署支援災難復原,將資料複寫至位於不同地理位置的區域。與 Amazon CloudWatch 的整合有助於識別並解決潛在的資料完整性問題,避免對營運造成影響。

資料整合

AWS Glue 是一種無伺服器資料整合服務,可用於準備和組合 AWS 雲端中的資料。AWS Glue Data Quality 功能可將手動資料驗證工作所需時間,從數天降低至數小時。該功能會自動建議品質規則、計算統計資料,並在偵測到不正確或不完整的資料時加以監控,並向您發出警示。該功能可與資料品質定義語言 (DQDL) 搭配使用,這是您用於定義資料完整性規則的網域特定語言。

在從 OLTP 系統收集資料以供分析使用時,您可以使用 AWS Glue 管道將資料從資料庫推送至分析服務。

您可以進一步將指標發佈至 Amazon CloudWatch,以進行監控和傳送警示。

實作資料備份完整性

大型企業專案可能會有不同的團隊從不同位置進行資料備份,並存取 Amazon S3 儲存體。在此類分散式資料備份作業中進行資料治理十分困難。 請注意,AWS 資料庫隨附內建備份功能。

AWS Backup 是一項全受管服務,可在 Amazon Simple Storage Service (S3)、Amazon Elastic Compute Cloud (EC2)、Amazon FSx 等 AWS 服務和 VMware 中的混合工作負載之間集中和自動化資料保護。您可以集中部署資料保護政策,以治理、管理和設定不同 AWS 資源和帳戶的備份活動。

AWS Backup 旨在從傳輸和儲存到處理階段的整個資料生命週期中維護資料完整性。該服務對所有儲存的資料 (無論其類型為何) 採用嚴格的安全措施,確保提供可防止未經授權資料存取的高規格防護。您可以完全掌控資料分類、儲存位置和安全政策,能夠根據需要管理、封存和保護資料。

AWS Backup 與其他 AWS 服務合作,使用多種機制保持資料完整性。其中包括:

  • 用於防止損毀的連續檢查總和驗證。
  • 用於驗證傳輸中和靜態資料完整性的內部檢查總和。
  • 在磁碟故障時的自動備援復原。

資料會在多個實體位置上以備援方式儲存,而網路層級檢查也有助於偵測資料傳輸期間的損毀狀況。

AWS 如何協助維護資料完整性?

確保資料完整性還可以提高對分析的信任、支援合規性,並使資料在整個生命週期中保有價值。但是,對於內部部署而言,確保資料完整性既具有挑戰性又十分昂貴,而且可能會導致由手動、分散式和重複冗餘工作造成的數小時時間損失。

雲端技術可集中處理流程,並為您完成大部分繁重作業。系統預設會內建多個實體和邏輯完整性檢查。自動化機制會自主產生實現資料完整性所需的軟體規則。資料工程師僅需要配置設定或檢閱由自動化機制完成的作業即可。確保資料完整性使 OLTP 系統得以在處理大量即時交易的同時,維持絲毫不差的準確性,這對於可靠的業務營運和實務至關重要。

立即建立免費雲端帳戶以開始使用。