2025年2月3日

Prisma Postgres: サーバーレスデータベースの未来

Prisma Postgresは開発者のためのデータベースであり、ついに本番環境で利用可能になりました!Cloudflare、ユニカーネル、ベアメタルインフラストラクチャ上に構築されており、コールドスタートゼロ、グローバルキャッシュ、コネクションプーリングなど、独自のメリットを提供します!

Prisma Postgres: The Future of Serverless Databases

Prisma Postgresが本番環境で利用可能に 🎉

Prisma Postgresは、ユニカーネルとCloudflareインフラストラクチャに基づいた独自の技術スタック上に構築されています。これにより実現される主な機能とメリットは以下の通りです。

  • コールドスタートゼロ:遅延なくデータベースに即座にアクセスできます。
  • 充実した無料枠:月間10万オペレーション、1GiBストレージ、10データベース。
  • グローバルキャッシュ層:クエリ応答はエッジで簡単にキャッシュされます。
  • 組み込みのコネクションプール:TCP接続を気にすることなくアプリをスケールできます。
  • パフォーマンスのヒント:クエリを高速化するためのAIパワードな推奨事項。
  • シンプルな従量課金:オペレーションとストレージに基づいた予測可能なコスト。

**クイックスタート**に従って今すぐお試しいただくか、以下のコマンドをターミナルで実行するだけです。

未来のために構築されたサーバーレスデータベース

Prisma Postgresは、最初から開発者を念頭に置いて設計されました。複雑なセットアップフローやデータベース設定はもう必要ありません。Prisma Postgresインスタンスを設定すれば、すぐにクエリを開始できます。

サーバーレスでありながら、コールドスタートなし

サーバーレスデータベースは、データベースが使用されたときにのみコストが発生する従量課金モデルのため優れています。しかし、このアプローチの欠点の1つは、データベースがゼロにスケールダウンされると、再度「ウェイクアップ」する必要があることです。このウェイクアッププロセスはコールドスタートとして知られ、ユーザーに深刻な遅延を引き起こす可能性があります。

Prisma Postgresは、革新的なアーキテクチャとベアメタルマシンで動作するミリ秒単位のクラウドスタックにより、**コールドスタートのない最初のサーバーレスデータベース**です。

無料:10万オペレーション、1GiBストレージ、10データベース

新しいテクノロジーを試したり、プロトタイプを構築したり、趣味のプロジェクトに取り組んだりするのに、お金がかかるべきではありません!Prisma Postgresは、コストを気にすることなくどんなプロジェクトでも始められる充実した無料枠を提供します。

これは、Prisma Postgresが**ユニカーネル**(「超特化型オペレーティングシステム」と考えると良いでしょう)に基づき、超軽量のマイクロVMとして動作しているため可能です。これらのユニカーネルは非常に効率的で、1台のマシン上で数千のデータベースインスタンスを実行できます。

ユーザーとして、これはワークスペースごとに最大10個のデータベースを無料で作成し、試したり小さなプロジェクトを構築したりできることを意味します。また、コストを気にせず自由に使える10万オペレーションと1GiBのストレージも利用できます。

シンプルで予測可能:誰でも理解できる料金体系

Prisma Postgresの**料金**は、他のデータベースプロバイダーとは異なります。従来の料金モデルとは異なり、事前のリソース割り当て、計算時間、出力データではなく、データベースオペレーション数GiBストレージに対して課金されます。

オペレーションは、Prisma ORMを使用してPrisma Postgresインスタンスに対して作成、読み取り、更新、削除を行うたびにカウントされます。

このような料金モデルでは、開発者が通常最初に懸念するのは、「予期せぬ大量のトラフィックがあった場合に、莫大な予期せぬ請求を防ぐにはどうすればよいか?」ということです。簡単な答えは、予算を管理し、過剰なコストを避けるために利用制限を設定できることです。

Blog image

私たちの目標は、他のプロバイダーよりも料金体系を大幅にシンプルにすることです。この料金モデルにより、アプリケーションが実際に受けるトラフィックに基づいて、使用量を予測し、コストをより簡単に検討できます。従来の料金体系では、スケーリングの負担はあなたにありました。低トラフィック期間と高トラフィック期間(ほとんどの本番アプリのように)がある場合、トラフィックの多い期間にダウンタイムのリスクを冒してリソースを過少にプロビジョニングするか、データベースに多額の費用を払って過剰にプロビジョニングするかのどちらかでした。

Prisma Postgresの従量課金モデルなら、本当に必要な分だけ支払うことができます!

ユーザーに近いグローバルキャッシュからデータを配信

Prisma Postgresの大きなメリットの1つは、クエリごとにデータベースキャッシュを設定できることです。データベースの結果はエッジでキャッシュされ、物理的に近い場所からアプリケーションに提供されます。

キャッシュ戦略を設定するのは非常に簡単です。cacheStrategy オプションに ttl および/または swr オプションを追加するだけです。

**ttl**(Time-To-Live)および**swr**(Stale-While-Revalidate)オプションは、現在キャッシュされているデータがどれくらいの期間「フレッシュ」と見なされるべきか、またキャッシュの更新をバックグラウンドで行うべきかをPrisma Postgresに指示します。Prisma Postgresのキャッシュは、**オンデマンドキャッシュ無効化**のような高度なユースケースもサポートしています。

様々な**キャッシュ戦略とそのユースケース**については、ドキュメントで詳しく学ぶことができます。

組み込みのコネクションプーリングで楽々スケール

コネクションプールは、アプリケーションをスケールし、ユーザーのリクエストに迅速かつ効率的に応答させたい場合に不可欠なコンポーネントです。その理由は、データベース接続の作成はコストのかかる操作であるため、新しい接続を頻繁に再開する(または最悪の場合、すべての新しいユーザーリクエストごとに再開する)ことを避けたいからです。

これは、アプリケーションがサーバーレス関数やエッジ関数を介してデプロイされている場合に特に重要です。これらの環境は一時的であるため、データベース接続を開いたままにすることができません。その結果、リクエスト数が利用可能な接続数を超えると、トラフィックの急増時にアプリケーションが失敗することになります。

Blog image

Prisma Postgresの組み込みコネクションプールは、これらの障害シナリオを防ぎ、余分な労力なしにトラフィックの急増に対応するのに役立ちます!また、接続は一度開かれ、今後のリクエストで再利用されるため、新しい接続を確立する必要によるクエリの遅延も防ぎます。

Prisma ORMとのファーストクラス統合

Prisma ORMは、Node.jsおよびTypeScriptエコシステムで**最も人気のあるORM**です。開発者は、人間が読めるスキーマ、自動マイグレーション、タイプセーフなクエリを理由にこれを愛用しています。

以下は、Prisma ORMでデータをモデル化する方法の例です。

Prisma ORMは、このスキーマをSQLマイグレーションに変換し、データベースのスキーマを更新します。テーブルが作成されたら、Prisma ORMの直感的なクエリAPIでデータを読み書きできます。

Prisma Postgresは、Prisma ORMとシームレスに連携するように設計されており、最適なパフォーマンスとスケーラビリティのために密接に統合されたコネクションプールを活用しています。他のORMに対する直接のTCP接続は現在利用できませんが、将来的には互換性を拡大するよう積極的に取り組んでいます。クエリエディタやその他のツールを使用したい場合は、**ローカルTCPトンネル**を使用してORMの外部からPrisma Postgresと対話できます。

Netlify、Vercel、IDX:統合をお試しください

Prisma Postgresは、NetlifyサイトとPrisma Postgresインスタンスを簡単に接続できる**Netlify拡張機能**を介して利用できます。興味があれば、Prisma Postgresを使用して**Next.jsサイトをNetlifyにデプロイする**チュートリアルをご覧ください。

Vercel Marketplace向けの統合は近日中に提供予定です。それまでの間、公式の**Next.js 15 と Prisma Postgres のサンプル**をご覧ください。

また、Googleの素晴らしいオンラインIDEである**Project IDX**の皆さんと協力して、ブラウザを離れることなくPrisma Postgresを試せるテンプレートを作成しました。まもなく公開されます!

次世代インフラストラクチャ上に構築

これらの独自のメリットと機能を可能にする基盤技術について説明しましょう。

ユニカーネル上で動作する初のデータベース

Prisma Postgresを支えるユニカーネル技術の進歩に非常に興奮しています!ユニカーネルは、アプリケーションを実行するために**実際に**必要なリソースのみを持つ「特化型オペレーティングシステム」です。

ユニカーネルは以前から存在し、私たちは長い間、新興の技術トレンドとして注目してきました。ユニカーネル分野のパイオニア企業である**Unikraft**との協業を開始した際、ついに高性能な本番ワークロードに対応できる準備が整っていることを発見しました!そこで、Prisma Postgresをユニカーネル上に構築することにしました。

ユニカーネルは、起動時間、スループット、メモリ消費など、いくつかの指標において優れたパフォーマンスを提供することで知られています。

**Unikraft: 高速で特化したユニカーネルを簡単に** (研究論文、EuroSys 21)発表:Vercel Marketplace向けPrisma Postgres統合

Unikraftと協力して、Prisma PostgresのバイナリイメージをオリジナルのPostgreSQLイメージの**20%未満**のサイズに削減することに成功し、Prisma Postgresのアーキテクチャをさらに効率化しました。

これらの特化されたバイナリイメージは、自社のベアメタルマシン上にユニカーネルとしてデプロイされます。そして、ユニカーネルは最終的に仮想マシンであるため、各PostgreSQLインスタンスは強力なハードウェアレベルの分離を提供します。

Cloudflare上に構築されたキャッシュ層

Prismaでは、私たちはCloudflareの大ファンであり、クラウドコンピューティングの分野に大きな足跡を残すと強く信じています。だからこそ、Prisma Postgresのキャッシュ層をグローバルなCloudflareインフラストラクチャの上に構築しました。

キャッシュはCloudflare Workersを介して実装されており(エッジでデータをキャッシュするため)、公式のCloudflare Caching APIを使用しています。

Prisma Postgresの技術スタックの詳細と内部での動作に興味がある方は、この技術的な深掘り記事をご覧ください:Cloudflare、ユニカーネル、ベアメタル:Prisma Postgresクエリのライフサイクル

まだ始まったばかりです!

本日、Prisma Postgresの公式一般提供開始は、当社にとって大きな節目となります!過去数か月間、コミュニティの皆様から寄せられた強力なサポート、貴重なフィードバック、そして全体的な熱意に心から感謝いたします。皆様がいなければ、Prisma Postgresをここまで到達させることはできませんでした。ありがとうございます💚

しかし、私たちはここで止まりません。今後数週間のうちに、さらにエキサイティングな発表にご期待ください。

また、今週は毎日、Prisma Postgresに関する素晴らしいニュースとリソースを共有し続けます!

今週金曜日の午前10時(東部標準時)/午後4時(中央ヨーロッパ時間)に開催される**ライブストリーム**にもぜひご参加ください。Prisma Postgresで何ができるかを探求し、エンジニアを招いて技術的な深掘りを行います。

Prisma Postgresに次にどのような機能を追加してほしいかお知らせください:**X****LinkedIn**でご連絡いただくか、弊社の**YouTubeチャンネル**を購読したり、**Discord**にご参加ください。


Prisma Postgresを試す

次の投稿をお見逃しなく!

Prismaニュースレターに登録

© . All rights reserved.