本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
防止爬蟲程式變更現有的結構描述
您可以防止 AWS Glue 編目程式在其執行時對 Data Catalog 進行任何結構描述變更。根據預設,爬蟲程式會更新 Data Catalog 中的結構描述,以符合要爬蟲的資料來源。但是,在某些情況下,您可能想要防止 Crawler 修改現有的結構描述,特別是如果您已轉換或清除資料,且不希望原始結構描述覆寫變更。
請依照下列步驟,設定爬蟲程式,不要覆寫資料表定義中的現有結構描述。
- AWS Management Console
-
-
登入 AWS Management Console 並在 開啟 AWS Glue 主控台https://console.aws.amazon.com/glue/
。 -
在 Data Catalog 下選擇爬蟲程式。
-
從清單中選擇爬蟲程式,然後選擇編輯 。
-
選擇步驟 4,設定輸出和排程 。
-
在進階選項 下,選擇僅新增資料欄或忽略變更,並且不要更新 Data Catalog 中的資料表。
-
您也可以設定組態選項,使用資料表 中的中繼資料更新所有新的和現有的分割區。這會將分割區結構描述設定為從資料表繼承。
選擇更新。
-
- 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" } } }
產生分割區索引
為每個 S3 路徑建立單一結構描述