3

私はブロガー(blogspot)のようなウェブアプリケーションを開発しようとしています。私はユーザーを持っているつもりです、すべてのユーザーはブログを持っています、ユーザーは彼のブログに投稿することができます、投稿はタグを持っています。他のユーザーは、タグまたはテキストで検索できる必要があります。ブログには設定とテーマがあります。

mongodbを使用するのは良いですか、それとも別のデータベースを提案していただけますか?

4

2 に答える 2

5

私は趣味で似たようなソフトウェアを個人的に開発していて、メインデータベースとしてMongoDBを選んだので、この経験に照らしてお話します。

MongoDBを使用することにしたいくつかの理由:

  • 優れたスケーラビリティ
  • GridFSを介してバイナリファイルをDBに効果的に保存する可能性
  • 埋め込みドキュメントを使用した柔軟なスキーマ設計(投稿へのコメントなど)
  • タグのような機能に役立つ配列内の値を探す簡単な方法
  • プログラム側の操作が簡単なbsonフォーマット

いくつかの悪い選択は長期的にはパフォーマンスに影響を与える可能性があるため、よく考えたいのはスキーマ設計です。特に埋め込みドキュメントまたは参照の使用に関して。
ツリーも実装が難しい場合がありますが、それほど複雑なことはありません。

あなたが価値があると思うかもしれないいくつかのリソース:

また、MongoDBの概要を知りたい場合は、KyleBankerによる「MongoDBInAction」を読むことを強くお勧めします。

アップデート:

Akshat Jiwan Sharmaが指摘したように、LittleMongoDBBook非常に優れた無料のリソースです。

于 2012-12-12T15:36:30.513 に答える
1

ブログシステムはmongoDbの良い使い方ですが、その使いやすさを評価する際に直面した特定の問題がありました。

1)ホストプロバイダー:-MongoDbには2つの有名なホスティングプロバイダー(mongoLabとmongoHq)しかなく、どちらも高額な料金がかかります。GodadymongoDbのような共有ホスティングプラットフォームでは機能しません。そのため、2つの選択肢があります。

a)2つのプロバイダーのいずれかを使用します。

b)やはり非常に高価なVPS(または最初の1年間は無料のamazonのようなクラウドホスティングシステム)を使用します。

2)アプリケーションのサーバーも把握する必要があります。これにより、ホスティングのコストが増加します。

したがって、ブログアプリケーションの場合、ホスティングに費やすお金がない限り、mongoDbはお勧めしません。

別のチェックアウトcouchDbとして、2つの大きな利点があります。

1)アイリスカウチによる無料から安価なホスティング。

2)Couchアプリ。基本的に中間のアプリケーション層を切り取り、データベース自体からアプリケーションをホストできるようにします。

luceneとsolrの利用可能なプラグインの多くを使用して、couchdbの全文検索を簡単に統合できます。個人的には、実装が非常に簡単なように見えるため、ElasticSearchに傾倒しています。

couch dbを学ぶのはそれほど難しくなく、私の意見ではブログに最適なcouchAppsを作成するのは非常に簡単です。

お役に立てれば。

于 2012-12-12T15:37:28.940 に答える