Snowflake と BigQuery を両方使っているチームは珍しくありません。歴史的な経緯でどちらかが先に導入され、後から別のツールが加わるケースが多い。二つのデータウェアハウスが並存すると、どちらのデータが正しいか、どちらを参照すべきかという混乱が生まれます。この記事では、二つを統合するための考え方と、実際のパイプライン設計のポイントを説明します。
なぜ二つのデータウェアハウスが並存するのか ¶
Snowflake と BigQuery が並存する理由は、たいてい組織の歴史にあります。エンジニアチームが BigQuery を使っていたところに、データアナリストチームが Snowflake を導入した、あるいはその逆。M&A で別の環境を引き継いだケースもあります。どちらかに統一するのが理想ですが、移行コストと既存のクエリ資産を考えると、現実的には並存させながら整理していく方が多い。
主軸を決めるための判断基準 ¶
どちらを主軸にするかは、「どちらに多くのクエリが集中しているか」と「どちらのコストが最適化しやすいか」で判断します。BigQuery はクエリ課金モデルのため、大量のアドホッククエリが走る環境ではコストが予測しにくい。Snowflake はウェアハウスサイズで課金されるため、定常的なバッチ処理に向いています。どちらが向いているかは、クエリのパターンを分析してから決めるべきです。
二つをつなぐパイプラインの設計 ¶
主軸を決めた後も、しばらくは二つを並行して使う期間があります。この期間に重要なのは、どちらのデータが「マスター」かを明確にすることです。同じデータが両方に存在する場合、どちらを更新するか、どちらを参照するかのルールを文書化しておかないと、不整合が生まれます。BlendConnect では、Snowflake と BigQuery の両方を接続し、データの流れを一つのキャンバスで管理できます。
移行を段階的に進める方法 ¶
一度に全データを移行しようとすると、リスクが高くなります。まず、新しいデータソースからのデータは主軸のウェアハウスにのみ書き込むルールを作ります。次に、既存のデータを優先度の低いものから順に移行します。最後に、旧ウェアハウスへの参照がゼロになったことを確認してから廃止します。BlendTrace の系譜機能を使うと、旧ウェアハウスへの参照が残っているかどうかを確認できます。
Snowflake と BigQuery の統合は、ツールの問題というより設計の問題です。どちらを主軸にするかの判断から、移行計画の設計まで、導入支援コンサルティングで一緒に考えます。まずはお問い合わせください。