見出し画像

【AWS Glue】Glue ETLで列内の値を分割して行に分解する

Glue ETLジョブでTransformの「Split String」「Explode Array Or Map Into Rows」を使って変換前のデータをcolor_list列を分割して行にしていきます
※2024年7月時点の情報です

変換前

変換後

「Split String」で列内の値を配列にする

ジョブエディタの「Visual」タブでAdd notes > Transforms > Split Stringを選択し、分割したい列と区切り文字を指定します
※分割結果を別の列に格納したい場合はoptional設定で新しい列名を設定しますが、後続の「Explode Array Or Map Into Rows」で新しい列名がリストに出てこないので今回は設定していません
新しい列名で処理したい場合はScriptモードにする必要がありそうです…

Split Stringを実行すると、以下のように配列になります

「Explode Array Or Map Into Rows」で配列を行に分解

「Split String」同様、Transformsから選択します
先ほど配列に分割した列を指定します
配列が空でも出力したい場合は、Include Nullsにもチェックを入れます
→チェックを入れないと、id:00004は出力されません

参考


この記事が気に入ったらサポートをしてみませんか?