防止爬蟲程式變更現有的結構描述 - AWS Glue

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

防止爬蟲程式變更現有的結構描述

您可以防止 AWS Glue 編目程式在其執行時對 Data Catalog 進行任何結構描述變更。根據預設,爬蟲程式會更新 Data Catalog 中的結構描述,以符合要爬蟲的資料來源。但是,在某些情況下,您可能想要防止 Crawler 修改現有的結構描述,特別是如果您已轉換或清除資料,且不希望原始結構描述覆寫變更。

請依照下列步驟,設定爬蟲程式,不要覆寫資料表定義中的現有結構描述。

AWS Management Console
  1. 登入 AWS Management Console 並在 開啟 AWS Glue 主控台https://console.aws.amazon.com/glue/

  2. Data Catalog 下選擇爬蟲程式

  3. 從清單中選擇爬蟲程式,然後選擇編輯

  4. 選擇步驟 4,設定輸出和排程

  5. 進階選項 下,選擇僅新增資料欄忽略變更,並且不要更新 Data Catalog 中的資料表

  6. 您也可以設定組態選項,使用資料表 中的中繼資料更新所有新的和現有的分割區。這會將分割區結構描述設定為從資料表繼承。

  7. 選擇更新

AWS CLI

下列範例示範如何設定爬蟲程式,使其不變更現有的結構描述,只新增資料欄:

aws glue update-crawler \ --name myCrawler \ --configuration '{"Version": 1.0, "CrawlerOutput": {"Tables": {"AddOrUpdateBehavior": "MergeNewColumns"}}}'

下列範例示範如何設定爬蟲程式,使其不變更現有的結構描述,也不要新增資料欄:

aws glue update-crawler \ --name myCrawler \ --schema-change-policy UpdateBehavior=LOG \ --configuration '{"Version": 1.0, "CrawlerOutput": {"Partitions": { "AddOrUpdateBehavior": "InheritFromTable" }}}'
API

如果您不希望爬蟲程式執行時變更資料表結構描述,可將結構描述變更政策設為 LOG

當您使用 設定爬蟲程式時API,請設定下列參數:

  • SchemaChangePolicy 結構中的 UpdateBehavior 欄位設為 LOG

  • 使用爬蟲程式 中下列JSON物件的字串表示來設定 Configuration 欄位API;例如:

    { "Version": 1.0, "CrawlerOutput": { "Partitions": { "AddOrUpdateBehavior": "InheritFromTable" } } }