人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

テーブル設計について質問です。

アクセス解析のようなASPを考えていまして、生ログを格納するテーブルをユーザー一人毎にテーブルを作るか、全体で1つにするかで迷っています。全体で1つにする設計での運用経験はあるのですが、ユーザー一人1テーブルでの運用経験がなくどういった問題が発生するのかが漠然としかわかりません。テーブルが分かれることでSQL1発で全体を集計できないとかそういうことぐらいしか想像がつきません。

生ログを解析する内容に左右されるところは大きいのですが、何かアドバイスを頂けたらと思います。

DBはMySQL4.1です。よろしくおねがいします。

●質問者: akiyan
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:ASP dB SQL アクセス解析 アドバイス
○ 状態 :終了
└ 回答数 : 2/3件

▽最新の回答へ

1 ● きゃづみぃ
●35ポイント

ユーザー単位で、ログテーブルを作るような設計は、私も 見かけたことがないですね。

というか、一回で検索できないですね。

何月何日にアクセスしたユーザーは?

というのを調べると、すべてのユーザーテーブルを調べないとダメです。

そのユーザーテーブルを管理するテーブルも必要となります。

SQLの発行回数が増えると、処理も遅くなります。

メリットはないと思いますよ。


2 ● web_pub_op
●35ポイント

ユーザが増減するような場合、各ユーザのテーブルの管理も

大変になりませんか?

ユーザが 1 万人だとすると、1 万個のテーブルを管理しなくては

なりません。

全体で1つにする設計が一般的ではないでしょうか。

全体ログのテーブルに、「ユーザID」 等のカラムを作成すれば

良いのでは?と思います。

ユーザが決まっていて、それぞれのユーザ毎に格納する

ログ情報が異なる、解析内容が異なる等の理由があれば、

ユーザ毎にテーブルを作成するのもありかと思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ