はじめに
以前、Google CloudでつくったDWHのアーキテクチャについて書かせて頂きました。
そちらのGCSトリガーのユースケースが参考になればと思いまとめてみます。
前提
- Google Cloudの初期環境構築ができている
- Google Cloudの初歩的な学習が完了している
やりたかったこと
- 現場メンバーがCSVファイルでローカル保存している販売データを出来るだけ工数かけずに活用できる状態にしたかった
- コストやシステムの兼ね合いからCSVファイル転送をAPIなどで自動連係はできなかった
- 販売データを収集してBigqueryでマスタを当てて積み上げしてBIで見るようなイメージ
アーキテクチャ
アーキテクチャ説明
流れとしまして、
- CSVファイルをCloud Storageに配置する
- ファイルが配置されたことをトリガーにCloud Functionsが実行されクエリがはしる
- Cloud StorageのバケットごとにCloud Functionsが設定できる
- CSVのファイル名で取込先のBigqueryテーブルを指定していた
- 参考コードこちらです:GCSトリガーでBigqueryにデータをインポートする
- Bigqueryにデータが取込・蓄積される
- tableauやデータポータルなどのBI連携やCSVはきだし(CSVの場合はCloud Storageに戻していた)
今回のユースケースでのGCSトリガーのメリット
- ファイル配置がトリガーになることで不定期なファイル取込に対応できる
- ファイル取込→分析を一貫して現場で行うことができる
注意点
- CSVファイルをUTF-8にしないと日本語が文字化けする
- 現場メンバーに上記を徹底してもらう必要がある(この点はすこし苦労しました。。)
参考になれば幸いです☕
コメント