私はRSSリーダーアプリケーションに取り組んでいます。そして、バックエンドデータベースを見つける必要があります。ユーザーにデータベースサーバーをインストールさせたくないので、データベースを組み込みます。
SQLiteが良い選択であることは知っていますが、他にnosqlの選択肢があるかどうか疑問に思っていますか?
Googleグループによると、はい、できますが、どの程度正確かをカバーしていません。
はい。ただし、見栄えは悪く、アプリをAGPLライセンスに強制します。興味がある場合は、ツールが--dbpathオプションをどのように処理するかを見てください。
ソース: http://groups.google.com/group/mongodb-user/browse_thread/thread/463956a93d3fb734?pli=1
.NETを使用している場合、オプションの1つは RavenDB です。これはドキュメントデータベースであり、埋め込むことができます。
(承認された回答にコメントしてビルドするための50担当ポイントがまだありません;それ以外の場合は申し訳ありません!)
OEMソリューションにMongoDBを組み込むことができますが、考慮すべき2つの点があります。
C++で記述されているため、別の言語でコーディングする場合は、データベースプロセスを個別に起動するラッパーを記述する必要があります。
MongoDBは、コピーレフトサーバーライセンスであるGnu AGPL-3.0の下でライセンスされています。受け入れられた回答とGoogleのグループの引用は、どちらもこれにより通常はAGPLライセンスの取得を強制されると正しく述べています。ただし、MongoDbは、ライセンスの意図は、コードの改良版を返送できるようにすることであり、製品は分離されたままになると述べています。これにより、通常のコピーの残されたルールは適用されないと考えられます。
サーバーライセンスの目標は、MongoDBの拡張機能をコミュニティにリリースすることを要求することです。クラウドで膨大な量のソフトウェアが実行されるため、従来のGPLではこれを達成できなくなることがよくあります。たとえば、GoogleはMySQLカーネルの改善点をリリースする義務はありません。改善した場合は、ニースです。
上記を実用的にするために、データベースを使用するクライアントアプリケーションは別の作業であることをお約束します。これを容易にするために、mongodb.orgがサポートするドライバー(アプリケーションとリンクする部分)は、Apacheライセンスでリリースされます。これはコピーレフトフリーです。注:上記の約束を表明する署名入りの手紙が必要な場合は、メールでリクエストしてください。
チェックアウトしてください https://github.com/Softmotions/ejdb この問題を解決するために開発されたこのプロジェクト。
Couchbase Liteはどうですか?これは、オープンソースの埋め込み可能なドキュメントデータベースです。スタンドアロンのドキュメントデータベースとして機能できますが、実際の価値はリモートドキュメントデータベースと同期できることです。 iOS/Androidを対象としている場合がありますが、JVMがあれば何でも実行できます。
再利用可能なライブラリの観点から、MongoDBを組み込みライブラリとして使用する直接的な転送方法はありません。エリオット-10genの責任者-「持っているのはいいだろう」と話しました-しかし、健全な方法で再利用できるものはありません。
多くのOEMが、リアルタイム処理のためにMongoをハードウェアおよびデバイスに接続しようとしているようです。 MongoDBウェブサイトからのリンク