データ統合環境「カスタマーストーリーアナリティクス(CSA)」が複数のデータウェアハウス(Redshift, BigQuery, Snowflake)に対応しました!

2020.09.04

データアナリティクス事業本部のしんやです。

少し前にブログで情報を公開し始めた、データ統合基盤「カスタマーストーリー アナリティクス(Customer Story Analytics)」

プロダクト自体がどういったものであるかについては、下記エントリをご参照ください。

この度、このプロダクトが2020年08月のリリース(リリースバージョン: v5.0)を以て、複数のデータウェアハウス(以降DWH)を扱えるようになりました! 合わせて下記の形でプレスリリースも公開しています。

当エントリでは、この点についてもう少し詳しく踏み込んだ形でカスタマーストーリーアナリティクスの複数データウェアハウス対応についてご紹介していきたいと思います。

以降、本文中では以下の略称を主に用います。
・カスタマーストーリーアナリティクス = CSA
・Job Management Console = JMC
・データウェアハウス = DWH

目次

 

カスタマーストーリーアナリティクス(CSA)で実現した「複数データウェアハウス対応」

タイトルにある「複数のデータウェアハウスに対応」という部分を実現するのはCSAのプロダクトの中で「Job Management Console」と呼んでいるサービスが担う形となります。単語の頭文字を取ってJMCと呼んでいます。冒頭紹介したエントリでもJMC(Job Management Console)に関して言及していますが、改めてプロダクトの特徴についてざっくり紹介させて頂ければと思います。

CSA JMCは、

  • クラスメソッドが展開しているデータ統合基盤「カスタマーストーリー アナリティクス(CSA)」プロダクト群の1つです。
  • 主な機能は主に以下のものを提供しています。
    • テーブル作成機能(ファイルの内容をシステムで判別し、最低限の画面操作でテーブルを自動で作成)
    • データ連携機能(DWHへのデータ投入を任意のサイクルで行う部分をスムーズに連動)
    • SQLやプログラムのスムーズな組み込み(作成済みの処理を、再利用可能なパーツとしてシステムに登録出来る)
    • ジョブの管理(上記処理群をGUIで編成)とスケジュール実行(実践を想定した細かい実行指定が可能)
    • 運用を想定したジョブの再実行機能
    • ジョブ実行通知機能
    • その他各種有用情報の可視化・情報表示
  • データ分析を行う際に必要となるデータ統合基盤を短期間で提供し、データ分析に関する基盤の構築・または運用に関わる各種作業の効率化、自動化をサポートします。

従来、これらを行う対象のDWHはAmazon Redshiftのみでした。それが今回、CSA JMC v5リリースタイミングで「Amazon Redshift」に加えて新たに「Google BigQuery」と「Snowflake」も扱えるようになった形です。ざっくり以下の様なイメージで、CSA JMCの本体がまず存在し、そこから必要に応じてDWHをそれぞれの環境に繋ぎに行く流れになります。

(※プレスリリースより拝借。上記図の『CSアナリティクスEssential/Standard』に相当する部分がJMCでカバーする機能となります)

 

CSA JMCからAmazon Redshiftに接続

ここからはDWH毎にもう少し詳しく「環境のあり方」について見ていきます。まずはAmazon Redshift連携について。

CSA JMCでAmazon Redshiftを利用する場合、予め必要となるAWSアカウントを用意頂きます。その上でそのアカウント上にヒアリング情報を踏まえた形でCSA環境を導入します。

下記図の薄いオレンジ色で囲った部分がCSA JMCの処理領域となります。システム構築時に同一AWSアカウント内に新たにAmazon Redshiftを立ち上げて運用する場合であれば下記のイメージで、また既存稼働中のAmazon Redshiftに対してCSA JMCを導入・接続する場合はAWSアカウントやVPCが分かれる形で接続を行う流れとなります。

 

CSA JMCからGoogle BigQueryに接続

次いでCSA JMCでGoogle BigQueryを利用する場合。構成イメージは以下の様な形となります。

前提としてGoogle BigQueryを使うためにはGCPアカウントが必要となりますので、AWSアカウントとは別にGCPアカウントを取得・契約し、環境セットアップのための手続きを経て頂いた上でCSA JMC環境を導入します。

 

CSA JMCからSnowflakeに接続

そして3つめ、CSA JMCでSnowflakeを利用する場合の構成イメージが以下となります。

Google BigQuery同様、Snowflakeそのものを利用するには別途Snowflakeアカウントの取得・契約が必要となります。環境セットアップのための手順を経て頂く流れも同じです。現時点では、Snowflakeにデータを投入する際のファイルストレージサービスはAmazon S3を使う形としています。

 

1つのシステムで複数の「DWH及びDWHへのジョブ管理」構成が可能に

上記の説明ではそれぞれの環境でそれぞれのDWHに接続しに行くイメージですが、最新バージョンのCSアナリティクス環境では、1つのシステム内で、複数のDWH及びDWHへのジョブ管理を行う構成を取る事が出来ます。

CSA JMCには「サイト」という概念があります。「許可されたユーザーだけがアクセス出来る、任意のスペース・プロジェクトの枠」のようなものです。

この「サイト」を、CSA JMCでは1システム内に複数作成する事が可能です。そして、このDWH設定については、1つのサイトに1つのDWHが紐付きます。すなわちCSアナリティクス1つで複数のDWH及びDWHへのジョブ管理を行う事が出来るようになります。下記の例はいささか極端な形ではありますが、構想次第ではこんな使い方も可能です。

 

まとめ

という訳で、CSAが複数DWH(Redshift, BigQuery, Snowflake)に対応したことをお知らせするエントリの紹介でした。

Developers.IOでは、引き続きこの「複数DWHに対応したCSA」について機能の紹介、また機能を踏まえた各種DWHの使い方等をブログで適宜公開・紹介していきます。機能の特徴や実際のユースケースを想定した実践内容などをお伝え出来ればと思いますので、お楽しみに!

2020/09/29(火)にセミナーを開催します

今回のこのカスタマーアナリティクス新バージョンの発表を受けて、弊社主催のセミナーを開催致します。

当日は、今回のバージョンアップでCSAが扱える様になった3つのDWH(Redshift, BigQuery, Snowflake)それぞれの概略やユースケースを紹介し、最後にCSAの紹介を行う形で進めていく予定となっております。興味をお持ち頂けましたら、是非ご参加ください!