Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon Appflow で Salesforce to Snowflake へのデータロ...
Search
Miyamotok
September 22, 2022
Technology
650
0
Share
Amazon Appflow で Salesforce to Snowflake へのデータローディング(EL)をやってみた / appflow-salesforce-snowflake-dataloading
2022/9/22 JAWS-UG TOHOKU
Miyamotok
September 22, 2022
More Decks by Miyamotok
See All by Miyamotok
[ELTツール×BigQuery] どのAPI使ってる?それぞれのAPIについて調べてみた / elttool-bigquery-which-api
miyamotok
0
580
ノーコード×分析基盤で複数データソースからのデータ収集を楽しようの話 / multi-saas-data-extract
miyamotok
0
400
Amazon Appflow で SaaS データ取込みを自動化してQuickSightで可視化してみた / appflow-salesforce-quicksight
miyamotok
0
6k
AWS Glue を試してみたら、カスタムコネクタのありがたさを感じたこと / awsglue-custom-connector
miyamotok
0
2k
最近使ったETL、ELTサービス(ツール)でデータ収集タスクについて考える / etl-elt-datacollect-task
miyamotok
1
3.3k
_CDataSync_SaaSデータのバックアップ_.pdf
miyamotok
0
1.2k
Other Decks in Technology
See All in Technology
"SQLは書けません"から始まる データドリブン
kubell_hr
2
470
Azure Static Web Apps の自動ビルドがタイムアウトしやすくなった状況に対応した件/global-azure2026
thara0402
0
370
クラウドネイティブな開発 ~ 認知負荷に立ち向かうためのコンテナ活用
literalice
0
110
昔はシンプルだった_AmazonS3
kawaji_scratch
0
320
AI時代 に増える データ活用先
takahal
0
170
AWS Agent Registry の基礎・概要を理解する/aws-agent-registry-intro
ren8k
2
350
AIエージェントの権限管理 1: MCPサーバー・ツールの Fine grained access control 編
ren8k
3
490
AI駆動1on1〜AIに自分を育ててもらう〜
yoshiakiyasuda
0
120
自分のハンドルは自分で握れ! ― 自分のケイパビリティを増やし、メンバーのケイパビリティ獲得を支援する ― / Take the wheel yourself
takaking22
1
840
みんなで作るAWS Tips 100連発 (FinOps編)
schwrzktz
1
280
[OpsJAWS 40]リリースしたら終わり、じゃなかった。セキュリティ空白期間をAWS Security Agentで埋める
sh_fk2
3
220
最近の技術系の話題で気になったもの色々(IoT系以外も) / IoTLT 花見予定会(たぶんBBQ) @都立潮風公園バーベキュー広場
you
PRO
1
220
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4.2k
New Earth Scene 8
popppiees
3
2.1k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
110
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
140
Visualization
eitanlees
150
17k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
130
Rails Girls Zürich Keynote
gr2m
96
14k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
370
A Tale of Four Properties
chriscoyier
163
24k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.3k
Transcript
Amazon Appflow で Salesforce to Snowflake へのデータ ローディング(EL)をやってみた JAWS-UG TOHOKU
- 東北で働くエンジニアでAWSを語る会 #jawsugtohoku 2022/09/22 CData Software Japan 宮本
Amazon Appflow で Salesforce to Snowflake へのデータ ローディング(EL)をやってみた が出来なかった話💦 JAWS-UG
TOHOKU - 東北で働くエンジニアでAWSを語る会 #jawsugtohoku 2022/09/22 CData Software Japan 宮本
先にお伝えします Salesforce の取引先情報をAppflowの簡単な設定でSnowflake にデータローディングするはずが、 Appflow側の設定か何かで出来ませんでした m(__)m
自己紹介 宮本 航太(@miyamon44) CData Software Japan 合同会社 →主にSaaSのAPIにSQLでアクセスできるコネクタや アプリケーションを開発・提供 プロダクトチーム
→データパイプライン関連の問い合わせやサポートを中心に日々 従事。他にはAWSなどのクラウドサービスと自社製品での検証 や技術ブログ、たまにコネクタ開発など色々
なぜAppflow でSalesforce → Snowflake連携を 試そうとしたのか?
仕事柄、こんな問い合わせを受けることがよくあるので・・ その1 「部門毎で管理してるデータ(SaaS,etc)を横断的に可視化したいです!」 「ごりごりのデータ分析基盤構築までは考えてないです!!」 ELTでCloudDWHとかに加工無しデータを持ってくるところからで良さそ うかなーー
仕事柄、こんな問い合わせを受けることがよくあります その2 「GAやFBAdsなどのマーケティング関連のデータを分析したいので、そろそろデータ分 析基盤を置きたいと考えています!」 「けど開発したくないしサーバーとかも管理したくないです!!」 SaaS 系のETLもしくはELTサービスが欲しいんだなーー
仕事柄、こんな問い合わせを受けることがよくあります その3 「Salesforce とかMarketo から顧客・リードデータをDWH上(Snowflake)で分析した いっす!」 「けどアドホックで良いのでなるべくお金を掛けないで実現したいっす!!」 API経由のデータだけどアドホックに簡単に取得できるサービスが欲しい のかな
振り返ると・・・ ELTでCloudDWHとかに加工無しデータを持ってくるところからで良さそ うかなーー SaaS 系のETLもしくはELTサービスが欲しいんだなーー API経由のデータだけどアドホックに簡単に取得できるサービスが欲しい のかな
Amazon Appflow でも良いんじゃない?
Amazon Appflow
Amazon Appflow is なに? SaaS データを中心としたデータ連携(転送?)サービス
データソースコネクタ 結構ニーズがありそうなコネクタが揃っている! (個人的には汎用系コネクタあるとなお嬉しかった)
ディスティネーションコネクタ SaaS → S3 というパターンから、 SaaS → Cloud DWH SaaS
→ SaaS までもできる 例えば、、、 Zendesk でチャット対応したユーザーの情報をSalesforce に 書き込む 例えば、、、 Salesforce、Marketo のユーザー情報をSnowflake で統合すると か
Amazon Appflow is ETLか? ELTか?
Amazon Appflow is ETLか? ELTか? ## ETL
Amazon Appflow is ETLか? ELTか? ## ELT
Amazon Appflow is ETLか? ELTか? ## ELT
Amazon Appflow is ETLか? ELTか? Appflow内で行える変換機能 - データソースと同期先のフィールドマッピング - 取込みデータの妥当性
- フィルター条件 - 追加フィールドの取込み - 値のマスキング、文字列の切り捨て設定 ※Salesforceの場合は削除レコードの扱いを設定できた 基本的にはデータをそのまま送信先に転送するELTサービス
Salesforce → Snowflake を試してみた (冒頭でもお伝えしましたが) Salesforce の取引先情報をSnowflake に変換なしでそのまま連携。 構成はこんなシンプルな感じに自動連携を。
Salesforce → Snowflake を試してみた ちなみにAppflow のSnowflake への接続設定を確認すると、間に外部ステージとして S3 を挟むこ とがわかった
Salesforce の接続設定 OAuth での認証で接続
Snowflake の接続設定 Snowflake 側から参照するS3へのパスを設定したときのステージ名を 入力する <DB>.<スキーマ名>.<ステージ名>
接続エラー Snowflake からはCOPYコマンドでデータを取得することはできてるものの、 Appflow からはいろいろ試したもの の接続できず、、、 頼みの綱のログも出なかったので万事休す、、、 誰かこのエラーの対処方法わかる方いたら教えてホシイデス・・・_ | ̄|◦
仕切り直しで構成変更 (ノーコード感は薄くなるが…) Salesforce から S3 にデータをCSV出力し、それを定期的に Snowflake の COPYコマンドで取得 する方法に切り替え
S3 への接続設定 オンデマンド、スケジュール実行が選べ る
Appflow のフローが作成完了
Appflow の実行 Appflow のフローが正常終了 - S3にフロー名のフォルダが作成される - 実行単位でフォルダが分けられる - 実行日時付きのファイルが作成される
Snowflake 側からS3 のデータを取りに行く Snowflake 側でやること - 連携用テーブル作成 - COPYコマンドを実行 -
COPYコマンドを実行するタスクをスケジューリング化
ようやく Snowflake 側にSalesforce のデータを定期的に取得することができました! ちなみに1度ロードしたS3のファイルは次回からは読まないようになってたのは 個人的な発見でした
まとめ - (色々ありましたが)ELTのデータローディング部分ではAppflow は手軽に試せる! 特にAPIを意識しているビジネスサイドの方におすすめ - Appflow のSnowflake 連携はきっと簡単なはず! しかし世の中の数人くらいは同じエラーに遭遇するかも?
- HTTPリクエストを指定できる汎用系コネクタか、DB系コネクタがあると嬉しい - ログ系がもう少し簡単に確認できると更に嬉しい 特にデータソースへの生のリクエストとレスポンスなど見れると安心
最後に エンジニアメンバー募集中です!! ビビッときた方!まずは気軽に話でもしてみませんか?? https://www.wantedly.com/companies/cd ata2/projects
Thank you!!