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
1.1k
Duckdb-Wasmでローカルダッシュボードを作ってみた
nk
November 02, 2024
Tweet
Share
More Decks by nk
See All by nk
「分析SQLそのまま可視化したい」を叶えるツールを作った
nkforwork
0
52
S3 metadata/S3 tablesからAthenaで データ取得してみた。
nkforwork
0
160
Guide to creating an AWS Lambda function in Python with DuckDB
nkforwork
0
230
Other Decks in Programming
See All in Programming
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
190
安いハードウェアでVulkan
fadis
1
840
Java 21/25 Virtual Threads 소개
debop
0
310
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
1.4k
Symfonyの特性(設計思想)を手軽に活かす特性(trait)
ickx
0
110
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
710
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
270
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
570
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
1.2k
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.1k
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.2k
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
370
Featured
See All Featured
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
150
A Modern Web Designer's Workflow
chriscoyier
698
190k
Unsuck your backbone
ammeep
672
58k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
690
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
97
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
How to Think Like a Performance Engineer
csswizardry
28
2.5k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.5k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The Curious Case for Waylosing
cassininazir
0
280
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:実際のデータに基づいたダッシュボードの改 良 ・