Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GCPでNoAdmした話
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
chidakiyo
November 29, 2017
Technology
1.3k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GCPでNoAdmした話
chidakiyo
November 29, 2017
More Decks by chidakiyo
See All by chidakiyo
Cloud Buildを気軽なコンテナ実行環境として利用する / gcpug-cloud-build-day
chidakiyo
4
1.7k
GCPだけではなく Googleのプロダクトを活用し、 新サービスを作らずに創る
chidakiyo
0
1.7k
Other Decks in Technology
See All in Technology
Running Kotlin + Quarkus with Lambda
nealle
1
3.3k
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
290
Snapshot Testing in Practice: Predictable and Reliable SwiftUI Views
fespinoza
0
220
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
150
触りたくないデータに、どう触るか AI時代のRBACアクセスガバナンス
ivry_presentationmaterials
0
220
DWH の限界突破! AI エージェント向け爆速リアルタイムデータ基盤 ClickHouse
jozono
1
450
AIにシークレットを見せない、WSL2で安全な開発環境
yazm
0
260
【Data Engineering Summit2026_登壇資料】医療ビッグデータ×AIエージェントを支えるデータ基盤とハーネスエンジニアリング
jmdc_presentation
0
160
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
3
1k
分析AIエージェントを育てる、動く環境を育てる
codatum
1
1.1k
不可逆な意思決定を避けながら10億超の顧客データを AI Ready にするデータ基盤設計
baseballyama
1
330
事業活動を AI Ready にする攻めと守りのデータエンジニアリング / data-engineering-for-ai-ready-business
pei0804
7
2.8k
Featured
See All Featured
WCS-LA-2024
lcolladotor
0
890
Are puppies a ranking factor?
jonoalderson
2
4k
A Soul's Torment
seathinner
8
3.8k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
320
Accessibility Awareness
sabderemane
1
250
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
410
Done Done
chrislema
187
17k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
890
It's Worth the Effort
3n
188
29k
Transcript
copyright Fringe81 Co.,Ltd. 2017/11/28 author @chidakiyo GCPでNoAdmした話 酔いどれGCPUG
copyright Fringe81 Co.,Ltd. まずは自己紹介
copyright Fringe81 Co.,Ltd. 自己紹介 • @chidakiyo • Fringe81という会社で働いています。 • 普段はR&Dをしていたり、新規事業のプロト作ったり
している人です。 • 筋トレ好きです。 • Appengine 昔から触ってました。 よいどれ
copyright Fringe81 Co.,Ltd. NoAdmとは? • 管理系の画面を「開発せずに作る」 • アプリケーションの運用に必要なダッシュボードなど の機能をアプリケーション側で作り込まず、かつ、フ ルマネージドに実現したいという思いつきからの造語
です。
copyright Fringe81 Co.,Ltd. 今日話すこと/話さないこと • NoAdmを実現した流れを話します • あまり細かい技術の話はしません
copyright Fringe81 Co.,Ltd. [前提情報] Uniposというサービスをやってま す
copyright Fringe81 Co.,Ltd. [前提情報] Uniposの構成
copyright Fringe81 Co.,Ltd. 運用にあたってこんなオーダーが... 1. Datastore内のデータで顧客へのレポートを作りたい 2. カスタマーサクセスチームの非エンジニアでも手軽に 利用状況などを分析したい
copyright Fringe81 Co.,Ltd. ちなみに、Datastoreって、 • エンティティのJoinができない • 集約関数がない(sum, count, etc.)
• 全文検索できない 「うーん、 SQLで書きたい・・・」 みたいな気持ちに
copyright Fringe81 Co.,Ltd. 考えたこと • DatastoreのデータをBigQueryに同期す ることで、SQLをつかって色々見れそう!
copyright Fringe81 Co.,Ltd. ではやってみることにした
copyright Fringe81 Co.,Ltd. DatastoreをBigQueryに同期するステップ 1. DatastoreをGCSへバックアップする 2. バックアップファイルをBQに投入する
copyright Fringe81 Co.,Ltd. 1) DatastoreをGCSへバックアップする • 自作の chidakiyo/datastore-backup を利用して各 kindをGCS上にバックアップ
Qiitaも書いてます : https://qiita.com/chidakiyo/items/bb2e49c6f99b7210fa0f
copyright Fringe81 Co.,Ltd. 2) バックアップファイルをBQに投入する • favclip/ds2bqを利用 • GCSに書き込まれたバックアップのOCN (Object
Change Notification)をトリガにds2bqで バックアップファイルをBQに投入
copyright Fringe81 Co.,Ltd. これで SQLを利用し、データへ柔軟にアクセス できるようになった!
copyright Fringe81 Co.,Ltd. SQLを実行できることで実現できたコト • 日毎の企業別の投稿数の推移 • 日毎の貰ったポイント、送ったポイント • アカウントごとの投稿数/送った貰ったポイント
• などなど、、、 SQLで好きなように分析できる! かなりいい感じ!
copyright Fringe81 Co.,Ltd. 悲しいお知らせ
copyright Fringe81 Co.,Ltd. 昨日判明した衝撃の事実・・・ • 今日紹介したDatastoreのバックアップ手法は古代の 手法となりつつあるようで、トレンディーなエンジニア のみなさまにおかれましては、gcloud beta datastore
exportのご利用を検討してみてください! (涙 • 昨日、GCPUGのSlackで気づきました・・・ 参考 : https://cloud.google.com/datastore/docs/export-import-entities
copyright Fringe81 Co.,Ltd. ここからNoAdm的な話
copyright Fringe81 Co.,Ltd. SRE本でいう Toil を撲滅する • 顧客向けのレポート作成のためにExcelポチポチ • 利用状況の分析のための情報をDatastoreからの
データ取得ポチポチ Toilとは「苦労」や「長く続く骨折り仕事」のような意味があり、 SRE本では、手作業である、繰り返される、自動化可能である、戦術的である、長期的な 価値を持たない、サービスの成長に対し O(n)である、の1つ以上に当てはまれば Toilであ る可能性が高いと書かれています。
copyright Fringe81 Co.,Ltd. SRE本でいう Toil を撲滅する • 顧客向けのレポート作成のためにExcelポチポチ • 利用状況の分析のための情報をDatastoreからの
データ取得ポチポチ こんな苦労は撲滅!!
copyright Fringe81 Co.,Ltd. NoAdmとして実現したこと(1) • 顧客向けのレポートはDatastudioで
copyright Fringe81 Co.,Ltd. NoAdmとして実現したこと(1) • 構成
copyright Fringe81 Co.,Ltd. NoAdmとして実現したこと(1) • Datastudioを新規作成する
copyright Fringe81 Co.,Ltd. NoAdmとして実現したこと(1) • BigQueryのテーブルを選択して接続を作成する
copyright Fringe81 Co.,Ltd. NoAdmとして実現したこと(1) • グラフを配置するとすぐに見える!
copyright Fringe81 Co.,Ltd. やばい、簡単!!
copyright Fringe81 Co.,Ltd. Datastudio、何と接続できる? • BQだけではなく、色々なデータに簡単に接続できる (CloudSQL, AdWords, MySQL, PostgreSQL,
GoogleSpreadSheet, etc..) • コミュニティコネクタと言うものがありさらにいろいろな データソースに接続できます
copyright Fringe81 Co.,Ltd. Datastudioを利用して嬉しいこと • 顧客ごとに見たい指標をカスタマイズしたレポートの 提供が容易にできる • サーバコスト不要 •
SQL書けなくてもグラフが作れる • G Suiteの権限で共有ができるので管理しやすい
copyright Fringe81 Co.,Ltd. Datastudioでハマった/困ったこと • データソースの編集権限がシェアできないので、複数 人での編集が出来ない。
copyright Fringe81 Co.,Ltd. NoAdmとして実現したこと(2) • アプリケーションの毎日確認したい情報のグラフを Slackに通知。
copyright Fringe81 Co.,Ltd. NoAdmとして実現したこと(2) • 構成
copyright Fringe81 Co.,Ltd. NoAdmとして実現したこと(2) 細かい内容は今年の Advent Calendarで。
copyright Fringe81 Co.,Ltd. Slackへのグラフ通知で嬉しいこと • グラフが毎朝決まった形でSlackに投稿され、Slack 上ですぐに議論が始められる • コミュニケーションツール上にレポートされるので、 チーム内の意識のすり合わせの時間が減らせる
copyright Fringe81 Co.,Ltd. GASのSlack通知でハマったこと/困ったこと • GASのリソース使いすぎるとCPU時間が長すぎます メールがGoogleから来て、止められることがある。 • GASの処理は6分以内に終わらせる必要がある。
copyright Fringe81 Co.,Ltd. 実現するためにその他にやったこと。 • 非エンジニアがSQLを実行するのが容易な環境をつ くり、非エンジニアもSQLを書けるように。(社内で非 エンジニア向けSQL教室を毎日行った)
copyright Fringe81 Co.,Ltd. 実現して個人的に嬉しいこと • 「こんな情報が欲しいのでデータベースから情報取得 してもらえますか?」とお願いされることがないので、 早く家に帰って筋トレができるw
copyright Fringe81 Co.,Ltd. BQ連携構成で良かった点 • Datastoreのバックアップを起点にNoAdm側は構成 されているため、疎結合でアプリケーション側に影響 を与えない • アプリケーション側への影響が少ないため、運用の便
利ツールを比較的容易に作りやすい • 初期の開発の工数を減らすことができた
copyright Fringe81 Co.,Ltd. さいごに • GCPはいろいろ便利に使えるツールがたくさんある ので便利に使ってラクしましょう!
copyright Fringe81 Co.,Ltd. 一緒にGCPの話でわいわいできる 仲間を募集しています!
copyright Fringe81 Co.,Ltd. 一緒にGCPの話でわいわいできる 仲間を募集しています! 筋トレ好きな人 も!
copyright Fringe81 Co.,Ltd. ご清聴ありがとうございました。
copyright Fringe81 Co.,Ltd. 参考: [まだBIツールで消耗してるの? ~ サーバレス・KPI分析ダッシュボードをGAS + Slackで] http://blog.yamotty.com/entry/20161114/1479079800
[BigQueryを簡単にグラフにするGoogle Apps Script] http://toreta.blog.jp/archives/20649904.html