はじめに
こんにちは。池田です。
今回もAlteryx Inspireの個別セッションの内容になります。
タイトルは「How to build a modern data stack」で、
簡単に和訳すると、「モダンデータスタックの構築方法」です。
モダンデータスタックとは
モダンデータスタック(Modern Data Stack、MDS)とは、
クラウドサービスやSaaSツールを組み合わせたデータ分析基盤のこと、またその考え方を意味します。
特徴としては、ユーザによる技術的な設定がほとんど必要なく、導入や利用に際しての技術的なハードルが低いことがあげられます。
また、以下の3つのメリットがあげられます。
①スピーディな環境構築:導入コストや人的コストの削減
②高いスケーラビリティ:データ基盤のスケールアップ/ダウン
③データの民主化:ノーコードあるいはローコードでのデータ処理・データ分析
上記のメリットなどから、直近2年のgoogle検索では検索数が右肩上がりで増加しています。
従来のデータスタックとの比較
従来のデータスタックとモダンデータスタックの比較になります。
従来型ではオンプレミスのデータウェアハウスを使用し、扱うデータ量もギガバイト~テラバイト程度であったのが、
モダンデータスタックでは、クラウド型を使用し、データ量もペタバイト~エクサバイト程度に変化しています。
※ギガ = 109、テラ = 1012、ペタ = 1015、エクサ = 1018
また、データソースもERPやCRMが主流であったものが、
最近はソーシャルメディアやIoTなど様々な取得場所・取得方法になってきています。
データが生成される頻度もリアルタイムで行われるように変わってきたといった違いもあります。
モダンデータスタックで使用されているクラウド型のデータウェアハウスは、
インターネット上のサーバーを通じてDWHを使用するため、自社サーバーに負担がかりません。
また、導入までの時間も掛からず、機能や容量の拡張も容易であるため、小規模から始めたい場合に最適です。
別のメリットとして、例えばクラウド型データウェアハウスとして利用が進んでいるSnowflakeでは、
データを保管するストレージの部分と処理を実行するコンピュートの部分が分かれており、
データを1か所に集約しながら複数の処理を同時に実行することができるので、
データへの同時接続数が増加しても自動で対応できるなどということがあります。
データスタックの役割と課題
データスタックの役割は大きく3つあります。
しかし実際には、それぞれに以下の課題があるようです。
ほとんどの組織でデータスタックが役割を果たしていないということがわかると思います。
また、データスタックが複雑になりすぎて機能しなくなるケースも多いようです。
データスタックの構築方法
では、正しく機能するデータスタックを構築するためにはどのように考えればよいでしょうか?
以下の6つのステップに分解して、それぞれのパズルを組み合わせるようなイメージで構築するとよいです。
これがうまく嵌ると、下図のように機能していきます。
しかし、これは簡単なことではなく、
といった問題が出てくることも多いのでツールの選定や構築には注意が必要になります。
Alteryxを用いた課題解決
先ほどのセクションの最後に、スタック構築の課題を挙げましたが、Alteryxを利用して解決することができます。
Alteryxは展開している製品も多く、データ収集からETL、分析、機械学習、レポーティングなど柔軟なオプションをもち、
ノーコードからプログラミングといったところまで様々なスキルセットで対応することができます。
下図のように、多くの領域をAlteryx製品のみでカバーすることができ、
データウェアハウスやレポーティングツールとの接続性もよいため、
ツールの無秩序な乱立や専門的なスキルセットといった上述の問題を解消することが可能です。
データスタックが機能していることの確認指標
データスタックがうまく機能しているかについては、以下の4つの指標を見て確認しましょう。
ただし、このスライドの最後にあるように、最新化することが目的でないので、
ビジネス目標を見失わないようにして、その目標の達成に集中しましょう!
Snowflake × Alteryxの使用例
さいごに、SnowflakeとAlteryx Analytics Cloud Platformを使ったモダンデータスタックの例を紹介します。
①レポートを強化したいケース
データウェアハウスにSnowflake、データ処理や分析にAlteryx Designer CloudやLocation Intelligence、
レポーティングにAlteryx Auto InsightsやTableauを使用しています。
簡単に始めることができ、従量課金制のSnowflakeからAlteryxでデータを取り込み、分析できる形に加工した後、
TableauやAuto Insightsを使って可視化/分析する流れですね。
SnowflakeとAlteryx、AlteryxとTableauの接続性の良さを使ったデータ収集からレポーティングまでのスムーズな構築例だと思います。
②企業全体に拡張していくケース
インフラにAWS、セルフ分析にAlteryx Designer Cloud、加工後データの格納先としてSnowflakeを使用しています。
AWSは信頼性の高いインフラでスケーラブルな処理が可能です。
AWSからAlteryxにデータを引っ張って加工し、最終的に整形したデータをSnowflakeに格納するという流れです。
Alteryxを使うことで、ノーコードでワークフローを開発できるので、開発難易度が比較的低く、IT部門やエンジニアの負担を減らすことができます。
また、作成したワークフローの処理の自動化により、データ加工のミスなどのリスクも軽減できます。
③機械学習を主流にしているケース
データストレージにS3、データ処理にSnowflake、機械学習ツールとしてAlteryx Machine Learningを使用しています。
安価なストレージとスケーラブルで安定した性能を持つクラウドストレージのS3からデータを引っ張り、
Snowflakeでデータの準備を行い、Alteryx Machine Learningで機械学習・分析を行う流れです。
ここでもツール間のシームレスな接続性を用いて効果的かつ効率的な流れが構築されていることが分かります。
上記の3例のように、AlteryxではSnowflakeとの接続性がよいことに加えて、
データ収集から機械学習といったところまで幅広く対応できることが、Alteryxを導入・使用していく大きなメリットの1つだと考えます。
SnowflakeやAlteryx Analytics Platformなどのクラウド製品の掛け合わせで効率的なデータスタックを考えてみてはいかがでしょうか。
さいごに
いかがでしたでしょうか。
クラウドベースで構築されるモダンデータスタックに関するセッションを紹介いたしました。
既存のデータスタックに課題を抱えている企業やエンジニアの方の参考になれば幸いです。
truestarでは、TableauやAlteryx、Snowflakeをはじめとしたデータ周りのことを要件定義~実装・運用まで幅広く支援しております。
データ周りでお困りのことなどがございましたらぜひお声がけください。