管理 BigQuery 共用功能中的資料交換
身為 Analytics Hub 管理員,您可以執行下列工作:
- 建立、更新、查看、分享及刪除資料交換。
- 建立、更新、刪除及分享產品資訊。
- 管理 Analytics Hub 管理員、清單管理員、發布者、訂閱者和觀看者。
根據預設,資料交換是私密的,只有具備該交換存取權的使用者或群組才能查看或訂閱資料。不過,如果您希望讓Google Cloud 使用者 (allAuthenticatedUsers
)發現並訂閱您的商家資訊,可以要求將資料交換內容公開。
事前準備
如要開始使用 BigQuery 共用功能 (原為 Analytics Hub),您必須在 Google Cloud 專案中啟用 Analytics Hub API。
所需權限
如要啟用 Analytics Hub API,您必須具備下列 Identity and Access Management (IAM) 權限:
serviceUsage.services.get
serviceUsage.services.list
serviceUsage.services.enable
以下是具有啟用 Analytics Hub API 所需權限的預先定義 IAM 角色:
roles/serviceusage.serviceUsageAdmin
如要進一步瞭解 BigQuery 中的 IAM 角色,請參閱「預先定義的角色與權限」一文。
啟用 Analytics Hub API
如要啟用 Analytics Hub API,請按照下列步驟操作:
控制台
前往 Analytics Hub API 頁面,為您的 Google Cloud 專案啟用 Analytics Hub API。
gcloud
執行 gcloud services enable 指令:
gcloud services enable analyticshub.googleapis.com
所需權限
如要管理資料交換,您必須具備 Analytics Hub 管理員角色 (roles/analyticshub.admin
)。詳情請參閱「Analytics Hub 管理員角色」。如要瞭解如何將這個角色授予其他使用者,請參閱「建立 Analytics Hub 管理員」一文。
建立資料交換庫
如要建立資料交換,請按照下列步驟操作:
主控台
前往「分享 (Analytics Hub)」頁面。
按一下
「建立交換」。在「Create exchange」(建立交換) 對話方塊中,選取資料交換的「Project」(專案) 和「Region」(區域)。建立資料交換後,就無法更新專案和地區。
在「Display name」(顯示名稱) 中,輸入資料交換的名稱。
選用:在下列欄位中輸入值:
- 主要聯絡人:輸入資料交換的主要聯絡人網址或電子郵件地址。
- 說明:輸入資料交換說明。
如要記錄針對連結資料集執行工作和查詢的使用者所有主要 ID,請按一下「訂閱端電子郵件記錄」切換鈕 (預先發布版)。啟用這個選項後,資料交換庫下方的所有清單項目都會啟用訂閱者電子郵件記錄功能。
如要開啟公開可偵測性,請按一下「公開可偵測性」切換鈕。公開可供探索的交換平台後,該交換平台中的所有房源資訊都會顯示在目錄中,並可供搜尋。如果啟用公開可發現性,您必須設定交換權限。由於權限會繼承,因此所有房源預設會設定為與交換平台相同的開放搜尋類型。因此,公開交換平台無法提供私人房源,但私人交換平台可以提供公開房源 (例如,您可以在個別房源層級設定公開可發現性類型)。您建立資料交換的專案必須有相關聯的機構和帳單帳戶。
按一下「建立交換」。
選用步驟:在「Exchange Permissions」部分執行下列步驟:
在下列欄位中輸入電子郵件地址,即可授予 Analytics Hub 使用者角色:
- 管理員:這些使用者會指派為 Analytics Hub 管理員角色。
- 發布者:這些使用者會指派 Analytics Hub 發布者角色。如要瞭解發布商可執行的工作,請參閱「管理商家資訊」。
- 訂閱者:這些使用者會被指派為 Analytics Hub 訂閱者角色。如要進一步瞭解訂閱者可執行的工作,請參閱「查看及訂閱清單」。
- 檢視者:這些使用者會指派 Analytics Hub 檢視者角色。觀眾可以查看商家資訊。
- 如果啟用公開可探索性,請將 Analytics Hub 檢視者角色 (
roles/analyticshub.viewer
) 授予allUsers
或allAuthenticatedUsers
。
- 如果啟用公開可探索性,請將 Analytics Hub 檢視者角色 (
如要儲存權限,請按一下「設定權限」。
如果您尚未設定資料交換權限,請按一下「略過」。
API
請使用 projects.locations.dataExchanges.create
方法。
POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges?dataExchangeId=DATAEXCHANGE_ID
更改下列內容:
PROJECT_ID
:您要建立資料交換的專案 ID。LOCATION
:資料交換位置。如要進一步瞭解支援 BigQuery sharing (舊稱 Analytics Hub) 的地區,請參閱「支援的區域」。DATAEXCHANGE_ID
:資料交換的 ID。
在要求主體中提供資料交換詳細資料。如果要求成功,回應主體會包含資料交換的詳細資料。如果您已啟用訂閱者電子郵件記錄功能 (預覽),資料交換回應就會包含 log_linked_dataset_query_user_email: true
。
如要進一步瞭解您可以使用 API 在資料交換中執行的作業,請參閱 projects.locations.dataExchanges
方法。
更新資料交換
如要更新資料交換,請按照下列步驟操作:
主控台
前往「分享 (Analytics Hub)」頁面。
在資料交換清單中,按一下要更新的資料交換。
前往「詳細資料」分頁。
按一下「編輯廣告交易」
。在「Edit exchange」(編輯交換平台) 對話方塊中,更新下列欄位:
- 顯示名稱
- 主要聯絡人
- 說明
- 開放搜尋
- 如果啟用公開可發現性,請將 Analytics Hub 檢視者角色 (
roles/analyticshub.viewer
) 授予allUsers
或allAuthenticatedUsers
。 - 如果您停用公開可發現性,請從
allUsers
或allAuthenticatedUsers
中移除 Analytics Hub 檢視者角色 (roles/analyticshub.viewer
)。公開交換機制無法包含私人房源,但私人交換機制可以包含公開房源。
- 如果啟用公開可發現性,請將 Analytics Hub 檢視者角色 (
訂閱端電子郵件記錄 (預先發布)
按一下 [儲存]。
API
請使用 projects.locations.dataExchanges.patch
方法。
PATCH https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/location/LOCATION/dataExchanges/DATAEXCHANGE_ID?updateMask=UPDATEMASK
將 UPDATEMASK
替換為要更新的欄位清單。如要更新多個值,請使用以逗號分隔的清單。舉例來說,如要更新資料交換的顯示名稱和主要聯絡人,請輸入 displayName,primaryContact
。
在要求主體中,指定下列欄位的更新值:
- 顯示名稱
- 說明
- 說明文件
- 圖示
- 主要聯絡人
- 開放搜尋
- 訂閱端電子郵件記錄功能 (預先發布版)
如需這些欄位的詳細資訊,請參閱「資源:DataExchange」。
如要進一步瞭解您可以使用 API 在資料交換中執行的作業,請參閱 projects.locations.dataExchanges
方法。
查看資料交換
如要查看貴機構中您有權存取的所有資料交換,請按照下列步驟操作:
控制台
前往「分享 (Analytics Hub)」頁面。
查看 Google Cloud 機構內的資料交換清單。
API
請使用 organizations.locations.dataExchanges.list
方法。
GET https://analyticshub.googleapis.com/v1/organizations/ORGANIZATION_ID/location/LOCATION/dataExchanges
更改下列內容:
- ORGANIZATION_ID:機構 ID。詳情請參閱「取得機構 ID」。
- LOCATION:您要列出現有資料交換的位置。
分享資料交換
如果 Analytics Hub 發布者所屬的機構與包含資料交換的機構不同,發布者就無法在「分享」中查看資料交換。您必須與發布端分享資料交換的連結。
前往「分享 (Analytics Hub)」頁面。
在資料交換清單中,按一下
「更多選項」。按一下
「複製分享連結」。
授予使用者資料交換存取權
如要讓使用者存取資料交換,您必須設定該資料交換的 IAM 政策。如要瞭解預先定義的 IAM 使用者角色,請參閱「Analytics Hub 使用者角色」。請按照以下步驟操作:
主控台
在 Google Cloud 控制台中,前往「Sharing (Analytics Hub)」(分享 (數據分析中心) 頁面。
按一下要設定權限的資料交換名稱。
前往「詳細資料」分頁。
按一下
「設定權限」。如要新增主體,請按一下
「新增主體」。在「New principals」(新增主體) 欄位中,新增您要授予存取權的電子郵件 ID。您也可以使用
allUsers
將資源設為公開,讓網際網路上的所有使用者都能存取,或是使用allAuthenticatedUsers
將資源設為僅供已登入 Google 的使用者存取。在「請選取角色」選單中,選取「Analytics Hub」,然後選取下列其中一個 Identity and Access Management (IAM) 角色:
- Analytics Hub 管理員
- Analytics Hub 清單管理員
- Analytics Hub 發布者
- Analytics Hub 訂閱者
- Analytics Hub 訂閱項目擁有者
- Analytics Hub 檢視器
按一下 [儲存]。
API
使用
projects.locations.dataExchanges.getIamPolicy
方法,透過列出getIamPolicy
方法讀取現有政策:POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:getIamPolicy
更改下列內容:
PROJECT_ID
:專案 ID,例如my-project-1
。LOCATION
:資料交換的位置。請使用小寫英文字母。DATAEXCHANGE_ID
:資料交換 ID。
BigQuery sharing (原 Analytics Hub) 會傳回目前的政策。
如要新增或移除成員及其相關的身分與存取權管理 (IAM) 角色,請使用文字編輯器編輯政策。請使用下列格式新增成員:
user:test-user@gmail.com
group:admins@example.com
serviceAccount:test123@example.domain.com
domain:example.domain.com
舉例來說,如要將
roles/analyticshub.subscriber
角色授予group:subscribers@example.com
,請將下列繫結加入政策:{ "members": [ "group:subscribers@example.com" ], "role":"roles/analyticshub.subscriber" }
使用
projects.locations.dataExchanges.setIamPolicy
方法編寫更新後的政策。在要求主體中提供先前步驟中更新的 IAM 政策。POST https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID:setIamPolicy
在要求內容中提供商家詳細資料。如果要求成功,回應主體會包含清單的詳細資料。
建立 Analytics Hub 管理員
如要管理資料交換,您必須建立 Analytics Hub 管理員。如要建立資料交換管理員,您必須在專案或資料交換層級授予使用者 Analytics Hub 管理員角色 (roles/analyticshub.admin
)。
如果您希望管理員管理專案中的所有資料交換,請為該專案授予 Analytics Hub 管理員角色。如果您希望管理員管理特定資料交換,請授予該資料交換的 Analytics Hub 管理員角色。
將資料交換公開
根據預設,資料交換是私密的,只有具備該資料交換存取權的使用者或群組才能查看或訂閱其資訊。不過,您可以選擇將資料交換公開。Google Cloud 使用者 (allAuthenticatedUsers
) 可以探索及訂閱公開資料交換中的商店資訊。
如要將資料交換公開,請按照下列步驟操作:
如要讓
allAuthenticatedUsers
查看商家資訊,您必須在資料交換層級授予allAuthenticatedUsers
Analytics Hub 檢視者角色。如要讓
allAuthenticatedUsers
訂閱商家資訊,您必須在資料交換層級授予allAuthenticatedUsers
Analytics Hub 訂閱者角色。
刪除資料交換
刪除資料交換後,其中的所有產品資訊也會一併刪除。不過,系統不會刪除共用資料集和連結資料集。此外,刪除專案時,其中的資料交換也不會遭到刪除。您必須先刪除這些資料交換,才能刪除專案。刪除資料交換後,無法復原。
如要刪除資料交換,請按照下列步驟操作:
主控台
前往「分享 (Analytics Hub)」頁面。
在資料交換清單中,按一下要刪除的資料交換。
前往「詳細資料」分頁。
按一下
「Delete exchange」(刪除交換機制)。在「Delete exchange?」對話方塊中,輸入「delete」確認刪除。
點選「刪除」。
API
請使用 projects.locations.dataExchanges.delete
方法。
DELETE https://analyticshub.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataExchanges/DATAEXCHANGE_ID
如要進一步瞭解您可以使用 API 在資料交換中執行的作業,請參閱 projects.locations.dataExchanges
方法。
後續步驟
- 瞭解如何管理產品資訊。
- 瞭解如何授予 Analytics Hub 使用者角色。
- 瞭解如何查看及訂閱清單。
- 瞭解共用稽核記錄。