Supabase vs Neonの比較。機能や料金、セキュリティ、AIを含めて徹底比較

目次

はじめに

※この記事は2024年11月6日時点の内容です
SupabaseとNeonはともにPostgresを中心におくBaaSですが、それぞれ特徴があります。
なかなか日本語の記事でNeonを紹介しているものがなかったため、ここではSupabaseと比較してNeonというサーバレスプラットフォームについて紹介していきたいと思います。

Neonの公式サイト: https://neon.tech/

Neonとは?

まずはNeonの概要です。
Neon は、Postgres を中心としたサーバレスプラットフォームで下記のアーキテクチャ上で動きます。

自動スケール、高速性、ブランチ管理など様々な便利な特徴を持っています。

Supabaseとの比較

自動スケーリング

Supabase

Supabaseでは同時接続数の増加に合わせてSupavisorを利用して負荷分散を行う仕組みを作ることができます。
しかし、いわゆるコンピューティング資源の自動スケーリング機能はなく、そちらは手動で増加させる必要があります。
https://neon.tech/_next/image?url=%2Fdocs%2Fintroduction%2Fmulti_tenant_storage.png&w=828&q=75&dpl=dpl_GDsrcny4AYKHo4v6g3M2V8qEuAsL

Neon

NeonはAWS Auto Scalingとよく似た直感的に設定できる自動スケーリング機能を持っています。
https://neon.tech/docs/introduction/autoscaling

直感的なGUI上で自動スケーリングの設定を行うことができます。

AWS Auto Scaling: https://aws.amazon.com/jp/autoscaling/

どちらが良いか

この点においては自動スケーリング機能をしっかりもっているNeonのほうに強みがあります。

ブランチング

Supabase

Supabaseのローカル開発のgitと連携し、ブランチ管理を行うことができます。
ローカル開発で行った変更のPRが出されるたびにそのPRのプレビューブランチが作られ、安全な開発を提供してくれています。
https://supabase.com/docs/guides/deployment/branching

Neon

Neonはローカル開発環境がまだ存在しない代わりに自由に開発用のブランチを作成してそちらと接続することができます。
親ブランチのデータを自動でインポートしてくれるので設定なしでいきなり立ち上げることが可能です。
https://neon.tech/docs/introduction/branching

どちらが良いか

こちらは開発者の体験としてはSupabaseのほうに大きな強みがあります。
ローカルで環境を立ち上げられるのは大きなメリットです。

バックアップ

Supabase

Supabaseは有料版から日単位でのバックアップ、拡張機能でポイントインタイムのバックアップを行い、数秒単位でのバックアップが取得できます。
https://supabase.com/docs/guides/platform/backups

Neon

Neonは現在自動バックアップ機能を持っていません。
pg_dumpを利用した手動のバックアップがあるのと、
組み込みのポイントインタイム復旧機能があり、無料プランだと最大24時間、launchだと7日、scaleだと14日、businessプランだと30日のバックアップを保存できます。
https://neon.tech/docs/manage/backups

どちらが良いか

Neonにはバックアップ機能がまだないため、Supabaseのほうに強みがあります。

言語サポート

利用しようと思えばそれぞれ下記サポート言語以上にいろいろな環境で利用できるはずですが、公式がガイドを提供しているものに絞って話します。

Supabase

Supabaseは下記の環境のクイックスタートをドキュメントとして持っています。

Neon

Neonは下記URLにフレームワークごとのガイドの一覧が並んでいます。
https://neon.tech/docs/get-started-with-neon/frameworks

  • Astro
  • Django
  • Express
  • Laravel
  • NestJS
  • Next.js
  • Node.js
  • Nuxt
  • new
  • Phoenix
  • Quarkus (JDBC)
  • Quarkus (Reactive)
  • React
  • Reflex
  • Remix
  • Ruby on Rails
  • SolidStart
  • SQLAlchemy
  • Symfony

加えて、下記URLに各言語ごとのサポート情報があります。
https://neon.tech/docs/get-started-with-neon/languages

  • Elixir
  • Go
  • Java
  • Javascript
  • Python
  • Rust

どちらが良いか

Neonの方が数が多いです。しかし、モバイル環境におけるサポートが薄いので始めるのに苦労するかもしれません。
SupabaseはWeb, Mobileに特化した内容になっています。これに関しては一長一短という形です。

Auth系機能

Supabase

Supabaseはかなり高機能なAuthサポートをもち、
https://supabase.com/docs/guides/auth

デフォルトで多くのソーシャルログイン機能があるなど利便性が高いです。

Neon

NeonはまだAuth関係に関してはサポートが小さめで、

をJWTで利用する方法がメインという形です。

どちらが良いか

Authに関しては機能の多さと実装の楽さからSupabaseの圧勝といえます。

AI関係

Supabase

Supabaseはpgvectorを利用してAIアプリを作るためのサンプルやチュートリアルをサイト内に多数そろえています。
https://supabase.com/docs/guides/ai

Neon

Neonも同じくpgvectorベースではあるものの、情報量はかなりすくなめです。
https://neon.tech/docs/ai/ai-intro
(できることは同じなので、逆にシンプルでよいのかもしれませんが)

どちらが良いか

同じツールを使っているためできることは同じですが、情報量で考えるとSupabaseのほうが上手でしょうか。

料金

Supabase

https://supabase.com/pricing

Supabaseは無料プランから利用開始できます。

  • 無制限のAPIリクエスト
  • 月間50000人までのアクティブユーザ
  • RAM500MBの共有CPU
  • 5 GBの帯域
  • 1 GBのファイルストレージ

制約としてプロジェクトは二つまでしか同時に動かせず1週間で停止されてしまいます。

有料プランに月25ドルのProプランと、月599ドルのTeamプランがあります。どちらも制約がなくなるのと、より多くのリソース利用と各種サポート機能が追加されるイメージです。

Neon

https://neon.tech/pricing

Neonも無料から利用できます。
無料プランだと、下記リソースを利用できます。

  • 10プロジェクト
  • 0.5 GBのストレージ
  • 190時間のコンピュート利用時間
  • 2vCPU, 8GBRAMまでオートスケーリング可能

また、月19ドルのLaunchプラン、月69ドルのScaleプラン、月700ドルのBusinessプランがあり、こちらもSupabaseと同じく価格が上がるにつれより多くのリソースが利用できるようになります。

どちらが良いか

こちらはかなりユースケースによる形です。
ファイルストレージやその他便利な機能が欲しければSupabaseのほうが良いですが、
オートスケーリングやデータベースに特化した機能が欲しければNeonのほうが良いと思います。

SupabaseにできてNeonにできないこと

Neonはデータベースに特化しているため、Supabaseよりも機能はありません。
Supabase側にしかない機能として下記があります。

Realtime

https://supabase.com/docs/guides/realtime
NeonはWebサーバを構築しているわけではないため、SupabaseにおけるWeb Socketサーバを代替できる機能はないです。

Edge Functions

https://supabase.com/docs/guides/functions
サーバサイドに関数をホスティングする機能ですが 、これももちろんNeonにはありません。

Storage

https://supabase.com/docs/guides/storage
NeonにはSupabaseにおけるファイルストレージを代替する機能はありません。

ローカル開発

https://supabase.com/docs/guides/local-development
SupabaseではDockerを利用したローカル開発ができますが、Neonにその機能はありません。

まとめ

Supabaseの用途

  • モバイルアプリやWebアプリの開発に適している
  • 豊富な認証機能やリアルタイム機能、ストレージ管理など、アプリ開発に必要な機能が充実
  • AIアプリ開発にも役立つ機能が用意されている

neonの用途

  • 自動スケーリングが可能で、必要に応じてリソースを柔軟に調整できる
  • データベースに特化したサービスで、高速性や柔軟なブランチ管理などの特徴がある
  • 幅広い言語/フレームワークをサポートしているため、様々な開発環境で利用可能

つまり、Supabaseはアプリ開発向けのサービスで、neonはデータベース管理に特化したサービスといえます。
用途に合わせて適切なサービスを選択することでより良い開発体験を得られると思います。
是非両方とも試してみてください。

SupabaseのTIPSリンク集
  • システム開発、アプリ開発
  • マッチングアプリ開発
  • インフラ構築支援等、なんでもご相談ください。
よかったらシェアしてね!
  • URLをコピーしました!
目次