Supabase-サービスとしてのバックエンド

Firebaseに代わる真のオープンソース

機能豊富なバックエンドスイートであるSupabase

タイトルを読み間違えて、タイプミスをしたが「Firebase」を意味していると思われる場合は、実際には、この記事のトピックに思っているよりも近づいています。 Supabaseは、バックエンドをサービスとして管理できるようにする一連のバックエンド機能です。その機能セットは、「Google Cloud Platform」に基づいて構築され、サービスとしてのバックエンドも実行できるGoogleの製品であるFirebaseの機能と非常によく似ています。

Firebaseの代替

SupabaseとFirebaseの両方にコア機能の非常に大きな共通部分があるため、SupabaseはFirebaseの代替と見なすことができます。提供される機能は次のとおりです。

  • 認証管理
  • 永続ストレージ用のデータベース
  • 画像、ビデオ、ドキュメントなどのファイルのアセットストレージ
  • サーバーレス機能ですが、まだ利用できません

ご覧のとおり、最も重要な機能はSupabaseによって提供されており、将来的にはサーバーレス機能が登場します。 Supabaseがホストするサービスを使用して、無料利用枠で数分で起動して実行できます。より頻繁に使用する場合は、もちろん有料プランにアップグレードできます。

Supabaseには、ローカルセットアップを使用して、CLIを介した開発中にテストするオプションもあります。これは事実上、構成するための組み込みのステージング環境と本番環境が付属していることを意味します:ローカルでのステージング、クラウドでの本番。もちろん、これは非常に単純化されていますが、完全なローカルテスト用のCLIを提供していることを指摘したいと思います。これは素晴らしいことです。

SupabaseとFirebaseの違い

共通の機能セットを共有していますが、それらの実装と開発戦略はどちらもGoogleのFirebaseとは大きく異なります。何よりもまず、Supabaseは完全にオープンソースで開発されています。つまり、基本的にプロジェクトのあらゆる側面に貢献できます。 Firebaseでは、クライアントとadmin-SDKのみがオープンソースソリューションとして利用可能であり、サービスの実際の実装は非表示になっています。

Supabaseのオープンなアプローチには、実際に自分で、自分のインフラストラクチャでホストできるという副作用があります。必要に応じてカスタムサービスをフォークして開発するオプションがあるため、これはFirebaseに比べて大きなメリットです。これは、製品のこのようなコアコンポーネントの寿命を検討する際の重要な側面です。

もう1つの非常に重要な違いは、SupabaseがFirebaseのようなNoSQLデータベースの代わりにPostgreSQLを使用することです。 FirebaseデータベースであるFirestoreが完全に独占的であることを考えると、これも大きな違いです。 PostgreSQLは、将来的にSupabaseから他のPostgreSQL-DBにデータを技術的に移行できるようにする一般的なストレージソリューションです。

通知やMLソリューションなど、Firebaseが提供する他のサービスに関しては、Supabaseに類似したものはありません。このようなものをデプロイするには、AWS、Azure、または明らかにFirebaseなどの他のプロバイダーが引き続き必要です。

結論

ご覧のとおり、Firebaseが提供するものは気に入っているが、Google製品を使用したくない場合は、Supabaseが実行可能な代替手段です。また、将来のデータベースの移行やFirebaseのサービスの独自コードについて懸念がある場合、Supabaseはオープンソース製品としての開発において完全に透過的です。執筆時点ではパブリックベータ版ですが、中規模のプロジェクトで使用できるようになっている必要があります。