本頁面說明如何建立及管理 Storage Insights 資料集和資料集設定。進一步瞭解儲存空間分析資料集。
事前準備
開始建立及管理資料集和資料集設定前,請先按照後續小節中的操作說明進行。
取得必要角色
如要取得建立及管理資料集所需的權限,請要求管理員在來源專案中授予下列 IAM 角色:
-
如要建立、管理及查看資料集設定:
Storage Insights 管理員 (
roles/storageinsights.admin) -
如要查看、連結及取消連結資料集,請按照下列步驟操作:
-
儲存空間洞察分析師 (
roles/storageinsights.analyst) -
BigQuery 管理員 (
roles/bigquery.admin)
-
儲存空間洞察分析師 (
-
如要刪除已連結的資料集:
BigQuery 管理員 (
roles/bigquery.admin) -
如要在 BigQuery 中查看及查詢資料集:
-
儲存空間洞察檢視器 (
roles/storageinsights.viewer) -
BigQuery 工作使用者 (
roles/bigquery.jobUser) -
BigQuery 資料檢視者 (
roles/bigquery.dataViewer)
-
儲存空間洞察檢視器 (
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這些預先定義的角色具備建立及管理資料集所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要建立及管理資料集,必須具備下列權限:
-
建立資料集設定:
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」頁面。
按一下「設定資料集」。
在「為資料集命名」部分,輸入資料集的名稱。視需要輸入資料集說明。
在「定義資料集範圍」部分,執行下列操作:
選取下列選項之一:
如要取得目前機構中所有專案的儲存空間中繼資料,請選取「加入組織」。
如要取得所選資料夾中所有專案的儲存空間中繼資料,請選取「Include folders (Sub-organization/departments)」(加入資料夾 (子組織/部門))。 如要瞭解如何取得資料夾 ID,請參閱「查看或列出資料夾和專案」。如要新增資料夾,請按照下列步驟操作:
- 在「Folder 1」(資料夾 1) 欄位中,輸入資料夾 ID。
- 如要新增多個資料夾 ID,請按一下「+ 新增其他資料夾」。
如要取得所選專案的儲存空間中繼資料,請選取「提供專案編號來加入專案」。如要瞭解如何找出專案編號,請參閱「找出專案名稱、編號和 ID」。如要新增專案,請按照下列步驟操作:
- 在「Project 1」欄位中,輸入專案編號。
- 如要新增多個專案編號,請按一下「+ 新增其他專案」。
如要大量新增專案或資料夾,請選取「透過 CSV 檔案上傳專案 /資料夾清單」。CSV 檔案必須包含您要納入資料集的專案編號或資料夾 ID。
指定是否要自動將所選資源日後建立的值區納入。
如要依據區域和 bucket 前置字串指定 bucket 篩選器,請展開「Filters (optional)」(篩選器 (選用)) 區段。篩選器會以累加方式套用至值區。
您可以納入或排除特定區域中的值區。舉例來說,您可以排除
me-central1和me-central2地區中的值區。您也可以根據前置字串納入或排除值區。 舉例來說,如要排除開頭為my-bucket的值區,請輸入my-bucket*前置字串。
按一下「繼續」。
在「選取保留期限」部分,選取資料集中資料的保留期限。
在「選取儲存設定資料集的位置」部分,選取儲存資料集和資料集設定的位置。
在「選取服務帳戶類型」部分,為資料集選取服務代理程式類型。建立資料集設定時,系統會代您建立這個服務代理。你可以選取下列任一服務專員:
- 特定設定的服務帳戶:這個服務代理只能存取及寫入特定資料集設定產生的資料集。
- 專案範圍服務帳戶:這個服務代理程式可以存取及寫入專案中所有資料集設定產生的資料集。
按一下「設定」。設定資料集後,連結的資料集最多可能需要 48 小時,才會顯示首次載入的資料。
指令列
如要建立資料集設定,請執行
gcloud alpha storage insights dataset-configs create指令並搭配使用必要旗標:gcloud alpha storage insights dataset-configs create DATASET_CONFIG_ID \ --location=LOCATION \ --organization=SOURCE_ORG_NUMBER \ --retention-period-days=RETENTION_PERIOD_DAYS \ (SCOPE_FLAG)
其中:
DATASET_CONFIG_ID是您要為資料集設定指定的名稱。名稱會做為資料集設定的 ID,且可變動。名稱最多可包含 128 個字元,可以使用英文字母、數字和底線。SOURCE_ORG_NUMBER是來源專案所屬機構的 ID。如要瞭解如何找出機構 ID,請參閱「取得機構資源 ID」。RETENTION_PERIOD_DAYS是資料集中資料的保留期限。SCOPE_FLAG是下列其中一個旗標,用於定義要收集的資料範圍:--enable-organization-scope:讓資料集從整個機構的所有值區收集洞察資訊。--source-folders=[SOURCE_FOLDER_NUMBERS,...]:指定要納入資料集的資料夾編號清單。如要瞭解如何找出資料夾編號,請參閱「列出階層中的所有專案和資料夾」。--source-folders-file=FILE_PATH: 將 CSV 檔案上傳至 bucket,即可指定多個資料夾編號。--source-projects=[SOURCE_PROJECT_NUMBERS,...]: 指定要納入資料集的專案編號清單。 例如,464036093014。如要瞭解如何找出專案編號,請參閱「找出專案名稱、編號和 ID」。--source-projects-file=FILE_PATH: 將 CSV 檔案上傳至 bucket,即可指定多個專案編號。
或者,您也可以使用其他標記來設定資料集:
使用
--include-buckets=BUCKET_NAMES_OR_REGEX依名稱或規則運算式加入特定 bucket。如果使用這個標記,就無法使用--exclude-buckets。使用
--exclude-buckets=BUCKET_NAMES_OR_REGEX依名稱或規則運算式排除特定 bucket。如果使用這個標記,就無法使用--include-buckets。使用
--project=DESTINATION_PROJECT_ID指定要用於儲存資料集設定和產生的資料集的專案。如果未使用這個標記,目的地專案會是您的有效專案。如要進一步瞭解專案 ID,請參閱建立及管理專案。使用
--auto-add-new-buckets自動納入日後新增至來源專案的任何 bucket。使用
--skip-verification略過驗證程序中的檢查和失敗情形,包括檢查必要的 IAM 權限。如果使用,資料集可能會排除部分或所有值區。使用
--identity=IDENTITY_TYPE指定要與資料集設定一併建立的服務代理類型。值為IDENTITY_TYPE_PER_CONFIG或IDENTITY_TYPE_PER_PROJECT。如未指定,預設值為IDENTITY_TYPE_PER_CONFIG。使用
--description=DESCRIPTION為資料集設定撰寫說明。使用
--organization=ORGANIZATION_ID,並加入來源專案所屬機構的資源 ID。資料集設定會排除指定位置以外的來源專案。如要瞭解如何找出機構 ID,請參閱「取得機構資源 ID」。如未指定,預設值為來源專案的機構 ID。
以下範例會在
us-central1區域中,為 ID 為123456789的機構建立名為my-dataset的資料集設定,保留期限為30天,且範圍僅限於專案987654321和123123123:gcloud alpha storage insights dataset-configs create my-dataset \ --location=us-central1 \ --organization=123456789 \ --retention-period-days=30 \ --source-projects=987654321,123123123
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。建立包含下列資訊的 JSON 檔案:
{ "sourceProjects": { "project_numbers": ["PROJECT_NUMBERS", ...] }, "retentionPeriodDays": "RETENTION_PERIOD_DAYS", "identity": { "type": "IDENTITY_TYPE" } }
取代:
PROJECT_NUMBERS輸入要納入資料集的 專案編號。 您可以指定一或多個專案。專案必須指定為字串清單。或者,您也可以新增機構,或包含要更新中繼資料的值區和物件的一或多個資料夾。如要加入資料夾或機構,請分別使用
sourceFolders或organizationScope欄位。詳情請參閱DatasetConfig參考資料。RETENTION_PERIOD_DAYS,其中包含要在資料集快照中擷取的資料天數。例如:90。IDENTITY_TYPE,其中包含與資料集設定一併建立的服務帳戶類型。值為IDENTITY_TYPE_PER_CONFIG或IDENTITY_TYPE_PER_PROJECT。
如要建立資料集設定,請使用
cURL透過CreateDatasetConfig 要求呼叫 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,並將 location 改成資料集和資料集設定所在的區域。例如:us-central1。DATASET_CONFIG_ID改成您要為資料集設定取的名稱。名稱會做為資料集設定的 ID,且可變更。名稱最多可包含 128 個英文字母、數字和底線。名稱開頭必須為英文字母。ACCESS_TOKEN,並使用您在安裝及初始化 Google Cloud CLI 時產生的存取權杖。
如要排解 error_attributes_view 中記錄的快照處理錯誤,請參閱「排解資料集錯誤」。
將必要權限授予服務代理
建立資料集設定時,系統會代您建立特定設定或特定專案的服務代理。Google Cloud 服務代理人的命名格式為 service-PROJECT_NUMBER@gcp-sa-storageinsights.iam.gserviceaccount.com,選取「包含 Google 提供的角色授權」核取方塊後, Google Cloud 主控台的 IAM 頁面就會顯示該代理人。您也可以使用 JSON API 查看 DatasetConfig 資源,找出服務代理程式的名稱。
如要啟用 Storage Insights 來產生及寫入資料集,請要求管理員在包含來源專案的機構中,授予服務代理程式 Storage Insights Collector Service 角色 (roles/storage.insightsCollectorService)。您要從哪個資料集取得資料,就必須為該資料集設定的每個設定範圍服務代理授予這個角色。如果您使用專案範圍的服務代理程式,則只需授予一次這個角色,服務代理程式就能讀取及寫入專案內所有資料集設定的資料集。
如需授予專案角色的操作說明,請參閱「管理存取權」。
連結資料集
如要將資料集連結至 BigQuery,請完成下列步驟:
控制台
- 前往 Google Cloud 控制台的 Cloud Storage「Storage Insights」頁面。
按一下產生要連結資料集的資料集設定名稱。
在「BigQuery 連結的資料集」部分,按一下「連結資料集」來連結資料集。
指令列
如要將資料集連結至 BigQuery,請執行
gcloud alpha storage insights dataset-configs create-link指令:gcloud alpha storage insights dataset-configs create-link DATASET_CONFIG_ID --location=LOCATION
取代:
DATASET_CONFIG_ID,其中包含要連結的資料集。將
LOCATION替換為資料集的位置。例如:us-central1。
除了指定
DATASET_CONFIG_ID和LOCATION,您也可以指定完整的資料集設定路徑。例如:gcloud alpha storage insights dataset-configs create-link projects/DESTINATION_PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID_
取代:
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。建立包含下列資訊的 JSON 檔案:
{ "name": "DATASET_NAME" }
取代:
DATASET_NAME替換為要連結的資料集名稱。例如:my_project.my_dataset276daa7e_2991_4f4f_b9d4_e354b48426a2。
使用
cURL透過linkDatasetDatasetConfig 要求呼叫 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 連結資料集。
BigQuery 連結資料集會顯示在 Google Cloud 主控台中。 如要瞭解中繼資料的資料集結構定義,請參閱「中繼資料的資料集結構定義」。
您可以查詢任何其他 BigQuery 資料表,方法與查詢連結資料集中的資料表和檢視相同。
取消連結資料集
如要停止將資料集設定發布至 BigQuery 資料集,請取消連結資料集。如要取消連結資料集,請完成下列步驟:
控制台
- 前往 Google Cloud 控制台的 Cloud Storage「Storage Insights」頁面。
按一下產生要取消連結資料集的資料集設定名稱。
在「BigQuery 連結的資料集」部分,按一下「取消連結資料集」,取消連結資料集。
指令列
如要取消連結資料集,請執行
gcloud alpha storage insights dataset-configs delete-link指令:gcloud alpha storage insights dataset-configs delete-link DATASET_CONFIG_ID --location=LOCATION
取代:
DATASET_CONFIG_ID,並將其替換為產生要取消連結資料集的資料集設定名稱。將
LOCATION替換為資料集和資料集設定的位置。例如:us-central1。
除了指定
DATASET_CONFIG_ID和LOCATION,您也可以指定完整的資料集設定路徑。例如:gcloud alpha storage insights dataset-configs delete-link projects/DESTINATION_PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID
取代:
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。建立包含下列資訊的 JSON 檔案:
{ "name": "DATASET_NAME" }
取代:
DATASET_NAME替換為要取消連結的資料集名稱。例如:my_project.my_dataset276daa7e_2991_4f4f_b9d4_e354b48426a2。
使用
cURL透過unlinkDatasetDatasetConfig 要求呼叫 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 alpha storage insights dataset-configs describe指令:gcloud alpha storage insights dataset-configs describe DATASET_CONFIG_ID \ --location=LOCATION
取代:
DATASET_CONFIG_ID換成資料集設定的名稱。LOCATION,並提供資料集位置和資料集設定。
除了指定
DATASET_CONFIG_ID和LOCATION,您也可以指定完整的資料集設定路徑。例如:gcloud alpha storage insights dataset-configs describe projects/DESTINATION_PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID
取代:
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。使用
cURL透過GetDatasetConfig 要求呼叫 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 alpha storage insights dataset-configs list指令:gcloud alpha 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_ID。
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。使用
cURL透過GetDatasetConfig 要求呼叫 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 alpha storage insights dataset-configs update指令:gcloud alpha storage insights dataset-configs update DATASET_CONFG_ID \ --location=LOCATION
取代:
DATASET_CONFIG_ID換成資料集設定的名稱。LOCATION,並提供資料集位置和資料集設定。
使用下列標記更新資料集設定的屬性:
使用
--skip-verification略過驗證程序中的檢查和失敗情形,包括檢查必要的 IAM 權限。如果使用,資料集可能會排除部分或所有值區。使用
--retention-period-days=DAYS指定要在資料集快照中擷取的資料天數。例如:90。使用
--description=DESCRIPTION為資料集設定撰寫說明。使用
--organization=ORGANIZATION_ID指定來源專案的機構 ID。如未指定,預設值為來源專案的機構 ID。
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。建立包含下列選用資訊的 JSON 檔案:
{ "organization_number": "ORGANIZATION_ID", "source_projects": { "project_numbers": "PROJECT_NUMBERS" }, "retention_period_days": RETENTION_PERIOD" }
取代:
ORGANIZATION_ID來源專案所屬 機構的資源 ID。如未指定,預設值為來源專案的機構 ID。PROJECT_NUMBERS,其中包含要納入資料集的專案編號。您可以指定一或多個專案。專案必須以清單格式指定。RETENTION_PERIOD,表示資料集快照中要擷取的資料天數。例如:90。
如要更新資料集設定,請使用
cURL透過PatchDatasetConfig 要求呼叫 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 alpha storage insights dataset-configs delete指令:gcloud alpha storage insights dataset-configs delete DATASET_CONFIG_ID \ --location=LOCATION
取代:
DATASET_CONFIG_ID,並填入要刪除的資料集設定名稱。LOCATION,並提供資料集和資料集設定的位置。例如:us-central1。
使用下列標記更新資料集設定的屬性:
使用
--auto-delete-link取消連結要刪除的資料集設定所產生的資料集。您必須先取消連結資料集,才能刪除產生該資料集的資料集設定。使用
--retention-period-days=DAYS指定要在資料集快照中擷取的資料天數。例如:90。
除了指定
DATASET_CONFIG_ID和LOCATION,您也可以指定完整的資料集設定路徑。例如:gcloud alpha storage insights dataset-configs delete projects/DESTINATION_PROJECT_ID/locations/LOCATION/datasetConfigs/DATASET_CONFIG_ID
REST API
JSON API
安裝並初始化 gcloud CLI,以便為
Authorization標頭產生存取權杖。使用
cURL透過DeleteDatasetConfig 要求呼叫 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" \
取代: