MongoDBはNoSQLデータベースシステムです多くの開発者にとってドキュメント指向で人生を変えるものであり、リレーショナルデータベースよりも高速にアプリケーションを構築できます。 ただし、MongoDBはオープンソースのルートを放棄し、ライセンスをSSPLに変更しました。 多くの商用およびオープンソースプロジェクトでは使用できなくなります。
この前に、完璧なソリューションであるMangoDBが紹介されました MangoDBは、PostgreSQL上で実行されるMongoDBプロトコルのドキュメント指向の実装を備えたレイヤーを提供するため、MongoDB開発エクスペリエンスをお探しの方に最適です。
プロジェクト MongoDBアプリケーションをPostgreSQLに移行する機能を提供することを目的としています 完全に開いたソフトウェアスタック。 コードはGo言語で記述されており、Apache2.0ライセンスの下で配布されています。
MongoDBはドキュメント指向のデータベース管理システムであることに注意してください これは、任意の数のコンピューターに分散でき、事前定義されたデータスキーマを必要としません。 これにより、デフォルトのスキーマを使用せずに、BSON形式(バイナリJSON)で構造化オブジェクトを処理できます。
つまり、キーは「オンザフライ」でいつでも追加できます。 ベースを再構成せずに。 データはドキュメントの形式を取り、コレクションは任意の数のドキュメントを含むコレクションに格納されます。 コレクションはテーブルのようなものであり、ドキュメントはリレーショナルデータベースのレコードのようなものです。
サーバー側のパブリックライセンス (SSPL)は、MongoDBIncによって開発されたプロプライエタリソフトウェアライセンスです。。 MongoDBによると、SSPLはAGPL3ライセンスに基づいており、「ライセンスされたプログラムをサードパーティサービスとして配布するための条件を明確かつ明示的に確立する」新しいセクションが追加されており、ソフトウェアは、サービスの一部として一般に公開されています。
この変化 2018年XNUMX月にロールアウトされ、Debian、Red Hat Enterprise Linux、およびFedoraディストリビューションはその後MongoDBを放棄しました。 SSPLに関する懸念を引用しています。 AmazonはDocumentDBと呼ばれるサポートされているが独自仕様のサービスをリリースし、SSPLはMongoDBのクラウド収益を増やすことができなかったようです。 ほとんどのMongoDBユーザーは、MongoDBが提供する多くの高度な機能を必要としませんが、オープンソースのデータベースソリューションが必要であり、ここでMangoDBが役立ちます。
私たちのソリューションの中核はステートレスプロキシです。これはMongoDBプロトコルクエリをSQLに変換し、データベースエンジンとしてPostgreSQLを使用します。 これはMongoDBドライバーと互換性があり、多くの場合、MongoDBの直接の代替として機能するはずです。
MangoDBは、MongoDBに代わる事実上のオープンソースになることを目指しています。 MangoDBはオープンソースプロキシであり、MongoDB有線プロトコルクエリをSQLに変換し、データベースエンジンとしてPostgreSQLを使用します。 MangoDBはMongoDBドライバーと互換性があり、多くの場合、MongoDBの直接の代替として機能します。
プログラム MangoDBへの呼び出しをPostgreSQLへのSQLクエリに変換するプロキシとして機能します。 PostgreSQLを実ストレージとして使用します。 このプロジェクトはMongoDBのドライバーをサポートしていますが、まだプロトタイプ段階であり、MongoDBプロトコルの高度な機能はサポートしていませんが、単純なアプリケーションの翻訳にはすでに適しています。
MongoDB DBMSの使用を回避する必要性は、プロジェクトがAGPLv3ライセンスに基づく非フリーSSPLライセンスに移行したために発生する可能性がありますが、SSPLに基づいて提供する差別的な要件が含まれているため、オープンではありません。アプリケーション自体のコードだけでなく、クラウドサービスの提供に関係するすべてのコンポーネントのソースコードも含まれます。
最後に あなたがそれについてもっと知りたいのなら MangoDBについては詳細を確認できます 次のリンクで。