數據治理最佳實踐
本文描述了對數據治理的需求,並分享了可用於在整個組織中實現這些技術的最佳實踐和策略。
為什麼數據治理很重要?
數據治理是確保數據帶來價值並支持業務策略的監督。數據治理封裝了為安全管理組織內的數據資產而實現的策略和實踐。隨著數據的數量和複雜性不斷增長,越來越多的組織開始關注數據治理,以確保核心業務成果:
一致性和高質量的數據是分析和機器學習的基礎。
縮短了洞察的時間。
數據民主化,也就是讓組織中的每個人都能做出數據驅動的決策。
支持HIPAA、FedRAMP、GDPR或CCPA等行業法規的風險和合規性。
成本優化,例如防止用戶啟動大型集群,並為使用昂貴的GPU實例創建護欄。
好的數據治理解決方案是什麼樣的?
數據驅動型公司通常在湖屋上構建數據架構進行分析。數據湖屋是一種體係結構,可以直接對存儲在數據湖中的大量數據進行高效、安全的數據工程、機器學習、數據倉庫和商業智能。數據湖屋的數據治理提供以下關鍵功能:
統一目錄:除了每個數據對象的元數據外,統一的目錄還存儲了所有數據、ML模型和分析工件。統一的目錄還混合了來自其他目錄的數據,比如現有的Hive metastore。
統一數據訪問控製:跨所有數據資產和所有雲的單一統一權限模型。這包括針對個人身份信息(PII)的基於屬性的訪問控製(ABAC)。
數據審核:通過警報和監控功能對數據訪問進行集中審計,以促進問責製。
數據質量管理:強大的數據質量管理,內置質量控製、測試、監控和執行,以確保下遊BI、分析和機器學習工作負載可獲得準確和有用的數據。
數據沿襲:數據沿襲以獲得端到端可見性,了解數據如何在lakehouse中從源流向消費。
數據發現:輕鬆的數據發現使數據科學家、數據分析師和數據工程師能夠快速發現和引用相關數據,並加快實現價值的時間。
數據共享:數據可以跨雲和平台共享。Beplay体育安卓版本
數據治理和數據庫
Databricks提供了許多特性來幫助您滿足數據治理需求。
管理對數據和對象的訪問:
管理集群配置:
集群政策允許管理員控製對計算資源的訪問。
審計數據訪問:
審計日誌提供跨帳戶和工作區的操作和操作的可見性。
下麵幾節將說明如何使用這些Databricks特性來實現治理解決方案。
管理對數據和對象的訪問
要管理對數據和對象的訪問,可以啟用訪問控製並實現對各個表和對象的細粒度控製。
你可以啟用表訪問控製在工作空間中以編程方式授予、拒絕和撤銷Spark SQL API對數據的訪問。您可以控製對數據庫、表、視圖和函數等安全對象的訪問。考慮這樣一個場景,您的公司有一個數據庫來存儲財務數據。您可能希望您的分析師使用這些數據創建財務報告。但是,在數據庫的另一個表中可能存在分析人員不應該訪問的敏感信息。可以為用戶或組提供從一個表讀取數據所需的特權,但拒絕訪問第二個表的所有特權。
在下麵的示例中,Alice是擁有shared_data
而且private_data
Finance數據庫中的表。然後,Alice為分析人員Oscar提供讀取所需的特權shared_data
但拒絕給予所有的特權private_data
.
愛麗絲撥款選擇
給奧斯卡讀書的特權shared_data
:
愛麗絲拒絕給奧斯卡任何訪問的特權private_data
:
您可以通過定義對表的子集的細粒度訪問控製,或者通過在表的派生視圖上設置特權來進一步實現這一點。
管理集群配置
您可以使用集群策略自動發放集群、管理集群的權限和控製成本。
集群政策允許Databricks管理員定義集群上允許的集群屬性,例如實例類型、節點數量、自定義標記等等。當管理員創建策略並將其分配給用戶或組時,這些用戶隻能基於他們有權訪問的策略創建集群。這使管理員可以更好地控製可以創建的集群類型。
在JSON策略定義中定義策略,然後使用集群策略界麵或集群策略API 2.0.,用戶才能創建集群create_cluster
對至少一個集群策略的權限或訪問。如上所述,擴展您對新的分析項目團隊的需求,管理員現在可以創建一個集群策略,並將其分配給項目團隊中的一個或多個用戶,這些用戶現在可以為團隊創建集群,限製於集群策略中指定的規則。下麵的圖像提供了一個用戶的示例,該用戶可以訪問項目團隊集群政策
根據策略定義創建集群。
自動發放集群並授予權限
通過為集群和權限添加端點,DatabricksRest API 2.0可以輕鬆地為任何規模的用戶和組提供和授予集群資源的權限。您可以使用集群API 2.0為您的特定用例創建和配置集群。
然後可以使用權限API 2.0對集群應用訪問控製。
下麵是一個可能適合新的分析項目團隊的配置示例。
具體要求如下:
支持這個團隊的交互式工作負載,他們主要是SQL和Python用戶。
在對象存儲中為數據源提供憑據,使團隊能夠訪問與角色相關的數據。
確保用戶獲得平等的集群資源共享。
提供更大、內存優化的實例類型。
向集群授予權限,以便隻有這個新的項目團隊可以訪問它。
標記此集群以確保您可以正確地對所產生的任何計算成本進行退款。
部署腳本
您可以使用集群和權限API中的API端點來部署此配置。
提供集群
端點,https:// < databricks-instance > / api / 2.0 /集群/創建
請注意
成本控製是通過使用可搶占的執行器選項來實現的。
{“自動定量”:{“min_workers”:2,“max_workers”:50},“cluster_name”:“項目小組互動集群”,“spark_version”:“7.5.x-scala2.12”,“spark_conf”:{“spark.databricks.cluster.profile”:“serverless”,“spark.databricks.repl.allowedLanguages”:“sql, python, r”},“gcp_attributes”:{“use_preemptible_executors”:真正的},“node_type_id”:“n1-highmem-4”,“ssh_public_keys”:[],“custom_tags”:{“ResourceClass”:“Serverless”,“團隊”:“新項目組”},“spark_env_vars”:{“PYSPARK_PYTHON”:“磚/ python3 / bin / python3”},“autotermination_minutes”:60,“enable_elastic_disk”:“假”,“init_scripts”:[]}
審計訪問
在Databricks中配置訪問控製並控製存儲中的數據訪問是邁向高效數據治理解決方案的第一步。然而,完整的解決方案需要審計對數據的訪問,並提供警報和監視功能。Databricks提供了一組全麵的審計事件來記錄Databricks用戶提供的活動,允許企業監視平台上詳細的使用模式。Beplay体育安卓版本
確保你配置好了審計日誌.這涉及到配置正確的訪問策略,以便Databricks可以將審計日誌發送到您提供的穀歌雲存儲桶。審計日誌通常在一小時內記錄。