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
Duckdb-Wasmでローカルダッシュボードを作ってみた
Search
nk
November 02, 2024
Programming
0
890
Duckdb-Wasmでローカルダッシュボードを作ってみた
nk
November 02, 2024
Tweet
Share
More Decks by nk
See All by nk
S3 metadata/S3 tablesからAthenaで データ取得してみた。
nkforwork
0
120
Guide to creating an AWS Lambda function in Python with DuckDB
nkforwork
0
200
Other Decks in Programming
See All in Programming
ソフトウェアテスト徹底指南書の紹介
goyoki
1
150
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
320
Compose Multiplatform × AI で作る、次世代アプリ開発支援ツールの設計と実装
thagikura
0
140
今だからこそ入門する Server-Sent Events (SSE)
nearme_tech
PRO
0
110
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
210
Deep Dive into Kotlin Flow
jmatsu
1
310
Laravel Boost 超入門
fire_arlo
2
210
Namespace and Its Future
tagomoris
6
700
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
270
print("Hello, World")
eddie
2
530
1から理解するWeb Push
dora1998
7
1.8k
Android 16 × Jetpack Composeで縦書きテキストエディタを作ろう / Vertical Text Editor with Compose on Android 16
cc4966
1
180
Featured
See All Featured
Thoughts on Productivity
jonyablonski
70
4.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
What's in a price? How to price your products and services
michaelherold
246
12k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Optimizing for Happiness
mojombo
379
70k
Transcript
Duckdb-wasmでつくる ローカルダッシュボード クラメソおおさか IT 勉強会 Midosuji Tech #3
自己紹介 名前:nk 職種:製造DX関係(業務自動化・データ可視化 ) 経歴:製造業→SES一年目 使用言語:主にPython(とVBA) 個人でReact・AWS等
内容 ・自分用ダッシュボードを作った。 ・Duckdb-wasmとは ・気づき ・今後検証したいこと
こんなダッシュボードが欲し い... 😑 重くないやつ (PowerBIやStreamlitより軽い) デザインを色々 カスタマイズできる。 ローカルで動く (データソースも内包) 社内制約...
Macで使えて無料
NBAで活躍中の河村勇樹選手のスコアを使用
None
Duckdb…? 🤔
Duckdb…? 😲 組み込みデータベース (ローカル) データ分析など 大量の集計向き 必要な列のみ欲しい時 高速 読み込み形式: CSV,JSON,Parguet…
Wasm(Webassembly)…? 🤔
Wasm…? 😧 バックエンド処理を フロントエンドに埋め込む OSやデバイスに依存しない 様々な言語から コンパイルされる サンドボックス内で 安全に処理
Duckdb+Wasm…? 🤔
Duckdb+Wasm…? 🧐 バックエンド処理 +データベースとの処理を フロントエンドに埋め込む 実質使用言語は Javascript or Typescript +SQL
データ分析用の 大量集計など可能 このままだとデータは消 える
Duckdb+Wasm+OPFS…! 👍 バックエンド処理 +データベースとの処理を フロントエンドに埋め込む 実質使用言語は Javascript or Typescript +SQL
データ分析用の 大量集計など可能 +OPFS ブラウザにデータを永続化 (LocalStrageのようなもの)
React内で アプリが完結 🙌
アプリ構成図 OPFS内 CSV view 👀 ✍
コードの一部紹介 (時間がなかったため...)
気づき ・サーバーサイドがない (クライアントサイドしかない ?) ・バックエンドとの繋ぎこみを考えなくて良いの で作るのが楽 ・SQLはそこまで必要ない ・データ更新時のみS3からデータをとってくるな どAWSとの連携可能? ・
今後検証したいこと 1:セキュリティってほんとに安全? 2:もっと重いデータでもほんとに速い? 3:ストリーミングデータは扱えるの? 4:Postgresqlとの通信ができるの? 5:parquetでどのくらいの規模のデータを扱える の? 6:パフォーマンスチューニングって意味ある の?(キャッシュ等) 7:AWS等で作ったパイプラインとの連携
8:実際のデータに基づいたダッシュボードの改 良 ・