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
PlanetScaleの無料プランがなくなるので、NeonとTiDBを試してみた
Search
Yohei Iino
June 16, 2024
Technology
0
300
PlanetScaleの無料プランがなくなるので、NeonとTiDBを試してみた
Yohei Iino
June 16, 2024
Tweet
Share
More Decks by Yohei Iino
See All by Yohei Iino
1年半放置したExpo製アプリを最新化してみた
wheatandcat
0
46
作成中のFlutterアプリの中間発表
wheatandcat
0
45
最近読んだ技術書を簡単紹介
wheatandcat
0
67
ユニバーサルリンク/アプリリンクを使ってQRコードでゲストログインできるようにする
wheatandcat
0
140
Firebase App Checkを実装したので紹介
wheatandcat
0
140
Flutter HooksとRiverpodの解説
wheatandcat
0
420
T3 Stack(応用編: Next Auth & SSRの実装紹介)
wheatandcat
1
350
App Routerの紹介
wheatandcat
0
100
Flutter × GraphQLでアプリを作ってみる
wheatandcat
0
280
Other Decks in Technology
See All in Technology
Rustから学ぶ 非同期処理の仕組み
skanehira
1
140
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
170
AI開発ツールCreateがAnythingになったよ
tendasato
0
130
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
5
1.6k
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
390
スマートファクトリーの第一歩 〜AWSマネージドサービスで 実現する予知保全と生成AI活用まで
ganota
2
220
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
410
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
570
RSCの時代にReactとフレームワークの境界を探る
uhyo
10
3.4k
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
550
サンドボックス技術でAI利活用を促進する
koh_naga
0
200
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Language of Interfaces
destraynor
161
25k
YesSQL, Process and Tooling at Scale
rocio
173
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
A designer walks into a library…
pauljervisheath
207
24k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
112
20k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Transcript
PlanetScaleの無料プランがなくなるので、NeonとTiDBを試してみた Press Space for next page
自己紹介 📝 飯野陽平(wheatandcat) 🏢 会社: 合同会社UNICORN 代表社員 📚 Blog: https://www.wheatandcat.me/
🛠 今までに作ったもの memoir OOMAKA MarkyLinky
PlanetScaleとは クラウドベースのサーバーレスDB MySQLと互換性のあるインターフェースを持つ オートスケールやノンブロッキングスキーマの変更をサポート YoutubeやSlackなどの大量のデータを扱う企業が利用されている 詳細 PlanetScale 軽くコンソールを見せてDEMO https://app.planetscale.com/
無料プランがなくなる件 5GBまで無料で使用できたが、2024年4月で無料プランの提供が終了 https://planetscale.com/blog/planetscale-forever 最小プランでも月額$50/月くらいはかかる 個人開発で使うには結構辛い
今回の開発で使えるDBサービスの条件 今回は個人開発で使用する前提なので以下の条件で調査 個人開発で使用する範疇なら無料で使用できるDBサービス Prismaを使用できる
代替えの候補 Neon TiDB Serverless
Neonとは サーバーレスのフルマネージドPostgreSQLサービス コードはGitHubで公開されている neondatabase/neon Rust製 AWS AuroraやAlloyDBと似た機能を持ったアーキテクチャを採用(詳しくは以下の記事を参照) https://neon.tech/blog/architecture-decisions-in-neon ストレージとコンピューティングを分離した構成で柔軟なスケーリングが可能 軽くコンソールを見せてDEMO
https://console.neon.tech/app/projects
メリット・デメリット メリット 無料枠が512MB ブランチングができるので、環境毎にDBを複製ことが可能 Webのコンソールの機能が充実していて以下の機能が使用できる SQL editor IP制限 定期バックアップ デメリット
東京リージョンが無い 日本で使用する場合はシンガポールリージョンが一番近くになる
TiDB Serverlessとは MySQL互換のあるNewSQLデータベースサービス 高い分散性能を持っており、大規模プロジェクトでも使用されている コードはGitHubで公開されている https://github.com/pingcap/tidb Go製 詳細なアーキテクチャは以下の記事を参照 https://docs.pingcap.com/ja/tidb/stable/tidb-architecture#tidb-architecture 軽くコンソールを見せてDEMO
https://tidbcloud.com/console/clusters
メリット・デメリット メリット 無料枠が5000万リクエストユニット(RU)/月 NewSQLなのにPrismaが使用できる 自動でデータ分散管理されるためシャーディングが不要 Writeのスケールも可能 柔軟なトランザクションの設定が用意されていて用途に合わせて変更可能 https://docs.pingcap.com/ja/tidb/stable/transaction-isolation-levels 運営会社のPingCAPに日本支社ができたので日本語のドキュメントが充実している https://docs.pingcap.com/ja/tidb/stable/overview
デメリット MySQLは完全互換では無い(詳細はこちら) 学習コストが高い 参考記事: TiDBにおけるパフォーマンス検証の進め方とつまづきポイント
まとめ 初めてNeonとTiDB Serverlessに触ったが、どちらも使いやすくて良かった Webコンソール機能的にはNeonの方が充実していたが、東京リージョンがないのが結構痛い 今回はTiDB Serverlessを採用することにした 途中移行は難しそうだが、新規プロジェクトでの採用は積極的に検討した方が良さそう 特にTiDBのアーキテクチャは興味深いので、今後も追いかけていきたい
ご清聴ありがとうございました 🎉