Prismaはデータ操作を容易にします!タイプセーフなNode.js & TypeScript ORM、グローバルデータベースキャッシュ、接続プーリング、リアルタイムデータベースイベントを提供します。
// Creating a new recordawait prisma.user.create({firstName: “Alice”,email: “alice@prisma.io”})
id firstName email1 Bobby bobby@tables.io2 Nilufar nilu@email.com3 Jürgen jums@dums.edu4 Alice alice@prisma.io
CockroachDBは、クラウドアプリケーションとサービス向けに構築された、リレーショナルデータベースであり、PostgreSQLのワイヤープロトコルと互換性があります。スケールに関するタスクを自動化するため、開発者はリレーショナルデータベースが提供するデータの整合性、またはNoSQLの可用性のどちらかを選択する必要がなくなります。また、CockroachDBを使用すると、開発者はデータベースのデプロイや継続的な管理/運用について心配する必要がありません。
Prismaは、CockroachDBとシームレスに統合し、開発ライフサイクル全体をサポートするオープンソースORMです。Prismaスキーマを使用してデータベーススキーマを宣言的に定義し、Prisma Clientを使用してCockroachDBから完全にタイプセーフな方法でデータを取得できます。
2つのテクノロジーを組み合わせることで、開発者はデータベースのホスティングとスケーリングの専門家でなくても、分散データベースのスケーラブルなインフラストラクチャにアクセスできるようになります。
Prismaスキーマは、Prismaのモデリング言語を使用してデータベーススキーマを定義します。データモデリングを簡単かつ直感的に行えるようにします。特に、リレーションのモデリングに役立ちます。
データベーススキーマの移行は簡単です。Prismaスキーマのデータモデルを更新し、prisma db push
を実行してスキーマの変更を適用すると、CockroachDBがクラスター内の各データベースへの変更の適用を処理します。
1// Define the `User` table in the database2model User {3 id String @id @default(cuid())4 email String @unique5 password String6 name String?7 posts Post[]8}910// Define the `Post` table in the database11model Post {12 id String @id @default(cuid())13 title String14 content String?15 authorId String16 author User @relation(fields: [authorId], references: [id])17}
「CockroachDBとPrismaは最高の組み合わせです。データが簡素化されるだけでなく、データベース操作が不要になるため、本来注力すべきコードに集中できます。」
CockroachDBはデータベースを単一の論理データベースにクラスタリングするため、スキーマ移行を段階的に適用できます。
イントロスペクションを使用すると、データベーススキーマの読みやすい表現を取得できます。ここで、インデックスを表示および変更できます。
CockroachDBのマルチクラウドデプロイメントを使用すると、データベースクラスターを複数のプロバイダーに同時にデプロイすることで、クラウド固有の障害を回避できます。
Prisma Clientは、JavaScriptでもオートコンプリートなどの利点がある、完全にタイプセーフなデータベースクエリを保証します。
CockroachDBの分散データモデルにより、リレーショナルデータを単一の論理データベースであるかのように管理できます。
Prismaのモデリング言語は宣言型であり、データベーススキーマを直感的に記述できます。
ドキュメントのこのセクションでは、PrismaのCockroachDBデータソースコネクタの詳細について説明します。
ドキュメントのこのセクションでは、PrismaとCockroachDBの使用に関する概念、CockroachDBと他のデータベースプロバイダー間の共通点と相違点、およびアプリケーションをCockroachDBと統合するための構成プロセスについて学習します。
コミュニティメンバーやPrismaチームと交流できる複数のチャネルがあります。