MongoDBを使用することをお勧めします。私は現在、数百万のドキュメントを格納しているインスタンスをいくつか持っています。通常のリレーショナルスキーマとは異なり、MongoDBのサブ文書のサポートを使用することができます。
MongoDBはNoSQLデータベースですが、データベースや日常のオブジェクト指向に精通していれば、使いやすく、使い始めることができます。
のMongoDBはルビーを含む最も人気のある言語用のドライバを持っているので、あなたは、Ruby用のドライバをインストールすることができます(それはあなたが使用したいものだと仮定して)宝石を使用して、次のコマンドを実行して:
gem install mongo
そしてDebianを使用している場合/ Ubuntuは単に次のものを持っています:
apt-get install mongodb
これはあなたが始めなければなりません。
各レコードのサイズにもよりますが、さまざまなデザインを採用することができます.MongoDBは現在、1文書につき16MBという制限がありますので、意識する必要があります。
私はその後、店に使用される別のコレクションを持っている基本的なあなたが監視しているサイトについての情報(名前、URL、クライアントへの参照、...)
を格納するために、ウェブサイトの名前のコレクションを持っているでしょうあなたの統計は、 "統計"と呼ばれることがありますが、私はあなたのサブ文書(毎分の統計)を1日分のデータを保持する別の文書の中に保存します。
だから、統計の各文書はのようになります。あなたが開始される
{
_id : X,
website_id : STORE_THE_ID_HERE,
timestamp_start : PUT_THE_TIMESTAMP_WHEN_YOU_START_MONITORING_HERE,
timestamp_end : SAME_AS_ABOVE_REALLY,
stats_count : A_DENORMALIZED_COUNT_OF_STATS
stats : [ { views : X, clicks : X2, ... },
...
]
}
希望、私はあなたがそれを試してみることを喜んでいる場合にMongoDBは完全にあなたの要件に合うと思います。
その答えは私にとって素晴らしいと思います。私はそれを試してみましょう! – Arti