Amazon AthenaからSnowflakeへの移行
会員限定コンテンツです。無料登録すると制限なしでお読みいただけます。
レビュー投稿日の情報になります
Global Mobility Service株式会社 / myu_mx
テックリード / データエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 10名以下
最終更新日投稿日
利用プラン | ツールの利用規模 | ツールの利用開始時期 | 事業形態 |
---|---|---|---|
Standard Edition | 11名〜50名 | 2024年9月 | B to B B to C |
利用プラン | Standard Edition |
---|---|
ツールの利用規模 | 11名〜50名 |
ツールの利用開始時期 | 2024年9月 |
事業形態 | B to B B to C |
アーキテクチャ
会員限定コンテンツ無料登録してアーキテクチャを見る
アーキテクチャの意図・工夫
- Athenaで構築したS3にデータを集める構成はそのまま、データ基盤の部分を移行
- embulkで変換を行っていた部分をなくし、Snowflakeに集約
- (リバースETLのみはembulkを使用)
導入の背景・解決したかった問題
導入背景
ツール導入前の課題
- Athenaの環境を2020年に構築し、利用拡大に伴い厳しさが出てきた
- 社内でもある程度活用されているが、応用的な分析には耐えられない
- パフォーマンスが固定なので、複雑な分析は作成時、閲覧時ともに待ち時間が長くなる
- 複雑なクエリは10分待ちとかも…
- 加工した結果の保存先として別途RDSを使っているので、分析がしにくく管理に支障がある
- AthenaではUPDATE文が実行できないため、delete & insertもしくは別DBに作る必要がある
- 今後も加工したデータを保存するシーンが増えていくのが予想されるため運用負荷が高い
- メインのIoTデータはdelete & insertしたりと複雑な処理になっている
- (時系列データかつ電波状況により遅延データがある中で、集計の都合上、生データに加えて前後の距離や時間の差分が必要なので、加工が必要)
- 項目追加対応が結構大変
- その他テーブルの変更対応も属人化しやすい状態
どのような状態を目指していたか
Athenaの構成を完全再現し、運用工数が下がり、将来性が上がるデータ基盤になること。
比較検討したサービス
- Amazon Athena
- Redshift Serverless
- (BigQuery)
比較した軸
- 費用面:できれば既存と同じくらいに収まって欲しい
- Athena → (ETL) → RDSのETLをシンプルにしたい
- スペックを柔軟に変えられること
- 運用において属人性を減らしたい
選定理由
- 勢いがあるので、一応比較したけどSnowflakeありきでやった部分は大きい
- Redshift Serverlessを一応触ったが、使いにくい & 課金が1分単位で微妙
- BigQueryに関してはデータはAWSにあるので、この2024年のタイミングで選定する理由が無い
導入の成果
改善したかった課題はどれくらい解決されたか
- 運用工数削減
- 分析パイプラインがシンプルになった
- RDSをデータマートとリバースETL用に2台あったのが1台に
- Embulkの変換処理がSnowflake内になってシンプルに
- 追加の分析テーブル作るのも楽
- テーブルやカラムの追加もGlueよりは楽なような気がする
- terraform化が後回しになっているのでこれから改善な部分もある
- 分析パイプラインがシンプルになった
- 分析面
- 適宜ウェアハウスを変えることで時短
- データが1箇所にまとまったことでjoin等々しやすい
- 今まで3箇所に別れていたのでRedashのquery_rezultsを駆使していた
- 分析の幅が広がる
- マーケットプレイスから色んなデータが無料/有料 で使える
- GISを始め豊富な関数+Athenaに比べ知見が多い
- SnowflakeのコミュニティSnowVillageが活発
- LLM/MLが使える(Snowflake Cortex)
- SnowparkやStreamlit on Snowflakeが使える
導入時の苦労・悩み
AthenaからSnowflakeの移行において、大まかなアーキテクチャを公開している技術ブログはありましたが、サブシステムの利用の有無など細かい部分が異なり、実際の設定を行う部分は探り探り行う必要がありました。
具体的な内容は多いのでこちらをご参照ください。AthenaからSnowflakeへ移行するときの躓きポイント集
導入に向けた社内への説明
上長・チームへの説明
以下の観点でサービスを机上比較し検証を開始しました。
- コスト
- 運用工数
- 将来性
検証の結果、コストは移行前より増加となりましたが、将来性を加味し導入OKとなりました。
上司が同じように課題を感じていたため、経営層への合意の後押しをして頂きました。
活用方法
よく使う機能
- データ基盤としての基本機能
- taskを用いた定期的なデータ変換処理
ツールの良い点
- 機能追加など勢いがありどんどんできることが増えていく
- コミュニティ活動が活発で具体的な活用事例を探しやすい
ツールの課題点
- 機能が多く実現する手段がいくつかあるなかで、マッチする構成を決めるのが大変
今後の展望
Cortexなどを活用し既存のデータを更に活用し事業に貢献できるデータ基盤にしていきたいです。
Global Mobility Service株式会社 / myu_mx
テックリード / データエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 10名以下
よく見られているレビュー
Global Mobility Service株式会社 / myu_mx
テックリード / データエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 10名以下
レビューしているツール
目次
- アーキテクチャ
- 導入の背景・解決したかった問題
- 活用方法