-

コミュニティサイトでユーザーの行動履歴を残したいと思っているのですが、一つ一つデータベースに挿入していると、規模が大きくなればじきに無理が来そうです。例えばgoogleではアカウント登録してから今までの検索履歴を全て参照可能ですが、それはどのように行なっているのでしょうか?ユーザー一人につきJSONなど別ファイルを用意するほうが現実的でしょうか。

みんなの回答 4 件

名無しさんの回答

googleAnalyticsなどを使うか、システム側でDBに入れます。
不可を心配する程ユーザーがいるならサーバ屋さん、DB屋さんに相談するくらいの予算はでるでしょう。

名無しさんの回答

ようはDBの構成や負荷の話ですよね? しかるべき構成にして、規模に付随したサーバーのスペックがあれば問題ないと思いますよ。あなたがDBを担当する人でしたら失礼ですが、餅は餅屋だと思いますよ。

名無しさんの回答

分散処理、NoSQL

名無しさんの回答

まず企画の段階で、過去1ヶ月分だけ保存するなどとしておきます。
(過去全てに渡って追跡可能にすると、時系列でDBを分けたりとサーバが増え続けることになります)
書き込みの負荷は、ユーザID等を用いて、DBサーバへのアクセスを水平分散(Sharding)させることになるでしょう。
参照負荷は、レプリケーションで比較的容易に分散可能です。

最終更新日:2012-05-04 (2,976 views)

関連するトピックス

ページ上部に戻る