SlideShare a Scribd company logo
速いだけじゃない!
Snowflakeを使ったプロダクトのリアルな話
インテージテクノスフィア
川口 / 張替 / 綾小路
SnowVillageライブ
2
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
自己紹介
川口 真
かわぐち まこと
✓ 2001年入社
✓ 最初はWeb開発から
✓ サーバーやDBなどのチューニング・ト
ラブルシューティングや、製品・技術
選定などを行う技術統括部門で色
々学ぶ
✓ 所属:株式会社インテージテクノスフィア
✓ 部署:リサーチテクノロジー本部
✓ 業務:主にインテージ向けシステムの開発
張替 裕矢
はりがえ ゆうや
✓ 2011年入社
✓ 配送系業務システム運用保守を
担当し、その後グループ向けパネル
集計運用保守、小売店POS集計
分析開発に従事
✓ 現在は全国小売店パネル調査の
集計システム開発
綾小路 法孝
あやのこうじ のりたか
✓ 2013年入社
✓ 入社以来、グループ向けパネル集
計開発運用保守に従事
✓ 現在は全国小売店パネル調査の
集計システム開発
6
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
インテージグループは「生活者を最もよく知る企業」
日本市場で最も信頼される
「売上 No.1」
最近ニュースでよく見る混雑統計
日本最大のリサーチデータ、リサーチプラットフォームを揃え 「どの商品がいつからどのくらい売れているのか」「どんな人が
買っているのか」など、市場推移やブームの兆しなど、生活者を360°理解できるデータ・幅広く深い生活者インサイトを提供し、
クライアント企業様や報道機関各社様のCMや番組、記事の中でご活用いただいています。
約4,000店
日本最大規模
50,000人
7
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
Snowflakeとの出会い
 再会は2019年夏(実は2017年に一度出会っていた)
 2つのパワーワード
✓ Unlimited Performance
✓ Near Zero Management
 しかしこのアーキテクチャならば…という希望
←実はめちゃくちゃ疑っていた!
今日のお話は、これまでの地味だけどリアルな
Snowflakeを使ったプロダクト開発のお話をお届けします
 やってみた→圧倒的だった!
 東京リージョンも爆誕→即採用!
 そこから約1年半・・・諸々ありましたが、ようやくひと段落つき今に至る
8
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
本日、お話しすること
 Snowflakeは運用の手間がほとんどかからない
✓ リアルな話#1 Cloneでスマートなデータ公開
 AWSやアプリの運用のなかでSnowflakeをどう使っているか
✓ リアルな話#2 Snowflakeを使ったDynamoDBのログ分析
✓ リアルな話#3 Snowsightを使ったSnowflakeの監視
✓ リアルな話#4 高負荷に備えた、ウェアハウスのクラスター数の変更
 Snowflakeのチューニング
✓ リアルな話#5 ウェアハウスはかなりの台数使い分けてる
✓ リアルな話#6 クラスタリングキーとクエリプロファイルを活用しよう
9
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
ターゲットとなるプロダクト
「パネルデータ提供分析システム」の大規模リニューアル
ポイント①
より広く、より精度の高いデータへ
ポイント②
市場変化に対応可能な設計へ
・収集されるデータがさらに多く
・データ粒度もさらに細かく
・ロジックがより複雑に
・高頻度でデータ更新
この要件をクリアできる「集計エンジン」を
構築することが我々のチャレンジ
ポイント③
求められる高い性能要件
・FMCGのお客様が公開日めがけて一気
にアクセスしてくる
10
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
大まかなシステム構成
集計システム
集計エンジン
顧客提供
システム
・
・
・
API
タスク
タスク
タスク
お客様 販売店
集計用データ
や各種マスタ
参照 更新
EDI基盤
基幹システム
確定処理
処理A
処理B
処理X
・
・
・
参照処理が最大のターゲットで、
全体の9割以上を占める
ここが我々のスコープ
社内提供
システム
営業・アナリスト
キュー
13
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#1:Cloneでスマートなデータ公開
 要件:データ公開はトリガーにより行われる
✓ スキーマのBlue/Green
✓ さらにBASEとなるスキーマを準備
• 最新データは常にBASEにロードしていく
• なぜならばTime Travelを利用したいから
→BASEを参照すればどの時点にでも遡れる
✓ 最新データのロード(COPY)はBASEへ
✓ BASEからBlue/GreenへはCloneで瞬時に
BASE
集計
エンジン
BASE
集計
エンジン
BASE
集計
エンジン
最新データ
公開中
1世代前
最新データ
公開中
公開前最新
1世代前
公開中
CLONE
CLONE
①公開中状態
②最新データロード
③公開トリガー
COPY
COPY
✓ CloneとTime Travelで安定のデータ運用
✓ 原則守ればロードもすごく速い
14
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#2:Snowflakeを使ったDynamoDBのログ分析
 現状、集計ログをDynamoへ格納している
 Dynamoにいれたままでは分析しにくい
 Snowflakeだと半構造化データ(Json)の分析もしやすい (クエリも直感的
 Snowpipeを用いて、DynamoのデータをSnowflakeへ
 1日あたりの集計数などredashで可視化
Snowpipe
DynamoDB Lambda S3 redash
15
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#3:Snowsightを使ったSnowflakeの監視
 Snowsight
✓ 現在のSQLワークシートに代わるものでダッシュボードの作成が可能
 集計ログとQUERY_HISTORYを使って、全体の処理時間の詳細な内訳を可視化
✓ QUERY_HISTORY : Snowflakeクエリ履歴
✓ クエリのコンパイル時間、ウェアハウスキューでの待ち時間など
✓ クエリタグ:クエリに付与できるタグでクエリのグルーピング可能
✓ クエリタグに集計ログのUIDを付与し、結合キーとする
✓ ウェアハウスのモニターをより詳細に
 あれ、ちょっと遅いなというときに確認する → ボトルネックがわかる
16
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#4:高負荷に備えた、ウェアハウスのクラスター数の変更
 基本はSnowflakeのオートスケーリングにお任せ
 負荷の高い時間帯に備えたい
✓ 新しいデータが公開されるタイミングで集計が一気に増える
 クラスタがスケールアウトする時間をできるだけ避けたい
 事前にクラスター数のMin/Maxを上げる
✓ Minのクラスター数が3である場合、3クラスターでresume
CloudWatchEvent Lambda
Snowflake
ALTER WAREHOUSE XXX
SET MIN_CLUSTER_COUNT = YYY,
MAX_CLUSTER_COUNT = ZZZ;
17
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
本日、お話しすること
 Snowflakeは運用の手間がほとんどかからない
✓ リアルな話#1 Cloneでスマートなデータ公開
 AWSやアプリの運用のなかでSnowflakeをどう使っているか
✓ リアルな話#2 Snowflakeを使ったDynamoDBのログ分析
✓ リアルな話#3 Snowsightを使ったSnowflakeの監視
✓ リアルな話#4 高負荷に備えた、ウェアハウスのクラスター数の変更
 Snowflakeのチューニング
✓ リアルな話#5 ウェアハウスはかなりの台数使い分けてる
✓ リアルな話#6 クラスタリングキーとクエリプロファイルを活用しよう
18
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
プロダクト開発初期の課題
 数年間分のトランザクションデータの分析が頻繁に行われる
✓ 1本あたりの速度は速いが、スキャンコストだけでNG
✓ 同時実行数が増えると1本当たりの速度が大幅に落ち込んでしまったり・・・
 現行の分析機能担保のため処理が複雑になる
✓ アドホックな分析なので、ほぼ同じクエリになることがない
✓ キャッシュも効きにくい
同時実行数と1集計あたりの速度を
どのように担保するのかが大きな課題
19
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
Snowflakeの登場
 データ構造、テーブル設計、クエリも変えずに性能検証を実施
✓ やったこと
• コネクタ入れ替え
• データをシンガポールリージョンSnowflakeへロード
集計システム
集計エンジン
性能検証
セット
・
・
・
API
タスク
タスク
タスク
参照
他社
DWH
参照
Snow
flake
スループット(1時間あたりの処理可能本数)が
3~4倍
ほぼほぼ目標達成!
1本当たりの処理時間も
3~4倍程度高速に!
20
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
しかし
←高速 処理速度 低速→
現行
高負荷時
Snowflake
同時10実行
Snowflake
高負荷時想定
高負荷時の処理時間を
全体的に短くしたい
21
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#5:ウェアハウスはかなりの台数使い分けてる
 本番系で30ウェアハウス程度
✓ タグやWebUIのフィルタ欲しい…
 マルチクラスタウェアハウスを複数並べて負荷分散
✓ 1ウェアハウス10クラスタでも足りない
✓ クラスタ数多くするとCloudServicesの負荷増加
✓ ウェアハウス横に並べたほうが性能出る!
 1ユーザーあたりのセッション数に注意
✓ デフォルトで最大50
✓ ストレージとコンピュートの分離の恩恵をモロに享受
✓ ウェアハウスどんどん利用すべし(コストには注意)
Storage Layer
集計エンジン
…
…
… …
…
1サービスのためのウェアハウス群
多数の集計処理(クエリ)
22
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#5:ウェアハウスはかなりの台数使い分けてる
 同時実行数と処理速度のスウィートスポット(最適解)を見つけよう
✓ WHを最大10WH用意してワークロードの検証
✓ 1WH内のクラスター数も1~10とし、それぞれで同時実行数もコントロール
23
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
しかし
もう一息!
24
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
 Snowflakeの最大のメリットであるマイクロパーティショニングやナチュラルクラスタリングによ
って何も考えずに速度は速い
 ただし、DMLによってクラスタリング具合が理想的でなかったり、実行速度が遅くなってきて
しまった場合には、クラスタリングキーを指定するとよい!
✓ フィルタリング述語でデータスキャン効率向上したり
✓ 列圧縮向上でデータ量減ったり
✓ ただし、自動クラスタリングが実行されるとその分のクレジットがかかることも注意
✓ Snowflakeのクラスタリングキー推奨は以下
• 選択フィルターで最もアクティブに使用されるクラスタ列
• 結合述語で使用される列も検討するとよい
https://docs.snowflake.com/ja/user-guide/tables-clustering-keys.html#what-is-a-clustering-key
25
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
 クエリプロファイルを見よう
✓ これまで
26
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
 クエリプロファイルを見よう
✓ これまで
トランザクションデータの
スキャンが一番のネック
27
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
 ざっくりの1リクエスト中クエリの流れ
✓ 販売実績データをファクトデータとして、商品属性や店舗属性のマスタのディメンジョンを結合しサマリーす
るよくあるスタースキーマ
✓ その後にクロス表作成したりトレンド表作成したり特殊な処理したりしてます
販売実績データ
販売日
店舗コード
商品コード
金額
個数
商品マスタ
商品コード
商品名称
商品属性コード
商品属性名称
店舗マスタ
店舗コード
店舗名称
店舗属性コード
店舗属性名称
28
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
 クラスタリングキー戦略
✓ これまで販売日の列へクラスタリングキーを指定していた
• 日付でデータをフィルターすることが多いため
• しかし、再三述べている通り、それなりのスキャン量が要求される
✓ 集計リクエスト処理内訳の大部分が、トランザクションデータをスキャン
• ∵ユーザーは数年間の集計をするのがよくある集計
✓ Snowflakeサポートの方々からのアドバイス
• 「商品コード, 販売日でクラスタリングキーを指定してはどうか?」
• =結合述語で頻繁に使用される列でのクラスタリング
• 商品マスタはユーザーごとにカスタマイズされた商品マスタ
• 飲料系市場と雑貨系市場ではスキャンしたいデータ異なる
• 盲点でした。。。
29
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
 結合述語をクラスタリングキーに指定したときのざっくりスキャンイメージ
販売日のWHERE句のみで
スキャン
結合述語でフィルターした
場合のスキャン
スキャンに関わる
コストが下げられる
30
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
 クエリプロファイルを見よう
✓ 今
31
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
 左:これまで(全体で37秒) 右:今(全体で28秒)
32
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
目標達成
謝謝
33
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう
 基本的には速いので何も考えなくてよいです
 同時実行数が求められる場合
✓ WH数の調整を検討(分析・ロードを分けるだけでなく様々なロールで考えられるのもよい)
✓ クラスター数の調整を検討
✓ WHのサイズの調整を検討
 1本当たりの処理速度が求められる場合
✓ クエリプロファイルとにらめっこしてボトルネックを特定する😇
✓ WHのサイズ調整を検討
✓ クラスタリングキーを検討
• 業務要件やクエリによっては劇的に速くなる可能性も秘めています
34
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.
本日のおさらい
 基本的にはSnowflakeに全てお任せで無問題
✓ 何もしなくても普通に速い
✓ 運用の手間がほとんどかからない
✓ とりあえずデータ突っ込んでおけばいい感じにやってくれる
✓ マイクロパーティション最高!
 その一歩先を目指す場合でも、Snowflakeならそれを可能にする懐の深さがある
✓ 「コレやれたら良いなぁ」と思ったことが実現できる
Snowflakeで新たな世界へ一歩踏み出してみませんか?
38
Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.

More Related Content

What's hot

The Basics of MongoDB
The Basics of MongoDBThe Basics of MongoDB
The Basics of MongoDB
valuebound
 
IBM Cloud Pak for Integration with Confluent Platform powered by Apache Kafka
IBM Cloud Pak for Integration with Confluent Platform powered by Apache KafkaIBM Cloud Pak for Integration with Confluent Platform powered by Apache Kafka
IBM Cloud Pak for Integration with Confluent Platform powered by Apache Kafka
Kai Wähner
 
NewSQL - The Future of Databases?
NewSQL - The Future of Databases?NewSQL - The Future of Databases?
NewSQL - The Future of Databases?
Elvis Saravia
 
Tibco streaming analytics overview and roadmap
Tibco streaming analytics overview and roadmapTibco streaming analytics overview and roadmap
Tibco streaming analytics overview and roadmap
Lou Bajuk
 
Bitrix24 Presentation
Bitrix24 PresentationBitrix24 Presentation
Bitrix24 Presentation
Bitrix, Inc.
 
Power bi notes
Power bi notesPower bi notes
Power bi notes
anilkotha1
 
Web Development Company PPT Presentation - Vidushi Infotech
Web Development Company PPT Presentation - Vidushi InfotechWeb Development Company PPT Presentation - Vidushi Infotech
Web Development Company PPT Presentation - Vidushi Infotech
Vidushi Infotech SSP Pvt Ltd
 
When to Use MongoDB
When to Use MongoDBWhen to Use MongoDB
When to Use MongoDB
MongoDB
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
MongoDB
 
(BDT317) Building A Data Lake On AWS
(BDT317) Building A Data Lake On AWS(BDT317) Building A Data Lake On AWS
(BDT317) Building A Data Lake On AWS
Amazon Web Services
 
The Real Cost of Slow Time vs Downtime
The Real Cost of Slow Time vs DowntimeThe Real Cost of Slow Time vs Downtime
The Real Cost of Slow Time vs Downtime
Radware
 
Projektmanagement: Das Wissen für eine erfolgreiche Karriere (Bruno Jenny): L...
Projektmanagement: Das Wissen für eine erfolgreiche Karriere (Bruno Jenny): L...Projektmanagement: Das Wissen für eine erfolgreiche Karriere (Bruno Jenny): L...
Projektmanagement: Das Wissen für eine erfolgreiche Karriere (Bruno Jenny): L...
vdf Hochschulverlag AG
 
Apache HBase Improvements and Practices at Xiaomi
Apache HBase Improvements and Practices at XiaomiApache HBase Improvements and Practices at Xiaomi
Apache HBase Improvements and Practices at Xiaomi
HBaseCon
 
OracleStore: A Highly Performant RawStore Implementation for Hive Metastore
OracleStore: A Highly Performant RawStore Implementation for Hive MetastoreOracleStore: A Highly Performant RawStore Implementation for Hive Metastore
OracleStore: A Highly Performant RawStore Implementation for Hive Metastore
DataWorks Summit
 
Project Presentation on Data WareHouse
Project Presentation on Data WareHouseProject Presentation on Data WareHouse
Project Presentation on Data WareHouse
Abhi Bhardwaj
 
Functional and non functional application logging
Functional and non functional application loggingFunctional and non functional application logging
Functional and non functional application logging
Sander De Vos
 
What is ETL testing & how to enforce it in Data Wharehouse
What is ETL testing & how to enforce it in Data WharehouseWhat is ETL testing & how to enforce it in Data Wharehouse
What is ETL testing & how to enforce it in Data Wharehouse
BugRaptors
 
Iso 717-1-2020
Iso 717-1-2020Iso 717-1-2020
Iso 717-1-2020
ecmaida
 
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
Amazon Web Services
 
Data warehouse architecture
Data warehouse architectureData warehouse architecture
Data warehouse architecture
pcherukumalla
 

What's hot (20)

The Basics of MongoDB
The Basics of MongoDBThe Basics of MongoDB
The Basics of MongoDB
 
IBM Cloud Pak for Integration with Confluent Platform powered by Apache Kafka
IBM Cloud Pak for Integration with Confluent Platform powered by Apache KafkaIBM Cloud Pak for Integration with Confluent Platform powered by Apache Kafka
IBM Cloud Pak for Integration with Confluent Platform powered by Apache Kafka
 
NewSQL - The Future of Databases?
NewSQL - The Future of Databases?NewSQL - The Future of Databases?
NewSQL - The Future of Databases?
 
Tibco streaming analytics overview and roadmap
Tibco streaming analytics overview and roadmapTibco streaming analytics overview and roadmap
Tibco streaming analytics overview and roadmap
 
Bitrix24 Presentation
Bitrix24 PresentationBitrix24 Presentation
Bitrix24 Presentation
 
Power bi notes
Power bi notesPower bi notes
Power bi notes
 
Web Development Company PPT Presentation - Vidushi Infotech
Web Development Company PPT Presentation - Vidushi InfotechWeb Development Company PPT Presentation - Vidushi Infotech
Web Development Company PPT Presentation - Vidushi Infotech
 
When to Use MongoDB
When to Use MongoDBWhen to Use MongoDB
When to Use MongoDB
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
(BDT317) Building A Data Lake On AWS
(BDT317) Building A Data Lake On AWS(BDT317) Building A Data Lake On AWS
(BDT317) Building A Data Lake On AWS
 
The Real Cost of Slow Time vs Downtime
The Real Cost of Slow Time vs DowntimeThe Real Cost of Slow Time vs Downtime
The Real Cost of Slow Time vs Downtime
 
Projektmanagement: Das Wissen für eine erfolgreiche Karriere (Bruno Jenny): L...
Projektmanagement: Das Wissen für eine erfolgreiche Karriere (Bruno Jenny): L...Projektmanagement: Das Wissen für eine erfolgreiche Karriere (Bruno Jenny): L...
Projektmanagement: Das Wissen für eine erfolgreiche Karriere (Bruno Jenny): L...
 
Apache HBase Improvements and Practices at Xiaomi
Apache HBase Improvements and Practices at XiaomiApache HBase Improvements and Practices at Xiaomi
Apache HBase Improvements and Practices at Xiaomi
 
OracleStore: A Highly Performant RawStore Implementation for Hive Metastore
OracleStore: A Highly Performant RawStore Implementation for Hive MetastoreOracleStore: A Highly Performant RawStore Implementation for Hive Metastore
OracleStore: A Highly Performant RawStore Implementation for Hive Metastore
 
Project Presentation on Data WareHouse
Project Presentation on Data WareHouseProject Presentation on Data WareHouse
Project Presentation on Data WareHouse
 
Functional and non functional application logging
Functional and non functional application loggingFunctional and non functional application logging
Functional and non functional application logging
 
What is ETL testing & how to enforce it in Data Wharehouse
What is ETL testing & how to enforce it in Data WharehouseWhat is ETL testing & how to enforce it in Data Wharehouse
What is ETL testing & how to enforce it in Data Wharehouse
 
Iso 717-1-2020
Iso 717-1-2020Iso 717-1-2020
Iso 717-1-2020
 
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
Amazon Aurora Storage Demystified: How It All Works (DAT363) - AWS re:Invent ...
 
Data warehouse architecture
Data warehouse architectureData warehouse architecture
Data warehouse architecture
 

Similar to 20210421 snow villagelive(intage technosphere)

Oracle database performance monitoring diagnosis and reporting with EG Innova...
Oracle database performance monitoring diagnosis and reporting with EG Innova...Oracle database performance monitoring diagnosis and reporting with EG Innova...
Oracle database performance monitoring diagnosis and reporting with EG Innova...
eG Innovations
 
Application Logging for fun and profit. Houston TechFest 2012
Application Logging for fun and profit.  Houston TechFest 2012Application Logging for fun and profit.  Houston TechFest 2012
Application Logging for fun and profit. Houston TechFest 2012
Jane Prusakova
 
Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and Jenkins
SOASTA
 
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
Mike Brittain
 
Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and Jenkins
SOASTA
 
Accelerating Apache Spark-based Analytics on Intel Architecture-(Michael Gree...
Accelerating Apache Spark-based Analytics on Intel Architecture-(Michael Gree...Accelerating Apache Spark-based Analytics on Intel Architecture-(Michael Gree...
Accelerating Apache Spark-based Analytics on Intel Architecture-(Michael Gree...
Spark Summit
 
Ingesting Click Data for Analytics
Ingesting Click Data for AnalyticsIngesting Click Data for Analytics
Ingesting Click Data for Analytics
ClickMeter
 
Ingesting click events for analytics
Ingesting click events for analyticsIngesting click events for analytics
Ingesting click events for analytics
Data Driven Innovation
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
Novell
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
Novell
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
Novell
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
Novell
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
Novell
 
Dev ops tutorial for beginners what is devops & devops tools
Dev ops tutorial for beginners what is devops & devops toolsDev ops tutorial for beginners what is devops & devops tools
Dev ops tutorial for beginners what is devops & devops tools
JanBask Training
 
Achieve Performance Testing Excellence for Your SAP Apps
Achieve Performance Testing Excellence for Your SAP AppsAchieve Performance Testing Excellence for Your SAP Apps
Achieve Performance Testing Excellence for Your SAP Apps
Neotys
 
Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)
avitale1998
 
2009 05 21 The Lean Startup At SIPA
2009 05 21 The Lean Startup At SIPA2009 05 21 The Lean Startup At SIPA
2009 05 21 The Lean Startup At SIPA
Eric Ries
 
2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition
Eric Ries
 
pinku_resume
pinku_resumepinku_resume
pinku_resume
pinku kumar
 
Nagios Conference 2014 - Sean Falzon - Nagios as a PC Health Monitor
Nagios Conference 2014 - Sean Falzon - Nagios as a PC Health MonitorNagios Conference 2014 - Sean Falzon - Nagios as a PC Health Monitor
Nagios Conference 2014 - Sean Falzon - Nagios as a PC Health Monitor
Nagios
 

Similar to 20210421 snow villagelive(intage technosphere) (20)

Oracle database performance monitoring diagnosis and reporting with EG Innova...
Oracle database performance monitoring diagnosis and reporting with EG Innova...Oracle database performance monitoring diagnosis and reporting with EG Innova...
Oracle database performance monitoring diagnosis and reporting with EG Innova...
 
Application Logging for fun and profit. Houston TechFest 2012
Application Logging for fun and profit.  Houston TechFest 2012Application Logging for fun and profit.  Houston TechFest 2012
Application Logging for fun and profit. Houston TechFest 2012
 
Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and Jenkins
 
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
 
Continuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and JenkinsContinuous Load Testing with CloudTest and Jenkins
Continuous Load Testing with CloudTest and Jenkins
 
Accelerating Apache Spark-based Analytics on Intel Architecture-(Michael Gree...
Accelerating Apache Spark-based Analytics on Intel Architecture-(Michael Gree...Accelerating Apache Spark-based Analytics on Intel Architecture-(Michael Gree...
Accelerating Apache Spark-based Analytics on Intel Architecture-(Michael Gree...
 
Ingesting Click Data for Analytics
Ingesting Click Data for AnalyticsIngesting Click Data for Analytics
Ingesting Click Data for Analytics
 
Ingesting click events for analytics
Ingesting click events for analyticsIngesting click events for analytics
Ingesting click events for analytics
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
 
Run Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin OrchestrateRun Book Automation with PlateSpin Orchestrate
Run Book Automation with PlateSpin Orchestrate
 
Dev ops tutorial for beginners what is devops & devops tools
Dev ops tutorial for beginners what is devops & devops toolsDev ops tutorial for beginners what is devops & devops tools
Dev ops tutorial for beginners what is devops & devops tools
 
Achieve Performance Testing Excellence for Your SAP Apps
Achieve Performance Testing Excellence for Your SAP AppsAchieve Performance Testing Excellence for Your SAP Apps
Achieve Performance Testing Excellence for Your SAP Apps
 
Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)Process Project Mgt Seminar 8 Apr 2009(2)
Process Project Mgt Seminar 8 Apr 2009(2)
 
2009 05 21 The Lean Startup At SIPA
2009 05 21 The Lean Startup At SIPA2009 05 21 The Lean Startup At SIPA
2009 05 21 The Lean Startup At SIPA
 
2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition2009 06 01 The Lean Startup Texas Edition
2009 06 01 The Lean Startup Texas Edition
 
pinku_resume
pinku_resumepinku_resume
pinku_resume
 
Nagios Conference 2014 - Sean Falzon - Nagios as a PC Health Monitor
Nagios Conference 2014 - Sean Falzon - Nagios as a PC Health MonitorNagios Conference 2014 - Sean Falzon - Nagios as a PC Health Monitor
Nagios Conference 2014 - Sean Falzon - Nagios as a PC Health Monitor
 

More from INTAGEGROUP

インテージテクノスフィア会社紹介_202301.pptx
インテージテクノスフィア会社紹介_202301.pptxインテージテクノスフィア会社紹介_202301.pptx
インテージテクノスフィア会社紹介_202301.pptx
INTAGEGROUP
 
ITSP_JTUG_2210_SponsorSession.pdf
ITSP_JTUG_2210_SponsorSession.pdfITSP_JTUG_2210_SponsorSession.pdf
ITSP_JTUG_2210_SponsorSession.pdf
INTAGEGROUP
 
BERTを用いた自然言語処理.pdf
BERTを用いた自然言語処理.pdfBERTを用いた自然言語処理.pdf
BERTを用いた自然言語処理.pdf
INTAGEGROUP
 
(インテージテクノスフィア)FY20_技術探究委員会_量子コンピュータ分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_量子コンピュータ分科会活動報告(インテージテクノスフィア)FY20_技術探究委員会_量子コンピュータ分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_量子コンピュータ分科会活動報告
INTAGEGROUP
 
(インテージテクノスフィア)FY20_技術探究委員会_高速分散技術分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_高速分散技術分科会活動報告(インテージテクノスフィア)FY20_技術探究委員会_高速分散技術分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_高速分散技術分科会活動報告
INTAGEGROUP
 
(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告
INTAGEGROUP
 

More from INTAGEGROUP (6)

インテージテクノスフィア会社紹介_202301.pptx
インテージテクノスフィア会社紹介_202301.pptxインテージテクノスフィア会社紹介_202301.pptx
インテージテクノスフィア会社紹介_202301.pptx
 
ITSP_JTUG_2210_SponsorSession.pdf
ITSP_JTUG_2210_SponsorSession.pdfITSP_JTUG_2210_SponsorSession.pdf
ITSP_JTUG_2210_SponsorSession.pdf
 
BERTを用いた自然言語処理.pdf
BERTを用いた自然言語処理.pdfBERTを用いた自然言語処理.pdf
BERTを用いた自然言語処理.pdf
 
(インテージテクノスフィア)FY20_技術探究委員会_量子コンピュータ分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_量子コンピュータ分科会活動報告(インテージテクノスフィア)FY20_技術探究委員会_量子コンピュータ分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_量子コンピュータ分科会活動報告
 
(インテージテクノスフィア)FY20_技術探究委員会_高速分散技術分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_高速分散技術分科会活動報告(インテージテクノスフィア)FY20_技術探究委員会_高速分散技術分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_高速分散技術分科会活動報告
 
(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告
(インテージテクノスフィア)FY20_技術探究委員会_ブロックチェーン分科会活動報告
 

Recently uploaded

哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
insn4465
 
Rainfall intensity duration frequency curve statistical analysis and modeling...
Rainfall intensity duration frequency curve statistical analysis and modeling...Rainfall intensity duration frequency curve statistical analysis and modeling...
Rainfall intensity duration frequency curve statistical analysis and modeling...
bijceesjournal
 
Data Driven Maintenance | UReason Webinar
Data Driven Maintenance | UReason WebinarData Driven Maintenance | UReason Webinar
Data Driven Maintenance | UReason Webinar
UReason
 
Design and optimization of ion propulsion drone
Design and optimization of ion propulsion droneDesign and optimization of ion propulsion drone
Design and optimization of ion propulsion drone
bjmsejournal
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
Madan Karki
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
Prakhyath Rai
 
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by AnantLLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
Anant Corporation
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
KrishnaveniKrishnara1
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
171ticu
 
An improved modulation technique suitable for a three level flying capacitor ...
An improved modulation technique suitable for a three level flying capacitor ...An improved modulation technique suitable for a three level flying capacitor ...
An improved modulation technique suitable for a three level flying capacitor ...
IJECEIAES
 
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
IJECEIAES
 
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
shadow0702a
 
Computational Engineering IITH Presentation
Computational Engineering IITH PresentationComputational Engineering IITH Presentation
Computational Engineering IITH Presentation
co23btech11018
 
Welding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdfWelding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdf
AjmalKhan50578
 
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
ydzowc
 
People as resource Grade IX.pdf minimala
People as resource Grade IX.pdf minimalaPeople as resource Grade IX.pdf minimala
People as resource Grade IX.pdf minimala
riddhimaagrawal986
 
Applications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdfApplications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdf
Atif Razi
 
Null Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAMNull Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAM
Divyanshu
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
Hitesh Mohapatra
 
Seminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptxSeminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptx
Madan Karki
 

Recently uploaded (20)

哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
哪里办理(csu毕业证书)查尔斯特大学毕业证硕士学历原版一模一样
 
Rainfall intensity duration frequency curve statistical analysis and modeling...
Rainfall intensity duration frequency curve statistical analysis and modeling...Rainfall intensity duration frequency curve statistical analysis and modeling...
Rainfall intensity duration frequency curve statistical analysis and modeling...
 
Data Driven Maintenance | UReason Webinar
Data Driven Maintenance | UReason WebinarData Driven Maintenance | UReason Webinar
Data Driven Maintenance | UReason Webinar
 
Design and optimization of ion propulsion drone
Design and optimization of ion propulsion droneDesign and optimization of ion propulsion drone
Design and optimization of ion propulsion drone
 
spirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptxspirit beverages ppt without graphics.pptx
spirit beverages ppt without graphics.pptx
 
Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...Software Engineering and Project Management - Introduction, Modeling Concepts...
Software Engineering and Project Management - Introduction, Modeling Concepts...
 
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by AnantLLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
LLM Fine Tuning with QLoRA Cassandra Lunch 4, presented by Anant
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
 
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样学校原版美国波士顿大学毕业证学历学位证书原版一模一样
学校原版美国波士顿大学毕业证学历学位证书原版一模一样
 
An improved modulation technique suitable for a three level flying capacitor ...
An improved modulation technique suitable for a three level flying capacitor ...An improved modulation technique suitable for a three level flying capacitor ...
An improved modulation technique suitable for a three level flying capacitor ...
 
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...
 
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
Use PyCharm for remote debugging of WSL on a Windo cf5c162d672e4e58b4dde5d797...
 
Computational Engineering IITH Presentation
Computational Engineering IITH PresentationComputational Engineering IITH Presentation
Computational Engineering IITH Presentation
 
Welding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdfWelding Metallurgy Ferrous Materials.pdf
Welding Metallurgy Ferrous Materials.pdf
 
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
原版制作(Humboldt毕业证书)柏林大学毕业证学位证一模一样
 
People as resource Grade IX.pdf minimala
People as resource Grade IX.pdf minimalaPeople as resource Grade IX.pdf minimala
People as resource Grade IX.pdf minimala
 
Applications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdfApplications of artificial Intelligence in Mechanical Engineering.pdf
Applications of artificial Intelligence in Mechanical Engineering.pdf
 
Null Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAMNull Bangalore | Pentesters Approach to AWS IAM
Null Bangalore | Pentesters Approach to AWS IAM
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
 
Seminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptxSeminar on Distillation study-mafia.pptx
Seminar on Distillation study-mafia.pptx
 

20210421 snow villagelive(intage technosphere)

  • 2. 2 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. 自己紹介 川口 真 かわぐち まこと ✓ 2001年入社 ✓ 最初はWeb開発から ✓ サーバーやDBなどのチューニング・ト ラブルシューティングや、製品・技術 選定などを行う技術統括部門で色 々学ぶ ✓ 所属:株式会社インテージテクノスフィア ✓ 部署:リサーチテクノロジー本部 ✓ 業務:主にインテージ向けシステムの開発 張替 裕矢 はりがえ ゆうや ✓ 2011年入社 ✓ 配送系業務システム運用保守を 担当し、その後グループ向けパネル 集計運用保守、小売店POS集計 分析開発に従事 ✓ 現在は全国小売店パネル調査の 集計システム開発 綾小路 法孝 あやのこうじ のりたか ✓ 2013年入社 ✓ 入社以来、グループ向けパネル集 計開発運用保守に従事 ✓ 現在は全国小売店パネル調査の 集計システム開発
  • 3. 6 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. インテージグループは「生活者を最もよく知る企業」 日本市場で最も信頼される 「売上 No.1」 最近ニュースでよく見る混雑統計 日本最大のリサーチデータ、リサーチプラットフォームを揃え 「どの商品がいつからどのくらい売れているのか」「どんな人が 買っているのか」など、市場推移やブームの兆しなど、生活者を360°理解できるデータ・幅広く深い生活者インサイトを提供し、 クライアント企業様や報道機関各社様のCMや番組、記事の中でご活用いただいています。 約4,000店 日本最大規模 50,000人
  • 4. 7 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. Snowflakeとの出会い  再会は2019年夏(実は2017年に一度出会っていた)  2つのパワーワード ✓ Unlimited Performance ✓ Near Zero Management  しかしこのアーキテクチャならば…という希望 ←実はめちゃくちゃ疑っていた! 今日のお話は、これまでの地味だけどリアルな Snowflakeを使ったプロダクト開発のお話をお届けします  やってみた→圧倒的だった!  東京リージョンも爆誕→即採用!  そこから約1年半・・・諸々ありましたが、ようやくひと段落つき今に至る
  • 5. 8 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. 本日、お話しすること  Snowflakeは運用の手間がほとんどかからない ✓ リアルな話#1 Cloneでスマートなデータ公開  AWSやアプリの運用のなかでSnowflakeをどう使っているか ✓ リアルな話#2 Snowflakeを使ったDynamoDBのログ分析 ✓ リアルな話#3 Snowsightを使ったSnowflakeの監視 ✓ リアルな話#4 高負荷に備えた、ウェアハウスのクラスター数の変更  Snowflakeのチューニング ✓ リアルな話#5 ウェアハウスはかなりの台数使い分けてる ✓ リアルな話#6 クラスタリングキーとクエリプロファイルを活用しよう
  • 6. 9 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. ターゲットとなるプロダクト 「パネルデータ提供分析システム」の大規模リニューアル ポイント① より広く、より精度の高いデータへ ポイント② 市場変化に対応可能な設計へ ・収集されるデータがさらに多く ・データ粒度もさらに細かく ・ロジックがより複雑に ・高頻度でデータ更新 この要件をクリアできる「集計エンジン」を 構築することが我々のチャレンジ ポイント③ 求められる高い性能要件 ・FMCGのお客様が公開日めがけて一気 にアクセスしてくる
  • 7. 10 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. 大まかなシステム構成 集計システム 集計エンジン 顧客提供 システム ・ ・ ・ API タスク タスク タスク お客様 販売店 集計用データ や各種マスタ 参照 更新 EDI基盤 基幹システム 確定処理 処理A 処理B 処理X ・ ・ ・ 参照処理が最大のターゲットで、 全体の9割以上を占める ここが我々のスコープ 社内提供 システム 営業・アナリスト キュー
  • 8. 13 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#1:Cloneでスマートなデータ公開  要件:データ公開はトリガーにより行われる ✓ スキーマのBlue/Green ✓ さらにBASEとなるスキーマを準備 • 最新データは常にBASEにロードしていく • なぜならばTime Travelを利用したいから →BASEを参照すればどの時点にでも遡れる ✓ 最新データのロード(COPY)はBASEへ ✓ BASEからBlue/GreenへはCloneで瞬時に BASE 集計 エンジン BASE 集計 エンジン BASE 集計 エンジン 最新データ 公開中 1世代前 最新データ 公開中 公開前最新 1世代前 公開中 CLONE CLONE ①公開中状態 ②最新データロード ③公開トリガー COPY COPY ✓ CloneとTime Travelで安定のデータ運用 ✓ 原則守ればロードもすごく速い
  • 9. 14 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#2:Snowflakeを使ったDynamoDBのログ分析  現状、集計ログをDynamoへ格納している  Dynamoにいれたままでは分析しにくい  Snowflakeだと半構造化データ(Json)の分析もしやすい (クエリも直感的  Snowpipeを用いて、DynamoのデータをSnowflakeへ  1日あたりの集計数などredashで可視化 Snowpipe DynamoDB Lambda S3 redash
  • 10. 15 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#3:Snowsightを使ったSnowflakeの監視  Snowsight ✓ 現在のSQLワークシートに代わるものでダッシュボードの作成が可能  集計ログとQUERY_HISTORYを使って、全体の処理時間の詳細な内訳を可視化 ✓ QUERY_HISTORY : Snowflakeクエリ履歴 ✓ クエリのコンパイル時間、ウェアハウスキューでの待ち時間など ✓ クエリタグ:クエリに付与できるタグでクエリのグルーピング可能 ✓ クエリタグに集計ログのUIDを付与し、結合キーとする ✓ ウェアハウスのモニターをより詳細に  あれ、ちょっと遅いなというときに確認する → ボトルネックがわかる
  • 11. 16 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#4:高負荷に備えた、ウェアハウスのクラスター数の変更  基本はSnowflakeのオートスケーリングにお任せ  負荷の高い時間帯に備えたい ✓ 新しいデータが公開されるタイミングで集計が一気に増える  クラスタがスケールアウトする時間をできるだけ避けたい  事前にクラスター数のMin/Maxを上げる ✓ Minのクラスター数が3である場合、3クラスターでresume CloudWatchEvent Lambda Snowflake ALTER WAREHOUSE XXX SET MIN_CLUSTER_COUNT = YYY, MAX_CLUSTER_COUNT = ZZZ;
  • 12. 17 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. 本日、お話しすること  Snowflakeは運用の手間がほとんどかからない ✓ リアルな話#1 Cloneでスマートなデータ公開  AWSやアプリの運用のなかでSnowflakeをどう使っているか ✓ リアルな話#2 Snowflakeを使ったDynamoDBのログ分析 ✓ リアルな話#3 Snowsightを使ったSnowflakeの監視 ✓ リアルな話#4 高負荷に備えた、ウェアハウスのクラスター数の変更  Snowflakeのチューニング ✓ リアルな話#5 ウェアハウスはかなりの台数使い分けてる ✓ リアルな話#6 クラスタリングキーとクエリプロファイルを活用しよう
  • 13. 18 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. プロダクト開発初期の課題  数年間分のトランザクションデータの分析が頻繁に行われる ✓ 1本あたりの速度は速いが、スキャンコストだけでNG ✓ 同時実行数が増えると1本当たりの速度が大幅に落ち込んでしまったり・・・  現行の分析機能担保のため処理が複雑になる ✓ アドホックな分析なので、ほぼ同じクエリになることがない ✓ キャッシュも効きにくい 同時実行数と1集計あたりの速度を どのように担保するのかが大きな課題
  • 14. 19 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. Snowflakeの登場  データ構造、テーブル設計、クエリも変えずに性能検証を実施 ✓ やったこと • コネクタ入れ替え • データをシンガポールリージョンSnowflakeへロード 集計システム 集計エンジン 性能検証 セット ・ ・ ・ API タスク タスク タスク 参照 他社 DWH 参照 Snow flake スループット(1時間あたりの処理可能本数)が 3~4倍 ほぼほぼ目標達成! 1本当たりの処理時間も 3~4倍程度高速に!
  • 15. 20 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. しかし ←高速 処理速度 低速→ 現行 高負荷時 Snowflake 同時10実行 Snowflake 高負荷時想定 高負荷時の処理時間を 全体的に短くしたい
  • 16. 21 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#5:ウェアハウスはかなりの台数使い分けてる  本番系で30ウェアハウス程度 ✓ タグやWebUIのフィルタ欲しい…  マルチクラスタウェアハウスを複数並べて負荷分散 ✓ 1ウェアハウス10クラスタでも足りない ✓ クラスタ数多くするとCloudServicesの負荷増加 ✓ ウェアハウス横に並べたほうが性能出る!  1ユーザーあたりのセッション数に注意 ✓ デフォルトで最大50 ✓ ストレージとコンピュートの分離の恩恵をモロに享受 ✓ ウェアハウスどんどん利用すべし(コストには注意) Storage Layer 集計エンジン … … … … … 1サービスのためのウェアハウス群 多数の集計処理(クエリ)
  • 17. 22 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#5:ウェアハウスはかなりの台数使い分けてる  同時実行数と処理速度のスウィートスポット(最適解)を見つけよう ✓ WHを最大10WH用意してワークロードの検証 ✓ 1WH内のクラスター数も1~10とし、それぞれで同時実行数もコントロール
  • 18. 23 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. しかし もう一息!
  • 19. 24 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう  Snowflakeの最大のメリットであるマイクロパーティショニングやナチュラルクラスタリングによ って何も考えずに速度は速い  ただし、DMLによってクラスタリング具合が理想的でなかったり、実行速度が遅くなってきて しまった場合には、クラスタリングキーを指定するとよい! ✓ フィルタリング述語でデータスキャン効率向上したり ✓ 列圧縮向上でデータ量減ったり ✓ ただし、自動クラスタリングが実行されるとその分のクレジットがかかることも注意 ✓ Snowflakeのクラスタリングキー推奨は以下 • 選択フィルターで最もアクティブに使用されるクラスタ列 • 結合述語で使用される列も検討するとよい https://docs.snowflake.com/ja/user-guide/tables-clustering-keys.html#what-is-a-clustering-key
  • 20. 25 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう  クエリプロファイルを見よう ✓ これまで
  • 21. 26 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう  クエリプロファイルを見よう ✓ これまで トランザクションデータの スキャンが一番のネック
  • 22. 27 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう  ざっくりの1リクエスト中クエリの流れ ✓ 販売実績データをファクトデータとして、商品属性や店舗属性のマスタのディメンジョンを結合しサマリーす るよくあるスタースキーマ ✓ その後にクロス表作成したりトレンド表作成したり特殊な処理したりしてます 販売実績データ 販売日 店舗コード 商品コード 金額 個数 商品マスタ 商品コード 商品名称 商品属性コード 商品属性名称 店舗マスタ 店舗コード 店舗名称 店舗属性コード 店舗属性名称
  • 23. 28 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう  クラスタリングキー戦略 ✓ これまで販売日の列へクラスタリングキーを指定していた • 日付でデータをフィルターすることが多いため • しかし、再三述べている通り、それなりのスキャン量が要求される ✓ 集計リクエスト処理内訳の大部分が、トランザクションデータをスキャン • ∵ユーザーは数年間の集計をするのがよくある集計 ✓ Snowflakeサポートの方々からのアドバイス • 「商品コード, 販売日でクラスタリングキーを指定してはどうか?」 • =結合述語で頻繁に使用される列でのクラスタリング • 商品マスタはユーザーごとにカスタマイズされた商品マスタ • 飲料系市場と雑貨系市場ではスキャンしたいデータ異なる • 盲点でした。。。
  • 24. 29 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう  結合述語をクラスタリングキーに指定したときのざっくりスキャンイメージ 販売日のWHERE句のみで スキャン 結合述語でフィルターした 場合のスキャン スキャンに関わる コストが下げられる
  • 25. 30 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう  クエリプロファイルを見よう ✓ 今
  • 26. 31 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう  左:これまで(全体で37秒) 右:今(全体で28秒)
  • 27. 32 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう 目標達成 謝謝
  • 28. 33 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. リアルな話#6:クラスタリングキーとクエリプロファイルを活用しよう  基本的には速いので何も考えなくてよいです  同時実行数が求められる場合 ✓ WH数の調整を検討(分析・ロードを分けるだけでなく様々なロールで考えられるのもよい) ✓ クラスター数の調整を検討 ✓ WHのサイズの調整を検討  1本当たりの処理速度が求められる場合 ✓ クエリプロファイルとにらめっこしてボトルネックを特定する😇 ✓ WHのサイズ調整を検討 ✓ クラスタリングキーを検討 • 業務要件やクエリによっては劇的に速くなる可能性も秘めています
  • 29. 34 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved. 本日のおさらい  基本的にはSnowflakeに全てお任せで無問題 ✓ 何もしなくても普通に速い ✓ 運用の手間がほとんどかからない ✓ とりあえずデータ突っ込んでおけばいい感じにやってくれる ✓ マイクロパーティション最高!  その一歩先を目指す場合でも、Snowflakeならそれを可能にする懐の深さがある ✓ 「コレやれたら良いなぁ」と思ったことが実現できる Snowflakeで新たな世界へ一歩踏み出してみませんか?
  • 30. 38 Copyright© INTAGE TECHNOSPHERE Inc. All Rights Reserved.