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
Tableau + Pythonとデータのあり方
Search
Kazuya Araki
October 21, 2019
Technology
2
120
Tableau + Pythonとデータのあり方
Tableauデータサイエンス勉強会 第4回 - 画像認識技術とBIの巻-
登壇資料
https://techplay.jp/event/750555
Kazuya Araki
October 21, 2019
Tweet
Share
More Decks by Kazuya Araki
See All by Kazuya Araki
Tableau事例紹介 / Tableau Case Study of Eureka
kazuya_araki_tokyo
1
900
Tableau事例紹介 & 課題共有
kazuya_araki_tokyo
1
1.7k
統計とは? @ICUHS
kazuya_araki_tokyo
0
270
License Management @BizReach, Inc.
kazuya_araki_tokyo
0
60
Art and Science of Visual Analytics Episode 0
kazuya_araki_tokyo
0
52
Art and Science of Visual Analytics Episode 1
kazuya_araki_tokyo
1
120
Art and Science of Visual Analytics Episode 2
kazuya_araki_tokyo
0
48
Art and Science of Visual Analytics Episode 3
kazuya_araki_tokyo
0
48
株式会社ビズリーチの紹介@Data Analyst Meetup Tokyo vol.8
kazuya_araki_tokyo
0
82
Other Decks in Technology
See All in Technology
開発も運用もビジネス部門も! クラウドで実現する「つらくない」統制とセキュリティ / Effortless Governance and Security Enabled by the Cloud
kanny
3
1.2k
ゼロコードで実現! - OpenTelemetryとOCI APM Agentによる簡単アプリケーション監視 - / Zero-Code Observability with OpenTelemetry and OCI APM
oracle4engineer
PRO
1
180
Redmineの意外と知らない便利機能 (Redmine 6.0対応版)
vividtone
0
650
OTel meets Wasm: プラグイン機構としてのWebAssemblyから見る次世代のObservability
lycorptech_jp
PRO
0
200
[JAWS-UG 栃木 #2]AWS FISはドSなのか?システムに試練を与えて強くする!
sh_fk2
1
260
The Ultimate Showdown of Database Migration Tools
asm0dey
0
130
シンプルな設定ファイルで実現する AWS IAM Identity Center のユーザー管理と開発チームへの委譲 / Delegating AWS IAM Identity Center User Management with a Simple DSL
yamaguchitk333
3
450
declaration mergingの威力:ライブラリアップデート時の書き換え作業を90%短縮するテクニック
yutake27
2
240
AWS LambdaをTypeScriptで動かして分かった、Node.jsのTypeScriptサポートの利点と課題
smt7174
1
2.8k
AWS パートナー企業のテクニカルサポートが日々思っていること 〜そして、4/15 の現場から〜
kazzpapa3
2
390
フロントエンドがTypeScriptなら、バックエンドはPHPでもいいじゃない/php-is-not-bad
hanhan1978
8
12k
大規模PaaSにおける監視基盤の構築と効率化の道のり
lycorptech_jp
PRO
0
130
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Faster Mobile Websites
deanohume
307
31k
Navigating Team Friction
lara
185
15k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
14
880
KATA
mclloyd
29
14k
Agile that works and the tools we love
rasmusluckow
329
21k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
600
Making Projects Easy
brettharned
116
6.2k
Fireside Chat
paigeccino
37
3.5k
A Tale of Four Properties
chriscoyier
159
23k
Transcript
Tableau + Pythonと データのあり方 Tableau データサイエンス勉強会第4回
About Me 荒木 和也 Kazuya Araki Knight of Tableau DATA
Saber 受託開発 -> パッケージ開発 -> 某HR Tech & 個人事業 Engineer -> Data Analyst / Data Enginieer / Data Archtect Love: Data Hobby: J-Rock, Snow Sports, PC Game, Board Game etc(100+) https://www.facebook.com/kazuya.araki.tokyo @kazuya_araki_jp https://note.mu/jedi_trickstar https://public.tableau.com/profile/kazuya.araki#!/
お話しすること 最近考えている、思っていることについて語ってみます。 (サイエンスよりは、エンジニアリングの与太話となります) • データとTableau(Desktop)の関係 • TableauとPython
お話ししないこと 10分では足りないので。 • PythonのHow • TabPyの細かい話(本当は語りたい)
データとTableau(Desktop)の関係
基本はETL(データパイプライン)の考え方
Tableau(Desktop)は優秀
優秀すぎるが故の罠
優秀すぎるが故の罠 例: 計算フィールド多すぎ問題 • 単純にパフォーマンスが劣化する。 • メジャーの視認性が悪くなる。 • メジャー名を正しく定義しないと使うときに困る。 •
計算式が正しくなかった場合のレビューがとても難しい。 ◦ レビュワーもCreatorユーザーでなければならない。 etc...
優秀すぎるが故の罠
優秀すぎるが故の罠 例: カスタムSQL • SQLが実行できるデータソースで発生しうる。 ◦ データマート構築が進んでいない場合。 ◦ サービズデータを無加工でデータウェアハウスに格納して いる場合。
◦ 総じて、データエンジニアリングが未熟なフェーズ。 • Tableau Desktopのウインドウだと視認性が良くない。 • SQLが正しくなかった場合のレビューがとても難しい。 ◦ レビュワーもCreatorユーザーでなければならない。 ◦ 計算フィールドと複合していると原因特定に詰む。 ◦ SQLを書いた本人ですらわからない場合もある。 etc... (フォーマッターかけて) 800行超あるSQL
気をつけないと痛い目を見る
構成を考えてみる🤔
最近の推しの構成
最近の推しの構成
役割分担と構成管理
データ加工とデータ可視化を分けた方がよさそう • データ加工 = SQL / Python / Tableau Prep
Builder ◦ GitHubでコードを管理する。 ▪ データ定義を残す。 ▪ 再現性を担保する(= 誰が使っても同じ結果になる保証)。 ◦ SQLはデータベース、SQLでできないことはPythonに任せる。 ◦ API系はPython。 ◦ Tableau Prepは可能性しかない。今後に期待。 ▪ ただし、Prep Conductorまで使うには別途追加料金が必要。 • データ可視化 = Tableau Desktop ◦ Tableau側はデータについて関与しない。 ◦ Tableauはデータ可視化にだけ、注力するようにする。
TableauとPython
Python IDEの構成 from あらき
TabPyの登場
Tableau内でPythonが記述可能に TabPy
リプレース可能? TabPy 🤔
一人Zen問答したメモ at 2019/10/01 • TabPyの位置付けは計算フィールドと変わらないので、データパイプライン を考えると、役割分担ができない。 • 一方で、TabPyは構築さえできてしまえばTableau内で完結するので、楽とい えば楽。 •
どちらが優れているかは現時点では判断できない。 • 少なくとも、2人以上が関わるようになった場合は、Tableau内であれこれや るよりも、ちゃんと思考開示して共有できるようにしないと属人化は進むだ ろう。 ◦ Citizen Data Scientists向け? ◦ Data Engineerをかかえている組織であれば、分業した方が効率は良い?
もう少し、ざっくばらんに 議論したいです ※背景画像はイメージです
まとめ • データとTableau(Desktop)の関係 ◦ データパイプラインを意識する = ツールに適した役割分担をする。 ◦ データ定義はTableau(Desktop)内で行うべきではない(のが個人的見解)。 ◦
なんでもTableau(Desktop)で解決しようとしない。 • TableauとPythonTabPy ◦ データパイプラインを意識すると、TabPyの導入意義が薄れてしまう(のが個人的見解)。 ◦ もう少し深掘りしていきたいです🙇
None