2011-12-17 1 views
1

私は現在、「マイクロブログ」タイプのアプリケーションを開発中です。私はRails3とMySQLを使用しています。私はこれが本当に良いアイデアかどうか疑問に思っています。 2〜3年後のステータス表には、何百万行も含まれている可能性があります。Railsマイクロブログ(No)SQL

MySQLはこの金額を処理できますか、MongoのようなNoSQLソリューションに変換できますか?私は開発の初期段階ですので、この状態でアプリを変換することは問題ではありません。

あなたはどう思いますか?これは、SQLとNoSQLについての質問ではありません。この種のアプリに最適なものは何ですか?

/トビアス

答えて

2

これはあなたのマイクロブログアプリの願望についての詳細なしに答えるのは難しい質問です。それはあなたがそれをどのように設計し、どのように人々がそれを使用するかによって異なります。

しかし、一般的に(ここで手を振って)、このタイプのアプリケーションはNoSQLソリューションで最もよくモデリングできます。あなたは、基本的なモデルのカップルを持っています

:関連情報のあなたには、いくつか(または全て)を含むオブジェクトとして投稿をモデル化することができMongoDBのようなソリューションを持つユーザー、ブログ、記事、コメント、添付ファイル

他の方法では同じ情報を得るために結合しなければならない別個のコレクション/テーブルではなく、埋め込みオブジェクトとしてコメント、コメント、添付ファイル、お気に入り、保存(少し非正規化)

あなたがデータストアからポストオブジェクトを取得するとき、あなたはそれと一緒にすべてこの豊富なメタデータを持っているので、これはあなたのブログがである場合は

(でそのデータを結合する余分なコストをかけずに)クールですこの情報がめったに使用されないか表示されるタイプのデザインでは、このタイプのデザインではパフォーマンスの面で大したことはありません。

もちろん、従来のデータベースを使用して非正規化することもできますが、NoSQLのアプローチはデータモデルに適しています。

関連する問題