データAPIと HTTPS endpoints を使用すると、Atlas クラスター内のデータへの REST インターフェースを作成できます。検討すべき代替策は次のとおりです。
MongoDB ドライバーとネイティブ言語フレームワーク
MongoDB ドライバーとクラウドネイティブ関数
パートナー ソリューション
MongoDB ドライバーとネイティブ言語フレームワーク
選択したネイティブ言語フレームワークで MongoDB ドライバーを活用して、自己管理型アプリ スタックに REST API を作成します。
Node.js と Express
ExpressはREST APIを構築するための一般的なフレームワークであり、MongoDBネイティブノードドライバーと組み合わせて使用することで、アプリケーションのREST APIエンドポイントとなる接続されたデバイスを公開できます。
詳細については、 公式Expressドキュメント を参照してください。
Java とspringBoot
Java を参照してください。
詳細については、 公式springBoot ドキュメントを 参照してください。
Python と FastAPI
FastAPIは、標準のPython型ヒントに基づいたAPIを構築するための、モダンで高速なPythonフレームワークです。3.6
詳しくは、 公式 FastAPI ドキュメント を参照してください。
RESTHeart
RESTHeartは、REST、GraphQL、WebSocket APIを通じてMongoDBの機能を利用し、永続的なデータAPIを提供するオープンソースのランタイムです。RESTHeartは、MongoDBの機能、組み込みの認証と承認、Java、Kotlin、JavaScript、TypescriptのサポートのためのREST APIを提供します。
詳細については、 公式RESTHeart ドキュメント を参照してください。
MongoDB ドライバーとクラウドネイティブ関数
MongoDB ドライバーとサーバーレス関数を活用して CRUD 操作を実行します。
AWS Lambda
Amazon Web Services Lambdaは、イベントに応じてコードを実行し、コンピューティングリソースを自動的に管理するコンピューティングサービスです。これにより、考えを最新の本番環境のサーバーレスアプリケーションにすばやく変換できます。
詳しくは、 「 Amazon Web Services Lambda の公式ドキュメント 」を参照してください。
Azure Functions
Azure Functions は、イベント駆動型のサーバーレスでスケーラブルなソリューションであるため、コードの数を減らし、インフラストラクチャを少なくし、コストを節約します。サーバーの配置と維持を心配する代わりに、クラウドインフラストラクチャはイベントによってトリガーされるたびに、アプリケーションコードの実行に必要な最新のリソースをすべて提供します。詳しくは、 Azure Functions の公式ドキュメント を参照してください。
Atlas Data API の代わりにAzure Function を配置
すべての 9 Atlas Data API (findOne、find、insertOne、insertMany、deleteOne、deleteMany、updateOne、updateMany、aggregate を含む) を複製する Azure Function アプリを配置できます。次のワンクリック配置オプションについては、この GitHub repo を参照してください。
Zip 配置: Azure Function App をAzureテナントに迅速かつ単一ステップで配置します。
Githubアクション: CI/CDパイプラインの配置。関数コードを維持および拡張する予定の場合に推奨されます。
配置したら、Function アプリのキーで承認された関数URL(目的の操作を付加したもの)を呼び出して操作を実行します。その際、以前のData API Base URLとAPIキーを置き換えてください。例として、URL https://<function-app-name>.azurewebsites.net/api/mdb_dataapi/action/findOne に対して書き込みメソッドを使用し、キーラベルを「x-functions-key」、値をFunction アプリのキーとして承認することができます。
サンプルリクエストについては、 Postmanコレクションを参照してください。
Azure機能を使用するように更新された Power Platform Connector
Power Automate、Power Apps、Logic Apps、またはCopilot Studioのカスタマーの場合、Power Platform用のMongoDB Connectorは、Data APIの代わりにAzure関数を使用するように更新されました。開始するには、配置オプションのいずれかを使用してAzure Function アプリを配置し、MongoDB Premiumコネクタまたはカスタムコネクタで接続を作成するときにAzure関数を参照します。
操作上の考慮事項
Azure関数には、環境変数としてMongoDB接続文字列列セット が必要です。 したがって、1 つのAzure関数は、1 つの特定のクラスターのみを対象とするリクエストを処理します。複数のMongoDBクラスターに接続する必要がある場合は、複数の関数を作成します。
Azure の関数はテナント内で実行されるため、モニタリングとスケーリングを完全に制御できます。対象クラスターのワークロードに応じて、 Azure Function App に SKU を割り当てることができます。
Google Cloud Platform関数を実行する
Cloud Runは、リクエストやイベントを通じて呼び出し可能なコンテナを実行できるマネージドコンピューティングプラットフォームです。
詳しくは、 Cloud Run の公式ドキュメント を参照してください。
Vercel、Node.js、 Express
Vercel は、開発者が構築、スケーリング、安全なウェブ アプリケーションを構築するのに役立つクラウドプラットフォームです。
Vercel の Vercel でのExpress.js の使用
詳しくは、 Vercel の公式ドキュメント を参照してください。
パートナー ソリューション
以下のMongoDBの提携する企業は、MongoDBにREST APIを公開するためのソリューションを提供しています。
Hasra
Hasra により、開発者は MongoDB やその他の多くのデータソースで GraphQL と REST API を迅速に構築して配置できるようになります。 API 開発時間を大幅に短縮することで、次の生成数のアプリケーションやサービスのデータへの迅速なアクセスが可能になり、企業はデータを基盤とした製品と機能を販売する時間を短縮できます。
詳細については、 「 MongoDB GraphQL API移行ガイド 」を参照してください。
Eden
Edge は、アプリケーションが単一のユニバーサル インターフェースを介してMongoDBやさまざまなバックエンドシステムとシームレスにやり取りできるようにする統合APIレイヤーを提供します。データ インフラストラクチャの基盤となる複雑さを処理すると同時に、さまざまなデータ ストアにわたる分散トランザクションと準備されたリクエストをサポートすることで、Eden は開発チームが最も重要なものに集中できるようにします。
制限的な抽象化レイヤーを適用する従来のソリューションとは異なり、Eden はネイティブ クエリ サポートを維持し、チームが既存のMongoDBクエリと最適化を引き続き活用できるようにします。このプラットフォームはマルチエンドポイントのワークフローを専門的に調整し、インフラストラクチャに関する懸念事項を管理するため、エンジニアリング リソースを解放して主要アプリケーション開発に集中できます。
詳しくは、 Eden の公式ドキュメント を参照してください。
Depridge データAPI
Desktop は無料のオープンソースデータAPIを提供しており、廃止された Atlas データAPIのドロップイン代替として機能します。コードを書き換える必要はありません。 Debridge データAPI は本番環境用に設計され、一括操作、ネイティブMongoDBコマンド、カスタムHTTPエンドポイント、ネイティブMQLとNode.jsドライバーによるリアルタイム検証をサポートしています。
データAPI の配置や保護が必要な場合は、クラウド配置、エンタープライズ アクセス制御、監視、フルマネージド サポートのオプションのサービスを提供します。
詳しくは、 公式の Debridge データAPIページ を参照してください。
スナップショットロジック
Snap logical は、クラウド データソースを接続するための統合プラットフォームを提供します。
詳しくは、Snap Log のMongoDB Snap Package のドキュメントを参照してください。
モデル化
モデル化は、組み込みの認証、データ API、LVM 統合、 MongoDBとのディープ統合 を提供するオープンソースのTypescriptプラットフォームです。
詳しくは、 公式のモデル化ドキュメント を参照してください。
Considerations
代替ソリューションに移行すると、Atlas App Servicesが提供する補助機能にアクセスできなくなります。これらの機能のどれを使用しているかに応じて、新しいソリューションで同等の機能を実装する必要があります。このプロセスの複雑さは、これらの機能にどの程度依存しているかによって異なります。代替ソリューションを評価する際は、次の点を考慮してください。
Atlas Functions Global Context は利用できなくなります
Global Modulesは、使用する前にノードおよびBSONパッケージに再マッピングする必要があります。
Bearerベースまたは認証情報ヘッダーベースの認証はどちらも利用できません
Values and Secrets は利用できなくなります
アプリ Servicesデータアクセス権限は利用できなくなります
サポートを受ける
MongoDBサポートポータルまたは担当アカウントエグゼクティブを通じて、サポートチームにお問い合わせください。