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
140
PlanetScaleの無料プランがなくなるので、NeonとTiDBを試してみた
Yohei Iino
June 16, 2024
Tweet
Share
More Decks by Yohei Iino
See All by Yohei Iino
作成中のFlutterアプリの中間発表
wheatandcat
0
8
最近読んだ技術書を簡単紹介
wheatandcat
0
22
ユニバーサルリンク/アプリリンクを使ってQRコードでゲストログインできるようにする
wheatandcat
0
21
Firebase App Checkを実装したので紹介
wheatandcat
0
30
Flutter HooksとRiverpodの解説
wheatandcat
0
210
T3 Stack(応用編: Next Auth & SSRの実装紹介)
wheatandcat
1
230
App Routerの紹介
wheatandcat
0
62
Flutter × GraphQLでアプリを作ってみる
wheatandcat
0
220
T3 Stack + Supabaseでアプリを作ってみる
wheatandcat
0
200
Other Decks in Technology
See All in Technology
10分で学ぶKubernetesコンテナセキュリティ/10min-k8s-container-sec
mochizuki875
3
330
LINEヤフーのフロントエンド組織・体制の紹介【24年12月】
lycorp_recruit_jp
0
530
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
690
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
0
150
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
150
Storage Browser for Amazon S3
miu_crescent
1
140
OpenAIの蒸留機能(Model Distillation)を使用して運用中のLLMのコストを削減する取り組み
pharma_x_tech
4
550
WACATE2024冬セッション資料(ユーザビリティ)
scarletplover
0
190
アップデート紹介:AWS Data Transfer Terminal
stknohg
PRO
0
180
podman_update_2024-12
orimanabu
1
260
KnowledgeBaseDocuments APIでベクトルインデックス管理を自動化する
iidaxs
1
260
複雑性の高いオブジェクト編集に向き合う: プラガブルなReactフォーム設計
righttouch
PRO
0
110
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
The World Runs on Bad Software
bkeepers
PRO
65
11k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
What's in a price? How to price your products and services
michaelherold
243
12k
Speed Design
sergeychernyshev
25
670
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
We Have a Design System, Now What?
morganepeng
51
7.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Code Review Best Practice
trishagee
65
17k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
810
Statistics for Hackers
jakevdp
796
220k
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のアーキテクチャは興味深いので、今後も追いかけていきたい
ご清聴ありがとうございました 🎉