PostgreSQL DBMS に基づく MongoDB の実装である FerretDB 0.3 のリリース

FerretDB 0.3 プロジェクトのリリースが公開されました。これにより、アプリケーション コードを変更せずに、ドキュメント指向 DBMS MongoDB を PostgreSQL に置き換えることができます。 FerretDB は、MongoDB への呼び出しを PostgreSQL への SQL クエリに変換するプロキシ サーバーとして実装されており、PostgreSQL を実際のストレージとして使用できるようになります。 コードは Go で書かれており、Apache 2.0 ライセンスに基づいて配布されています。

MongoDB の独自の SSPL ライセンスへの移行に関連して移行の必要性が生じる可能性があります。このライセンスは AGPLv3 ライセンスに基づいていますが、アプリケーション コード自体だけでなく SSPL ライセンスの下で提供するという差別的な要件が含まれているためオープンではありません。だけでなく、プロビジョニング クラウド サービスに関与するすべてのコンポーネントのソース コードも含まれます。

FerretDB の主な対象者は、アプリケーションで MongoDB の高度な機能を使用しないが、完全にオープンなソフトウェア スタックを使用したいユーザーです。 開発の現段階では、FerretDB はまだ、一般的なアプリケーションで最も頻繁に使用される MongoDB 機能の一部のみをサポートしています。 将来的には、MongoDB のドライバーとの完全な互換性を実現し、MongoDB の透過的な代替として FerretDB を使用できる機能を提供する予定です。

MongoDB は、キー/値データを操作する高速でスケーラブルなシステムと、機能的でクエリが簡単なリレーショナル DBMS の間のニッチを占めます。 MongoDB は、JSON のような形式でのドキュメントの保存をサポートし、クエリを生成するためのかなり柔軟な言語を備え、保存されたさまざまな属性のインデックスを作成でき、大きなバイナリ オブジェクトのストレージを効率的に提供し、データベースにデータを変更および追加するための操作のログをサポートします。 Map/Reduce パラダイムに従って動作し、レプリケーションとフォールト トレラント構成の構築をサポートします。

FerretDB 0.3 リリースでは、ドキュメントを変更しても元のバージョンに戻す findAndModify コマンドが導入されました。 フィールド更新演算子 $inc と $set が実装されました。 スカラー データ型の並べ替えのサポートが追加されました。

出所: オープンネット.ru

コメントを追加します