AWS Redshift CI/CD 構築記
(medium.com)Here Mobilityがデータエンジニアとアナリスト向けのDatabase CI/CDを構築した方法。
-
既存では分析チームがS3データレイクをPySpark ETLでRedshiftへ送っており、そのためのSQLスクリプトも分析チームの所管
-
PySparkコードはアプリケーションのCI/CDに従うため問題ないが、Redshift用のSQLコードはテスト/バージョニング/トラッキングが難しい
-
バージョン管理、コードValidation、Jenkinsパイプラインへの統合、そして自動でRedshiftにデプロイされるRedshift専用のCI/CDツール
redCIを開発 -
redCI- PythonコードでRedshiftとPostgresに接続し、PSQL互換スクリプトファイルを読み込んで実行可能。Redshift構文をPSQLに変換し、これによってユニットテストを実行可能 -
実際に実装しながら生じた問題: RedshiftはPostgres 8ベースだが、サポートする関数が異なるため問題が生じうる。これを変換した後、Dockerで立ち上げたPostgres上で実行してみることで解決。
2件のコメント
Here は以前は Navteq でしたが、その後 Nokia に買収され、現在はドイツの Audi/BMW/Daimler AG コンソーシアムに買収された地図・位置情報サービス会社です。
redCI自体をオープンソースとして公開してくれるとよさそうですが、まだそこまでは至っていないようですね。