$30 off During Our Annual Pro Sale. View Details »

Amazon Appflow で SaaS データ取込みを自動化してQuickSightで可視化してみた / appflow-salesforce-quicksight

Miyamotok
April 14, 2021

Amazon Appflow で SaaS データ取込みを自動化してQuickSightで可視化してみた / appflow-salesforce-quicksight

2021/4/14 JAWS-UG TOHOKU

Miyamotok

April 14, 2021
Tweet

More Decks by Miyamotok

Other Decks in Technology

Transcript

  1. Amazon AppFlow で SaaS データ取込みを自動化して
    QuickSightで可視化してみた
    JAWS-UG TOHOKU
    2021/04/14
    CData Software Japan
    宮本

    View Slide

  2. Amazon AppFlow で SaaS データ取込みを自動化して
    QuickSightで可視化
    Crawler AWS Glue
    Data Catalog
    Amazon S3
    Athena QuickSight
    AWS Glue
    連携データ
    BackUp
    Amazon AppFlow

    View Slide

  3. Me
    • CData Software Japan のエンジニア
    • 宮本 航太(@miyamon44)
    • CData Sync (ELTツール) を年中触ってる人
    • テクニカルサポート、開発、他社サービスとの検証も
    • ETL/ELT、データ仮想化というワードをウォッチ中
    最近はAWS Glue、Athenaのカスタムコネクタ、S3Lambda あた
    りが気になってる

    View Slide

  4. ノーコードデータ連携
    Glue Studio Azure Data Factory Google Cloud Data Fusion
    ・ 海外、国内問わず GUI 上で完結できる(ノーコード)データ連携サービス・ツールは多くなってきてる
    ・ 最近では ELT と呼ばれるデータ転送を主とした方式がフォーカスされている
    ノーコード=アプリ開発というイメージが強いけど

    View Slide

  5. データ連携:ETLのケース
    SaaS
    DB/S3
    など
    データ抽出 変換 ロード
    DB

    View Slide

  6. データ連携:ELTのケース
    SaaS
    データ抽出 変換
    DB/S3
    など
    ロード
    DB
    DWH:Redshift, BigQuery, Snowflake, etc…
    データレイク(クラウドストレージ):S3、GCS, etc…
    取得したデータを
    ほぼそのままロード ロード後に必要で
    あれば変換

    View Slide

  7. データ連携:ELTのケース
    SaaS
    データ抽出 変換
    DB/S3
    など
    ロード
    DB
    DWH:Redshift, BigQuery, Snowflake, etc…
    データレイク(クラウドストレージ):S3、GCS, etc…
    取得したデータを
    ほぼそのままロード ロード後に必要で
    あれば変換

    View Slide

  8. Amazon AppFlow

    View Slide

  9. Amazon AppFlowでそれが簡単にできる
    https://aws.amazon.com/jp/appflow/faqs/
    公式サイトにて

    View Slide

  10. いろいろなパターンの連携が可能
    データ抽出 変換 ロード
    ・ 面倒なAPI仕様もあまり気にしなくても使える
    ・ SaaS → DWH/S3、 SaaS/File → SaaS がすぐできる
    Amazon Redshift
    Amazon AppFlow

    View Slide

  11. この連携をやってみた
    データ抽出 変換 ロード
    SaaS to DWH、S3への転送に加え、SaaS to SaaS もできる!
    Amazon Redshift

    View Slide

  12. AppFlowで連携後の構成
    Crawler AWS Glue
    Data Catalog
    Amazon S3
    Athena QuickSight
    AWS Glue
    テーブル作成するだけな
    ので初回だけ実行
    連携データ
    BackUp
    Amazon AppFlow

    View Slide

  13. Salesforce to S3
    データソース、送信先の設定は選択形式
    Salesforce ではイベントドリブンでジョブを実行できる
    例)商談データが変更された、リードデータが変更されたなど

    View Slide

  14. Salesforce to S3 (トリガー)
    取込みを自動化したいのでスケジュール実行

    View Slide

  15. Salesforce to S3 (変換)
    • データソースと同期先のフィールドマッピング
    • 取込みデータの妥当性
    • フィルター条件
    • 追加フィールドの取込み
    • 値のマスキング、文字列の切り捨て設定
    ※Salesforceの場合は削除レコードの扱いを設定できた
    以上で設定完了。すぐに始められる。
    言い換えると、複雑なデータパイプラインは作成できない。

    View Slide

  16. AWS Glue クローラー
    Glue でS3に格納したファイルをもとに推論でスキーマ情報をデータカタログに作成してくれる

    View Slide

  17. AWS Glue クローラー
    こっちもGUI 上で選択するだけ。1回の実行でOK

    View Slide

  18. AWS Glue クローラー
    実行後、スキーマ情報を編集できる

    View Slide

  19. Athena で連携データにクエリ
    これでAthena上でクエリできる。
    →CTASで複数データソース(Salesforce と Marketoなど)を結合したテーブルを作成できる

    View Slide

  20. スケジュール実行の場合、古いファイルは退避
    複数回の連携でファイルの中身が重複してしまうので、既存ファイルはどこかに退避すると良い。
    (AWS Batchなどで)

    View Slide

  21. QuickSightで可視化
    データソースにAthenaのテーブルを選択するだけ

    View Slide

  22. QuickSightで可視化
    データは準備できたので可視化するだけ

    View Slide

  23. マルチデータソースでも同じ構成で可視化できる
    Crawler AWS Glue
    Data Catalog
    Amazon S3
    Athena QuickSight
    AWS Glue
    Amazon AppFlow

    View Slide

  24. まとめ
    1.SaaS APIのエンドポイントを熟知しなくても簡単にデータを抜き出せる
    2.AppFlow + Glue クローラー + Athena + QuickSight で、
    SaaS データを可視化できる
    3.データソースが変わっても同じ手法で利用できる
    α.SaaS への連携もできる!(CSV → Salesforce など)

    View Slide

  25. Thank you!

    View Slide