文中內容僅限技術學習與代碼實踐參考,市場存在不確定性,技術分析需謹慎驗證,不構成任何投資建議。
Apache Atlas 框架是一套可擴展的核心基礎治理服務,使企業能夠有效、高效地滿足 Hadoop 中的合規性要求,并支持與整個企業數據生態系統集成。這將通過使用規范和取證模型,以及技術和運營審計以及由業務分類元數據豐富的沿襲,在 Hadoop 中提供真正的可視性。它還使任何元數據使用者能夠互操作,而無需彼此獨立的接口——元數據存儲是通用的。通過利用 Apache Ranger 來維護元數據的準確性,以防止在運行時對數據進行未經授權的訪問。安全性基于角色 (RBAC) 和屬性 (ABAC)。
分類傳播
Classification Propagation
- 分類傳播使得與某個實體關聯的分類可以自動關聯到該實體相關的其他實體。這在處理數據集從其他數據集派生數據的場景時非常有用——例如,一個表從文件加載數據、一個報表從表或視圖生成等。
- 例如,當一個表被分類為 PII 時,從此表派生數據的表或視圖(通過 CTAS 或 “create view” 操作)將被自動分類為 PII。
使用場景
考慮以下數據血緣場景,數據從 ‘hdfs_path’ 實體加載到一個表中,該表進一步通過視圖對外提供。我們將通過多個場景來理解分類傳播特性。
向實體添加分類
當向 ‘hdfs_path’ 實體添加分類 ‘PII’ 時,該分類會傳播到血緣路徑中所有受影響的實體,包括 ‘employees’ 表、視圖 ‘us_employees’ 和 ‘uk_employees’ —— 如下圖所示。
更新與實體關聯的分類
對與實體關聯的分類的任何更新,也會在所有分類傳播到的實體中體現出來。
移除與實體關聯的分類
當從實體中刪除分類時,該分類也會從所有分類傳播到的實體中移除。
在實體之間添加血緣
當在實體之間添加血緣時,例如捕獲文件數據加載到表中的過程,與源實體關聯的分類也會傳播到所有受影響的實體。
例如,當從表創建視圖時,與該表關聯的分類會傳播到新創建的視圖。
刪除實體
情況 1:
當刪除實體時,與該實體關聯的分類將從所有分類傳播到的實體中移除。
例如,當刪除 employees 表時,與該表關聯的分類將從 ‘employees_view’ 視圖中移除。
情況 2:
當在血緣路徑的中間刪除實體時,傳播鏈路會中斷,先前傳播的分類將從被刪除實體的所有派生實體中移除。
例如,當刪除 ‘us_employees’ 表時,通過該表傳播的(PII)分類將從 ‘ca_employees’ 表中移除,因為唯一的傳播路徑被實體刪除中斷了。
情況 3:
當在血緣路徑的中間刪除實體,并且存在其他傳播路徑時,先前傳播的分類將被保留。
例如,當刪除 ‘us_employees’ 表時,通過該表傳播的(PII)分類將保留在 ‘ca_employees’ 表中,因為存在兩條傳播路徑,其中只有一條被實體刪除中斷。
控制傳播
Apache Atlas 提供了一些選項來控制分類是否/在哪里傳播。
本節將詳細介紹可用選項。
分類中的傳播標志
每次將分類關聯到實體時,都有一個布爾標志控制該分類是否傳播。
當分類關聯到實體時,此標志默認設為 ‘true’,即該分類將傳播到所有受影響的實體。在初始關聯或后續更新時,可根據需要更新此標志。
血緣邊中的傳播標志
Apache Atlas 支持在血緣邊上設置標志,以啟用/禁用通過該邊傳播分類。默認情況下,血緣邊啟用傳播。
當標志關閉時,沒有分類會通過該邊傳播;并且將重新評估當前通過該邊傳播的分類,以便可以從受影響的實體中移除它們。
當標志打開時,將重新評估源實體的分類傳播,以便可以將它們傳播到所有受影響的實體。
在血緣邊中阻止特定分類傳播
Apache Atlas 支持在血緣邊中阻止特定分類的傳播。
例如,這在以下場景很有用:在創建視圖時,被分類為 PII 的列被屏蔽;在這種情況下,如果視圖中的對應列可能不具有 PII,因此應阻止 PII 分類的傳播。
可以通過更新血緣邊,將 PII 分類添加到 ‘blocked propagated classifications’ 列表中來實現。
被阻止傳播的分類列表中的分類將不會在派生/下游實體中傳播。
通知與審計
當傳播的分類被添加/更新/刪除時,Apache Atlas 會向 ‘ATLAS_ENTITIES’ 主題發送通知,通知中包含受傳播影響的每個實體。
術語表
當分類與術語表術語關聯時,該分類會自動傳播到與該術語關聯的所有實體。
風險提示與免責聲明
本文內容基于公開信息研究整理,不構成任何形式的投資建議。歷史表現不應作為未來收益保證,市場存在不可預見的波動風險。投資者需結合自身財務狀況及風險承受能力獨立決策,并自行承擔交易結果。作者及發布方不對任何依據本文操作導致的損失承擔法律責任。市場有風險,投資須謹慎。