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
Snowflake DCR
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
fkd
August 29, 2023
Technology
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Snowflake DCR
Snowflake DCR(Data Clean Room)の紹介
fkd
August 29, 2023
More Decks by fkd
See All by fkd
Snowflake Cortex LLM関数のいろんなモデルを試せるチャットボットを作ってみた
fkd
0
24
Snowflakeでダミーデータを作ろう
fkd
0
170
PDFファイルからデータを抜き出してテーブルに入れてみた
fkd
0
790
Other Decks in Technology
See All in Technology
チームで実践する AI-DLC 思考の軌跡を残すチェックポイント設計
belongadmin
0
3.1k
製造業のクラウド活用最適解〜AI,DXを加速するデータ基盤の作り方〜
hamadakoji
0
420
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
590
noUncheckedIndexedAccess、3時間、1万円。 / noUncheckedIndexedAccess, 3 Hours, 10,000 JPY.
kaonavi
1
340
NAB Show 2026 動画技術関連レポート / NAB Show 2026 Report
cyberagentdevelopers
PRO
0
130
Claude Code×Terraform IaC テンプレート駆動開発
itouhi
1
460
Databricks における 生成AIガバナンスの実践
taka_aki
1
360
protovalidate-es を導入してみた
bengo4com
0
160
DevOps Agentで始めるAWS運用 〜フロンティアエージェントが変える運用の現場〜
nyankotaro
1
350
Reliability in the Age of AI: Engineering for AI Velocity
rrreeeyyy
0
110
LLMと共に進化するプロセスを目指して
ymatsuwitter
12
3.8k
Claude Code の Sandbox 機能を Anthropic Sandbox Runtime(srt) で試そう!/lets-play-anthropic-sandbox-runtime
tomoki10
1
390
Featured
See All Featured
Design in an AI World
tapps
1
230
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
290
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
720
Facilitating Awesome Meetings
lara
57
7k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
240
Transcript
Snowflake DCRの紹介 Snowflakeで実現するDCR(Data Clean Room)
自己紹介 名前 : 福田陽一 会社 : KDDIアジャイル開発センター株式会社 (KAG)
役職 : Infrastructure Engineer / Application Engineer プロフィール 2023年4月 KAG入社。 前職、前々職からKDDI関係の業務で関わりがあった。 現在はData Clean Roomの開発に従事。
SnowflakeのDCR (Data Clean Room) データクリーンルーム データシェアリング | セキュアに結合 | クエリ制限
パーティ A Bにはデータを 公開しない形で 分析したい パーティ B Aにはデータを 公開しない形で 分析したい 共有データ 簡単に大量データをセキュアに共有 共有されたデータはストレージを消費しない 安心・安全な環境で分析できる データを提供するパーティ = プロバイダー データを提供してもらうパーティ = コンシューマー
SnowflakeのDCR (サンプル) Quick Startで紹介されている Build A Data Clean
Room in Snowflake – Advanced https://quickstarts.snowflake.com/guide/build_a_data_clean_room_in_snowflake_advanced/ Github (v5.5) https://github.com/Snowflake-Labs/sfquickstart-data-clean-room 簡単に作成できる DCR SETUP ASSISTANT https://snowflake-labs-sfquickstart-data-cle-dcr-setup-assistant-bkx7gg.streamlit.app/ DCRに必要なオブジェクトを作成するためのsqlを生成してくれる
DCR (サンプル) の作成〜実行まで Snowflakeアカウント(Enterprise以上)を2つ準備 同じクラウドサービス・同じリージョンのアカウント 事前にAnacondaの規約に同意
Quick Startの2、3 を実施する DCR SETUP ASSISTANTを使ってスクリプト(sql)を生成 sqlをSnowflake上で実行 Quick Startの5 を実施する デモ (サンプルシナリオ)を実行
特徴 Snowflakeの機能だけでDCRを実現できる ユーザ定義関数(UDF) (Python, Jinja) クエリテンプレートからクエリを生成
ストアドプロシージャ(JavaScript) クエリの許可を依頼、依頼を受けてクエリを検証〜許可判定 Stream / Task クエリの許可依頼を検出、クエリの検証〜許可プロセスの実行 共有(Direct Share) パーティ間でオブジェクトをシェア 行アクセスポリシー 許可済みクエリの判定
クエリテンプレート〜クエリの承認 あらかじめパーティ間で協議して実行してもいいクエリを決める 実行してもいいクエリをテンプレート化する カラム、テーブルの組み合わせ 結合やグループ化の条件、統計化の強制
クエリテンプレートをDCRに登録する (プロバイダー) クエリテンプレートの範疇で実行したいクエリを作成し、 クエリの許可を求める (コンシューマー → プロバイダー) 許可された後は、そのクエリを実行できる様になる (コンシューマー) プロバイダー コンシューマー
共有 プロバイダー、コンシューマー間でシェアする 分析データ 他パーティに共有してもよいデータ 掛け合わせたいデータ
プロバイダーからコンシューマーにシェアする DCRの機能を実現するためのデータ クエリテンプレート、リクエストログ等 プロバイダー、コンシューマーの双方向でシェアする プロバイダー コンシューマー プロバイダー
行アクセスポリシー 本来は… クエリ結果で返す行を決定する 見せたくないデータは除外されて結果が返る DCRでは…
実行されたクエリが許可されているかどうかを判定する 実行したクエリが許可されたクエリである場合のみ結果が返る ポイント クエリテキストが完全一致した場合のみ結果が返る 許可されていないクエリが実行されると何も結果が返らない コンシューマー コンシューマー プロバイダー
より安心・安全なDCRに向けた工夫の例 細かいロール設計 各パーティ内で登場人物と役割を細かく定義 人が使うロール、システムが使うロールを分けて定義 自パーティに対しても行アクセスポリシーでクエリを制限
自社所有のデータであっても、好き勝手にデータを見れない様に制御 ACCOUNTADMINの利用制限 デフォルトではACCOUNTADMINは誰も利用できない状態 一時的に上位ロールの使用を許可するストアドプロシージャを作成 参考 : https://medium.com/snowflake/managing-elevated-access-in-snowflake-just-enough-just-in-time-418fcdad7929 権限が利用できる時間を指定、自分で自分に対して権限付与ができない様に制御 ロギング SnowflakeデータベースにあるACCOUNT_USAGEのバックアップを作成して永続化を実現 Taskで定期的にコピー、規定の保存期間が終了したら削除