本頁面說明如何建立及管理 Storage 深入分析資料集和資料集設定。進一步瞭解儲存空間分析資料集。
事前準備
開始建立及管理資料集和資料集設定前,請按照後續子區段中的操作說明進行。
取得必要角色
如要取得建立及管理資料集所需的權限,請要求管理員為您授予來源專案的下列 IAM 角色:
-
如要建立、管理及查看資料集設定,請按照下列步驟操作:
儲存空間分析資料管理員 (
roles/storageinsights.admin
) -
如要查看、連結及取消連結資料集,請按照下列步驟操作:
-
儲存空間分析分析者 (
roles/storageinsights.analyst
) -
BigQuery 管理員 (
roles/bigquery.admin
)
-
儲存空間分析分析者 (
-
如要刪除已連結的資料集,請按照下列步驟操作:
BigQuery 管理員 (
roles/bigquery.admin
) -
如要在 BigQuery 中查看及查詢資料集,請按照下列步驟操作:
-
Storage Insights Viewer (
roles/storageinsights.viewer
) -
BigQuery 工作使用者 (
roles/bigquery.jobUser
) -
BigQuery 資料檢視器 (
roles/bigquery.dataViewer
)
-
Storage Insights Viewer (
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這些預先定義的角色包含建立及管理資料集所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
您必須具備下列權限,才能建立及管理資料集:
-
建立資料集設定:
storageinsights.datasetConfigs.create
-
查看資料集設定:
-
storageinsights.datasetConfigs.get
-
storageinsights.datasetConfigs.list
-
-
管理資料集設定:
-
storageinsights.datasetConfigs.update
-
storageinsights.datasetConfigs.delete
-
-
連結至 BigQuery 資料集:
storageinsights.datasetConfigs.linkDataset
-
取消連結至 BigQuery 資料集:
storageinsights.datasetConfigs.unlinkDataset
-
查詢 BigQuery 連結資料集:
bigquery.jobs.create or bigquery.jobs.*
啟用 Storage Insights API
控制台
指令列
如要在目前的專案中啟用 Storage Insights API,請執行下列指令:
gcloud services enable storageinsights.googleapis.com
如要進一步瞭解如何為 Google Cloud 專案啟用服務,請參閱「啟用及停用服務」。
設定 Storage Intelligence
請確認您要使用資料集分析的專案、資料夾或機構已啟用 Storage Intelligence。
建立資料集設定
如要建立資料集設定並產生資料集,請按照下列步驟操作。如要進一步瞭解建立資料集設定時可指定的欄位,請參閱「資料集設定屬性」。
控制台
- 在 Google Cloud 控制台中,前往「Cloud Storage」的「Storage Insights」頁面。
按一下「設定資料集」。
在「資料集名稱」部分,輸入資料集的名稱。視需要輸入資料集的說明。
在「Define dataset scope」部分,執行下列操作:
選取下列選項之一:
如要取得目前機構中所有專案的中繼資料,請選取「加入機構」。
如要取得所選資料夾中所有專案的中繼資料,請選取「加入資料夾(子組織/部門)」。如要瞭解如何取得資料夾 ID,請參閱「查看或列出資料夾和專案」一節。如要新增資料夾,請按照下列步驟操作:
- 在「資料夾 1」欄位中輸入資料夾 ID。
- 如要新增多個資料夾 ID,請按一下「+ 新增其他資料夾」。
如要取得所選專案的儲存空間中繼資料,請選取「提供專案編號來加入專案」。如要瞭解如何找出專案編號,請參閱「找出專案名稱、編號和 ID」一文。如要新增專案,請按照下列步驟操作:
- 在「Project 1」欄位中輸入專案編號。
- 如要新增多個專案編號,請按一下「+ 新增其他專案」。
如要大量新增專案或資料夾,請選取「透過 CSV 檔案上傳專案 /資料夾清單」。CSV 檔案必須包含您要納入資料集中的專案編號或資料夾 ID。
指定是否要在所選資源中自動加入未來的值區。
如要根據區域和值區前置字串,指定值區的篩選器,請展開「篩選器 (選用)」部分。篩選器會以加法方式套用至分桶。
您可以納入或排除特定區域中的值區。舉例來說,您可以排除
me-central1
和me-central2
區域中的值區。您也可以根據前置字串納入或排除值區。舉例來說,如果您想排除開頭為my-bucket
的值區,請輸入my-bucket*
前置字串。
按一下「繼續」。
在「Select retention period」(選取保留期限) 部分,選取資料集中資料的保留期限。
在「Select location to store configured dataset」(選取儲存設定資料集的位置) 部分,選取資料集和資料集設定的儲存位置。
在「選取服務帳戶類型」專區中,選取資料集的服務代理人類型。您建立資料集設定時,系統會代您建立這個服務代理。您可以選取下列任一服務代理人:
- 特定設定的服務帳戶:這個服務代理只能存取並寫入特定資料集設定所產生的資料集。
- 專案層級服務帳戶:這個服務代理程式可存取及寫入由專案中所有資料集設定產生的資料集。
按一下 [設定]。
指令列
如要建立資料集設定,請搭配必要的標記執行
gcloud storage insights dataset-configs create
指令:gcloud storage insights dataset-configs create DATASET_CONFG_ID \ --source-projects=SOURCE_PROJECT_NUMBERS \ --location=LOCATION \ --retention-period-days=RETENTION_PERIOD_DAYS \ --organization=ORGANIZATION_ID
取代:
DATASET_CONFIG_ID
改成您要為資料集設定的名稱。名稱會用來做為資料集設定的 ID,且可變更。名稱最多可包含 128 個字元,可以使用英文字母、數字和底線。SOURCE_PROJECT_NUMBERS
與編號,您要將這些專案納入資料集。例如464036093014
。您可以指定一或多個專案。如要瞭解如何找出專案編號,請參閱「找出專案名稱、編號和 ID」一節。除了使用
--source-projects
標記,您也可以使用--source-projects-file=FILE_PATH
標記,透過上傳內含專案編號的檔案,一次指定多個專案編號。檔案必須為 CSV 格式,且必須上傳至 Cloud Storage。LOCATION
,其中包含資料集設定和資料集的儲存位置。RETENTION_PERIOD_DAYS
與資料集中資料的保留期限。ORGANIZATION_ID
與來源專案所屬機構的資源 ID。系統會將指定位置以外的來源專案從資料集設定中排除。如要瞭解如何查看機構 ID,請參閱「取得機構資源 ID」一文。
您也可以使用其他標記,精細設定資料集:
使用
--include-buckets=BUCKET_NAMES_OR_REGEX
依名稱或規則運算式加入特定值區。如果使用這個標記,就無法使用--exclude-buckets
。使用
--exclude-buckets=BUCKET_NAMES_OR_REGEX
即可依名稱或規則運算式排除特定值區。如果使用這個標記,就無法使用--include-buckets
。使用
--project=DESTINATION_PROJECT_ID
指定要用於儲存資料集設定和產生的資料集的專案。如果未使用這個標記,目的地專案將會是您目前的專案。如要進一步瞭解專案 ID,請參閱「建立及管理專案」。使用
--auto-add-new-buckets
自動納入日後新增至來源專案的任何值區。使用
--skip-verification
略過驗證程序中的檢查和失敗,包括檢查必要的 IAM 權限。如果使用此選項,資料集可能會排除部分或所有分層。使用
--identity=IDENTITY_TYPE
指定與資料集設定一併建立的服務代理類型。值為IDENTITY_TYPE_PER_CONFIG
或IDENTITY_TYPE_PER_PROJECT
。如未指定,則預設為IDENTITY_TYPE_PER_CONFIG
。使用
--description=DESCRIPTION
為資料集設定提供說明。
REST API
JSON API
建立包含下列資訊的 JSON 檔案:
{ "organization_number": "ORGANIZATION_ID", "source_projects": { "project_numbers": ["PROJECT_NUMBERS", ...] }, "retention_period_days": "RETENTION_PERIOD_DAYS", "identity": { "type": "IDENTITY_TYPE" } }
取代:
ORGANIZATION_ID
,其中包含來源專案所屬 機構的資源 ID。如要瞭解如何找出機構 ID,請參閱「取得機構資源 ID」一文。PROJECT_NUMBERS
與要納入資料集中的專案編號。您可以指定一或多個專案。專案必須以字串清單的形式指定。RETENTION_PERIOD_DAYS
與資料集快照中要擷取的資料天數。例如:90
。IDENTITY_TYPE
與資料集設定一併建立的服務帳戶類型。值為IDENTITY_TYPE_PER_CONFIG
或IDENTITY_TYPE_PER_PROJECT
。
如要建立資料集設定,請使用
cURL
透過Create
DatasetConfig 要求呼叫 JSON API:curl -X POST --data-binary @JSON_FILE_NAME \ "https://storageinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasetConfigs?datasetConfigId=DATASET_CONFIG_ID" \ --header "Authorization: Bearer ACCESS_TOKEN" \ --header "Accept: application/json" \ --header "Content-Type: application/json"
取代:
JSON_FILE_NAME
與您在先前步驟中建立的 JSON 檔案路徑。或者,您也可以在要求主體中傳遞DatasetConfig
的例項。PROJECT_ID
與資料集設定和資料集所屬專案 ID。LOCATION
與資料集和資料集設定的位置。例如:us-central1
。DATASET_CONFIG_ID
改成您要為資料集設定命名的名稱。名稱會做為資料集設定的 ID,且無法變更。名稱的長度上限為 128 個半形字元,可使用英文字母、數字和底線。名稱開頭必須為英文字母。ACCESS_TOKEN
與您在安裝及初始化 Google Cloud CLI 時產生的存取權杖。
如要排解 error_attributes_view
中記錄的快照處理錯誤,請參閱「Storage 深入分析資料集錯誤」。
將必要權限授予服務代理
建立資料集設定時,Google Cloud 會代您建立特定設定或專案範圍的服務代理。服務代理人會採用 service-PROJECT_NUMBER@gcp-sa-storageinsights.iam.gserviceaccount.com
命名格式,並在您選取「包含 Google 提供的角色授權」 核取方塊時,顯示在 IAM 頁面的 Google Cloud 主控台中。您也可以使用 JSON API 查看 DatasetConfig
資源,找出服務專員的名稱。
如要讓 Storage 分析產生及寫入資料集,請要求管理員在包含來源專案的組織中,授予服務代理人 Storage 分析收集器服務角色 (roles/storage.insightsCollectorService
)。您必須將這個角色授予每個設定範圍服務代理,這些代理會為您要取得資料的每個資料集設定而建立。如果您使用的是專案層級服務代理,則必須只授予這個角色一次,服務代理才能讀取及寫入專案中所有資料集設定的資料集。
如要瞭解如何授予專案角色,請參閱「管理存取權」。
連結資料集
如要將資料集連結至 BigQuery,請完成下列步驟:
控制台
- 在 Google Cloud 控制台中,前往「Cloud Storage」的「Storage Insights」頁面。
按一下產生要連結資料集的資料集設定名稱。
在「BigQuery 連結的資料集」部分,按一下「連結資料集」連結資料集。
指令列
如要將資料集連結至 BigQuery,請執行
gcloud storage insights dataset-configs create-link
指令:gcloud storage insights dataset-configs create-link DATASET_CONFIG_ID --location=LOCATION
取代:
DATASET_CONFIG_ID
與資料集設定的名稱,該設定會產生您要連結的資料集。LOCATION
與資料集的位置。例如:us-central1
。
除了指定
DATASET_CONFIG_NAME
和LOCATION
,您也可以指定完整的資料集設定路徑。例如:gcloud storage insights dataset-configs create-link projects/DESTINATION_PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID_
取代:
REST API
JSON API
建立包含下列資訊的 JSON 檔案:
{ "name": "DATASET_NAME" }
取代:
DATASET_NAME
替換為您要連結的資料集名稱。例如:my_project.my_dataset276daa7e_2991_4f4f_b9d4_e354b48426a2
。
使用
cURL
透過linkDataset
DatasetConfig 要求呼叫 JSON API:curl --request POST --data-binary @JSON_FILE_NAME \ "https://storageinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasetConfigsDATASET_CONFIG_ID:linkDataset?" \ --header "Authorization: Bearer ACCESS_TOKEN" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
取代:
查看及查詢已連結的資料集
如要查看及查詢已連結的資料集,請按照下列步驟操作:
- 在 Google Cloud 控制台中,前往「Cloud Storage」的「Storage Insights」頁面。
系統會顯示在專案中建立的資料集設定清單。
按一下要查看的資料集設定中 BigQuery 連結的資料集。
Google Cloud 主控台會顯示 BigQuery 連結資料集。如要瞭解中繼資料的資料集結構定義,請參閱「中繼資料的資料集結構定義」。
您可以查詢已連結資料集中的資料表和檢視畫面,方法與查詢任何其他 BigQuery 資料表相同。
取消連結資料集
如要停止將資料集設定發布至 BigQuery 資料集,請取消資料集連結。如要取消連結資料集,請完成下列步驟:
控制台
- 在 Google Cloud 控制台,前往 Cloud Storage 的「Storage Insights」頁面。
按一下產生要取消連結的資料集的資料集設定名稱。
在「BigQuery 連結的資料集」部分,按一下「取消連結資料集」,即可取消連結資料集。
指令列
如要取消連結資料集,請執行
gcloud storage insights dataset-configs delete-link
指令:gcloud storage insights dataset-configs delete-link DATASET_CONFIG_ID --location=LOCATION
取代:
DATASET_CONFIG_ID
與資料集設定的名稱,該設定會產生您要取消連結的資料集。LOCATION
與資料集和資料集設定的位置。例如:us-central1
。
除了指定
DATASET_CONFIG_NAME
和LOCATION
,您也可以指定完整的資料集設定路徑。例如:gcloud storage insights dataset-configs delete-link projects/DESTINATION_PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID
取代:
REST API
JSON API
建立包含下列資訊的 JSON 檔案:
{ "name": "DATASET_NAME" }
取代:
DATASET_NAME
與您要取消連結的資料集名稱。例如:my_project.my_dataset276daa7e_2991_4f4f_b9d4_e354b48426a2
。
使用
cURL
搭配unlinkDataset
DatasetConfig 要求呼叫 JSON API:curl --request POST --data-binary @JSON_FILE_NAME \ "https://storageinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasetConfigsDATASET_CONFIG_ID:unlinkDataset?" \ --header "Authorization: Bearer ACCESS_TOKEN" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
取代:
查看資料集設定
如要查看資料集設定,請完成下列步驟:
控制台
- 在 Google Cloud 控制台中,前往「Cloud Storage」的「Storage Insights」頁面。
按一下要查看的資料集設定名稱。
系統會顯示資料集設定詳細資料。
指令列
如要說明資料集設定,請執行
gcloud storage insights dataset-configs describe
指令:gcloud storage insights dataset-configs describe DATASET_CONFG_ID \ --location=LOCATION
取代:
DATASET_CONFIG_ID
與資料集設定名稱。LOCATION
,其中包含資料集位置和資料集設定。
除了指定
DATASET_CONFIG_NAME
和LOCATION
,您也可以指定完整的資料集設定路徑。例如:gcloud storage insights dataset-configs describe projects/DESTINATION_PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID
取代:
REST API
JSON API
使用
cURL
搭配Get
DatasetConfig 要求呼叫 JSON API:curl -X GET \ "https://storageinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID" \ --header "Authorization: Bearer ACCESS_TOKEN" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
取代:
列出資料集設定
如要列出專案中的資料集設定,請完成下列步驟:
控制台
- 在 Google Cloud 控制台,前往 Cloud Storage 的「Storage Insights」頁面。
系統會顯示資料集設定清單。
指令列
如要列出專案中的資料集設定,請執行
gcloud storage insights dataset-configs list
指令:gcloud storage insights dataset-configs list --location=LOCATION
取代:
LOCATION
與資料集和資料集設定的位置。例如:us-central1
。
您可以使用下列選用標記,指定商家資訊呼叫的行為:
使用
--page-size
指定每頁傳回的結果數上限。使用
--filter=FILTER
篩選結果。如要進一步瞭解如何使用--filter
標記,請執行gcloud topic filters
並參閱說明文件。使用
--sort-by=SORT_BY_VALUE
指定以逗號分隔的資源欄位索引鍵名稱清單,以便進行排序。例如:--sort-by=DATASET_CONFIG_NAME
。
REST API
JSON API
使用
cURL
搭配Get
DatasetConfig 要求呼叫 JSON API:curl -X GET \ "https://storageinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasetConfigs" \ --header "Authorization: Bearer ACCESS_TOKEN" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
取代:
更新資料集設定
如要更新資料集設定,請完成下列步驟:
控制台
- 在 Google Cloud 控制台中,前往「Cloud Storage」的「Storage Insights」頁面。
按一下要更新的資料集設定名稱。
在隨即顯示的「資料集設定」分頁中,按一下「編輯」圖示
來更新欄位。
指令列
如要更新資料集設定,請執行
gcloud storage insights dataset-configs update
指令:gcloud storage insights dataset-configs update DATASET_CONFG_ID \ --location=LOCATION
取代:
DATASET_CONFIG_ID
與資料集設定名稱。LOCATION
與資料集位置和資料集設定。
使用下列標記更新資料集設定的屬性:
使用
--skip-verification
略過驗證程序中的檢查和失敗,包括檢查必要的 IAM 權限。如果使用此選項,資料集可能會排除部分或所有桶。使用
--retention-period-days=DAYS
指定在資料集快照中擷取的資料移動天數。例如:90
。使用
--description=DESCRIPTION
為資料集設定提供說明。
REST API
JSON API
建立 JSON 檔案,其中包含下列選用資訊:
{ "organization_number": "ORGANIZATION_ID", "source_projects": { "project_numbers": "PROJECT_NUMBERS" }, "retention_period_days": RETENTION_PERIOD" }
取代:
ORGANIZATION_ID
,其中包含來源專案所屬 機構的資源 ID。PROJECT_NUMBERS
與您要納入資料集中的專案編號。您可以指定一或多個專案。專案必須以清單格式指定。RETENTION_PERIOD
包含在資料集快照中擷取的資料天數。例如:90
。
如要更新資料集設定,請使用
cURL
透過Patch
DatasetConfig 要求呼叫 JSON API:curl -X PATCH --data-binary @JSON_FILE_NAME \ "https://storageinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID?updateMask=RETENTION_PERIOD" \ --header "Authorization: Bearer ACCESS_TOKEN" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
取代:
刪除資料集設定
如要刪除資料集設定,請完成下列步驟:
控制台
- 在 Google Cloud 控制台,前往 Cloud Storage 的「Storage Insights」頁面。
按一下要刪除的資料集設定名稱。
按一下「刪除」圖示
。
指令列
如要刪除資料集設定,請執行
gcloud storage insights dataset-configs delete
指令:gcloud storage insights dataset-configs delete DATASET_CONFG_ID \ --location=LOCATION
取代:
DATASET_CONFIG_ID
與要刪除的資料集設定名稱。LOCATION
與資料集和資料集設定的位置。例如:us-central1
。
使用下列標記更新資料集設定的屬性:
使用
--auto-delete-link
取消連結從要刪除的資料集設定產生的資料集。您必須先取消連結資料集,才能刪除產生資料集的資料集設定。使用
--retention-period-days=DAYS
指定資料集快照中要擷取的資料天數。例如:90
。
除了指定
DATASET_CONFIG_NAME
和LOCATION
,您也可以指定完整的資料集設定路徑。例如:gcloud storage insights dataset-configs describe projects/DESTINATION_PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID
REST API
JSON API
使用
cURL
搭配Delete
DatasetConfig 要求呼叫 JSON API:curl -X DELETE \ "https://storageinsights.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID" \ --header "Authorization: Bearer ACCESS_TOKEN" \ --header "Accept: application/json" \ --header "Content-Type: application/json" \
取代: