我的 AWS Glue 爬蟲程式不在表格中新增分割區。
簡短描述
爬蟲程式掃描新分割區的來源資料檔時,會比較下列來源檔與現有表格的屬性:
- 檔案格式
- 壓縮類型
- 架構
- Amazon Simple Storage Service (Amazon S3) 分割區結構
如果分割區的任何屬性與表格的屬性不同,則會略過分割區,而不會新增至中繼資料。Amazon S3 路徑中分割區名稱、順序或數量的差異會被視為分割區架構或結構的變更。
解決方法
疑難排解問題
檢查爬蟲程式記錄以識別問題:
- 開啟 AWS Glue 主控台。
- 在瀏覽窗格中,選擇爬蟲程式。
- 選取爬蟲程式,然後選擇日誌連結以檢視 CloudWatch 主控台上的記錄。
- 檢閱日誌以檢查爬蟲程式是否跳過新的分割區。
例如,假設記錄包含的項目看起來類似下列內容:
Folder partition keys do not match table partition keys, skipped folder: doc-example-bucket/doc-example-path/doc-example-table/year=2021/month=01/sday=05/
此項目表明 Amazon S3 位置的分割區結構與為表格定義的分割區索引鍵不符。當表格來源位置的分割區結構不一致時,可能會發生這種情況。
如果 AWS Glue 爬蟲程式建立多個表格,記錄項目看起來會類似下列內容:
INFO : Created table doc-example-table in database doxtest_db
如果您看到類似的日誌,請比較這些表格位置的架構和分割結構與原始表格架構和分割結構。
解決問題
根據 CloudWatch 日誌中的資訊,請考量下列一或多個解決方案選項:
- 如果問題是由不一致的分割區結構造成的,請手動或以程式設計方式重新命名 S3 路徑,使結構一致。
- 如果由於檔案格式、壓縮格式或架構不相符而跳過分割區,而且不需要將資料包含在預期的表格中,請考量下列事項:
- 使用排除模式跳過任何不需要的檔案。
- 將不需要的檔案移動到其他位置。