S3に置いたcsvのファイルをGlueのCrawlerがクロールする時に、意図通りにヘッダーを取得しない場合があります。
問題
たとえば以下のファイルをクロールしてヘッダーを検出したいとします。
| account | subject |
| 売上高 | りんご |
| 売上高 | さかな |
このcsvをS3にアップロードして、Glueでクローリングしてもcol0 col1のようになってしまう現象です。
| # | Column name | Data type | Partition key | Comment |
| 1 | col0 | string | – | – |
| 2 | col1 | string | – | – |
原因
問題の原因は、GlueクローラーがCSVファイル内の引用符(Quote symbol)の扱いを正しく解釈できなかったことです。
解決方法
Glueの左のペインからCrawlers -> Classfiersを開いて、クローラーに関連付けるCSVデータの分類方法を定義しましょう。

| Classfier type | CSV |
| CSV Serde | デフォルト |
| Column delimiter | Comma (,) CSVファイルの区切り文字を選択 |
| Quote symbol | Space CSVファイルの引用符を選択 |
| Column headings | Has headings CSVにヘッダーがあれば |
| Processing options | デフォルト |
| Custom Datatype | デフォルト |

再度クローラーをrunしてください。

期待通りの結果になりました。