Microsoft Purview 災害復原和移轉最佳做法
注意
Microsoft Purview 資料目錄 會將其名稱變更為 Microsoft Purview Unified Catalog。 所有功能都會維持不變。 當新的 Microsoft Purview 數據控管體驗在您的區域中正式推出時,您會看到名稱變更。 檢查您區域中的名稱。
本文提供貴組織在生產部署中 Microsoft Purview 統一治理解決方案 時的備份和復原策略指引。 您也可以使用此一般指導方針來實作帳戶移轉。 本文的範圍是涵蓋 手動 BCDR 方法,您可以在其中使用 API 自動化。
Azure 數據中心中斷很罕見,但可能會持續幾分鐘到數小時。 數據中心中斷可能會導致數據控管所依賴的環境中斷。 遵循本文中詳述的步驟,您可以在 Microsoft Purview 帳戶的主要區域發生數據中心中斷時,繼續控管您的數據。
提示
如需 Microsoft Purview 可靠性的詳細資訊,請參閱 我們的可靠性檔。
Microsoft Purview 實例中 BCDR (BCDR) 的商務持續性和災害復原指的是可讓您的企業保護數據遺失,並在中斷時繼續運作的機制、原則和程式,特別是掃描、目錄和深入解析層。 此頁面說明如何設定 Microsoft Purview 的災害復原環境。
現在,Microsoft Purview 不支援自動化 BCDR。 在新增該支援之前,您必須負責處理備份和還原活動。 您可以手動建立次要Microsoft Purview 帳戶作為另一個區域中的暖待命實例。
下列步驟摘要說明如何手動完成災害復原:
建立主要Microsoft Purview 帳戶之後,請在個別區域中建立一或多個次要Microsoft Purview 帳戶。
重要
Microsoft Purview 目前支援每個租用戶的單一Microsoft Purview 實例。 若要建立備份和災害復原的第二個帳戶, 請連絡支持人員
在主要Microsoft Purview 帳戶上執行的所有活動也必須在次要Microsoft Purview 帳戶上執行。 這包括:
- 維護帳戶資訊
- 建立和維護自定義掃描規則集、分類和分類規則
- 註冊和掃描來源
- 建立和維護集合以及來源與集合的關聯
- 建立和維護掃描時使用的認證
- 策劃數據資產
- 建立和維護詞彙
本文稍後會提供建立和維護災害復原帳戶的特定步驟。 在您追蹤之前,請先閱讀限制和考慮。
當您建立手動 BCDR 方案時,請記住下列幾點:
您必須支付主要和次要Microsoft Purview 實例的費用。
如果適用,則無法將主要和次要 Microsoft Purview 帳戶設定為相同的 Azure Data Factory、Azure Data Share 和 Synapse Analytics 帳戶。 因此,在次要 Microsoft Purview 帳戶中看不到來自 Azure Data Factory 和 Azure Data Share 的譜系。 支援自動化BCDR時,將會解決此限制。
整合運行時間專屬於 Microsoft Purview 帳戶。 因此,掃描必須以平行方式在主要和次要Microsoft Purview 帳戶中執行,必須維護多個自我裝載整合運行時間。 支援自動化BCDR時,也會解決這項限制。
從相同來源上的主要和次要Microsoft Purview 帳戶平行執行掃描,可能會影響來源的效能。 這可能會導致掃描持續時間因 Microsoft Purview 帳戶而有所不同。
不建議您備份「已掃描」資產的詳細數據。 您應該只備份策劃的數據,例如對應資產的分類和詞彙。 當您需要備份資產的詳細數據時,唯一的情況是透過自定義 擁有自定義
typeDef
資產時。備份的資產計數應該少於100,000個資產。 主要驅動程式是您必須使用搜尋查詢 API 來取得資產,其所傳回的資產限製為 100,000 個資產。 不過,如果您能夠分割搜尋查詢以取得每個 API 呼叫較少的資產數目,則可以備份超過 100,000 個資產。
如果您想要在兩個帳戶之間持續「同步處理」資產,本文將不會詳細說明其他步驟。 您必須使用 Microsoft Purview 的事件中樞來訂閱並建立另一個帳戶的實體。 不過,事件中樞只有 Atlas 資訊。 Microsoft Purview 已新增其他功能,例如無法透過事件中樞取得的 詞彙 和 聯繫 人。
如果您的組織已經有多個 Microsoft Purview 帳戶,您可以依照本指南指示建立新的 Microsoft Purview 帳戶:快速入門:在 Azure 入口網站 中建立 Microsoft Purview 帳戶 Azure 入口網站
如果您的組織只有一個租使用者/組織Microsoft Purview 帳戶,請建立備份和復原 連絡支持帳戶。
規劃這些您稍後無法變更的設定專案:
- 帳戶名稱
- 區域
- 訂閱
- 管理資源組名
下列步驟參照 Microsoft Purview API 檔 ,讓您可以以程式設計方式快速啟動備份帳戶:
工作 | 描述 |
---|---|
帳戶資訊 | 將系統管理員和/或服務主體的存取權授與根層級的帳戶,以維護帳戶資訊 |
Collections | 建立和維護集合以及來源與集合的關聯。 您可以呼叫清單集合 API,然後透過取得集合 API 取得每個集合的特定詳細資料 |
掃描規則集 | 建立和維護自定義掃描規則集。 您必須呼叫清單自定義掃描規則集 API,並藉由呼叫取得掃描規則集 API 來取得詳細數據 |
手動分類 | 呼叫取得分類 API 並取得每個分類的詳細數據,以取得所有手動分類的清單 |
資源集規則 | 建立和維護資源集規則。 您可以呼叫 取得資源集規則 API 來取得規則詳細數據 |
資料來源 | 呼叫 取得所有數據源 API ,以列出具有詳細數據的數據源。 您也必須呼叫 Get 觸發程式 API 來取得觸發程式。 如果您需要在新帳戶中大量重新建立來源,也會有建立 數據源 API 。 |
憑據 | 建立和維護掃描時使用的認證。 沒有可擷取認證的 API,因此必須在新的帳戶中重做。 |
自我裝載整合運行時間 (SHIR) | 取得 SHIR 清單,並從新帳戶取得更新的金鑰,然後更新 SHIR。 這必須在 SHIR 的主機內手動完成。 在您建立掃描之前,必須先執行這些專案。 |
ADF 連線 | 目前 ADF 可以一次連線到一個 Microsoft Purview。 您必須將 ADF 與失敗的 Microsoft Purview 帳戶中斷連線,稍後再重新連線到新帳戶。 |
重要
建立掃描之前,請確定您的 自我裝載整合運行時間 已設定且正在執行且可供使用。
這會以預設 typedef
填入所有資產。 再次執行掃描與導出現有資產並匯入至新帳戶有幾種原因:
從搜尋查詢傳回的資產限制為100,000個,以匯出資產。
導出具有關聯性的資產很麻煩。
當您重新執行掃描時,您會取得最新的所有關聯性和資產詳細數據。
Microsoft Purview 會定期推出新功能,讓您可以在執行新掃描時受益於其他功能。
執行掃描是取得 Purview 已支援之所有數據源資產Microsoft最有效的方式。
如果您的組織 已在 Microsoft Purview 中建立自定義類型,您必須手動移轉這些類型。
若要識別所有自定義 typedef
,您可以使用 取得所有類型定義 API。 這會傳回每個類型。 您需要識別自定義類型,例如 "serviceType": "<custom_typedef>"
若要匯出自定義資產,您可以搜尋這些自定義資產,並透過探索 API 傳遞適當的自定義typedef
注意
每個搜尋結果有100,000個傳回限制。 您可能必須中斷搜尋查詢,使其不會傳回超過 100,000 筆記錄。
有數種方式可以縮小搜尋查詢的範圍,以取得資產子集:
-
使用
Keyword
:傳遞父 FQN,例如Keyword: "<Parent String>/*"
-
使用
Filter
:在assetType
搜尋中包含特定的自定義typedef
,例如"assetType": "<custom_typedef>"
以下是自定義 keywords
的搜尋承載範例,因此只會傳回特定記憶體帳戶 (exampleaccount
) 中的資產:
{
"keywords": "adl://exampleaccount.azuredatalakestore.net/*",
"filter": {
"and": [
{
"not": {
"or": [
{
"attributeName": "size",
"operator": "eq",
"attributeValue": 0
},
{
"attributeName": "fileSize",
"operator": "eq",
"attributeValue": 0
}
]
}
},
{
"not": {
"classification": "MICROSOFT.SYSTEM.TEMP_FILE"
}
},
{
"not": {
"or": [
{
"entityType": "AtlasGlossaryTerm"
},
{
"entityType": "AtlasGlossary"
}
]
}
}
]
},
"limit": 10,
"offset": 0,
"facets": [
{
"facet": "assetType",
"count": 0,
"sort": {
"count": "desc"
}
},
{
"facet": "classification",
"count": 10,
"sort": {
"count": "desc"
}
},
{
"facet": "contactId",
"count": 10,
"sort": {
"count": "desc"
}
},
{
"facet": "label",
"count": 10,
"sort": {
"count": "desc"
}
},
{
"facet": "term",
"count": 10,
"sort": {
"count": "desc"
}
}
]
}
傳回的資產會有一些索引鍵/配對值,您可以擷取詳細數據:
{
"referredEntities": {},
"entity": {
"typeName": "column",
"attributes": {
"owner": null,
"qualifiedName": "adl://exampleaccount.azuredatalakestore.net/123/1/DP_TFS/CBT/Extensions/DTTP.targets#:xml/Project/Target/XmlPeek/@XmlInputPath",
"name": "~XmlInputPath",
"description": null,
"type": "string"
},
"guid": "5cf8a9e5-c9fd-abe0-2e8c-d40024263dcb",
"status": "ACTIVE",
"createdBy": "ExampleCreator",
"updatedBy": "ExampleUpdator",
"createTime": 1553072455110,
"updateTime": 1553072455110,
"version": 0,
"relationshipAttributes": {
"schema": [],
"inputToProcesses": [],
"composeSchema": {
"guid": "cc6652ae-dc6d-90c9-1899-252eabc0e929",
"typeName": "tabular_schema",
"displayText": "tabular_schema",
"relationshipGuid": "5a4510d4-57d0-467c-888f-4b61df42702b",
"relationshipStatus": "ACTIVE",
"relationshipAttributes": {
"typeName": "tabular_schema_columns"
}
},
"meanings": [],
"outputFromProcesses": [],
"tabular_schema": null
},
"classifications": [
{
"typeName": "MICROSOFT.PERSONAL.EMAIL",
"lastModifiedTS": "1",
"entityGuid": "f6095442-f289-44cf-ae56-47f6f6f6000c",
"entityStatus": "ACTIVE"
}
],
"contacts": {
"Expert": [
{
"id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df",
"info": "Example Expert Info"
}
],
"Owner": [
{
"id": "30435ff9-9b96-44af-a5a9-e05c8b1ae2df",
"info": "Example Owner Info"
}
]
}
}
}
注意
您也需要從 typedef
輸出移轉字詞範本。
當您重新建立自定義實體時,可能需要先準備承載,再傳送至 API:
注意
初始目標是移轉所有實體,而不需要任何關聯性或對應。 這可避免潛在的錯誤。
所有
timestamp
值都必須是 Null,例如updateTime
、updateTime
和lastModifiedTS
。guid
無法像之前一樣重新產生 ,因此您必須傳入負整數,例如 “-5000”,以避免發生錯誤。的內容
relationshipAttributes
不應該是承載的一部分,以避免發生錯誤,guids
因為 可能不相同或尚未建立。 您必須先轉換relationshipAttributes
成空陣列,才能提交承載。-
meanings
包含所有字彙對應,這些對應會在建立實體之後大量更新。
-
同樣地,
classifications
當您提交承載以建立實體時,也必須是空陣列,因為您稍後必須使用不同的 API 建立對大量實體的分類對應。
若要完成資產移轉,您必須重新對應關聯性。 有三項工作:
呼叫 關聯性 API ,依其取得實體之間的關聯性資訊
guid
準備關聯性承載,讓舊的 Microsoft Purview 帳戶中沒有舊的硬式參考
guids
。 您必須將這些guids
更新為新帳戶的guids
。最後, 在實體之間建立新的關聯性
注意
在移轉字詞之前,您必須先移轉字詞範本。 此步驟應該已涵蓋在自定義 typedef
移轉中。
移轉詞彙的最快方式是將 詞彙匯出至 .csv 檔案。 您可以使用 Microsoft Purview 治理入口網站來執行此動作。
若要將詞彙移轉自動化,您必須先透過清單詞彙 API 取得) 字glossaryGuid
guid
彙 (。
glossaryGuid
是最上層/根層級詞彙 guid
。
下列範例回應會提供 guid
用於後續 API 呼叫的 :
"guid": "c018ddaf-7c21-4b37-a838-dae5f110c3d8"
glossaryGuid
擁有 之後,您可以透過兩個步驟開始移轉條款:
注意
此步驟的必要條件是讓新帳戶中的所有分類都可從 [移轉設定專案 ] 步驟取得。
您必須呼叫 探索 API ,以取得資產的分類指派。 這適用於所有資產。 如果您已移轉自定義資產,則屬性中 classifications
已提供分類指派的相關信息。 取得分類的另一種方式是列出舊帳戶中的每個guid
分類。
若要將分類指派給資產,您必須透過 API 將 分類與多個實體大量產生關聯 。
如果您已從先前的步驟擷取資產資訊,則可從 探索 API 取得聯繫人詳細數據。
若要將聯繫人指派給資產,您需要一份清單 guids
並識別所有 objectid
聯繫人。 您可以使用 建立或更新實體 API,逐一查看所有資產,並將聯繫人重新指派給所有資產,藉此將此程式自動化。