QA@IT

月間 1000 万 PV 程度の Web サービスのアクセス分析、スモールスタートするなら?

1177 PV

以下のような条件でデータ分析を行う場合、皆さんならどういった選択肢を採るでしょうか。

あくまでもスモールスタートが条件です。

システムの用意にあまり工数はかけないのが条件です。 (全ページにログを投げる実装を加える程度)
なので、手軽にインストールできるオープンソースのプロダクトであったり、PaaS であったりになると思います。
せいぜい 1 人が丸 1 ~ 2 日ぐらいで用意できるものがいいです。

徐々に、複雑な分析であったり、より多くのデータを扱うようになったり、といった拡張もできることが望ましいですが、とりあえず以下の条件を、なるべく労力・コストをかけずにクリアしたいと考えています。

収集するデータ

  • アクセス日時
  • ユーザ ID (Web サービス内の ID)
  • ページ識別子 (URL からパラメータ等のバラつきを無くしたようなもの /blogs/123/entries/1234 のような)
  • リクエスト URL
  • リファラ
  • User-Agent

収集するアクションは ページビュー のみです。
「コメント」や「お気に入りに登録」といった特別なアクションは収集しないので、「ページビュー数」イコール「収集されるレコード数」となります。

分析方法

「一定期間中のある条件におけるユニークユーザ数」など、単純なものです。

SQL でいえば

SELECT
    COUNT(DISTINCT user_id)
FROM
    accesses
WHERE
    DATE(created_at) BETWEEN '2012-10-01' AND '2012-10-30'
AND
    page_id LIKE '/blogs/%/entries/%'
GROUP BY
    page_id

といった程度のものです。 (これを本当に MySQL とかでやるとものすごく待たされると思いますが...)

とはいえ、こういったクエリが数分程度以内で返って来て、WHERE や GROUP BY にあたるパラメータは柔軟にしていできることが必要です。

予算

とりあえず月額 10,000 円程度が上限ですが、安ければ安いほどいいです。

  • Web分析は、ユーザーの動向が知りたい、セキュリティ上のアクセス解析に必要など方向性を絞らないと、ほとんど意味がなくなります。ましてや、今回おっしゃられる内容では、Apacheのログを分析するだけで十分に思えます。 -
  • ユーザIDの必要性を感じないので、私もApacheやIISのログでいいじゃんと思ってしまいますね。WindowsだとLog Parserがかなり強力で、テキストのログに対してSQLコマンド相応の検索を実行できたりします。 -
ウォッチ

この質問への回答やコメントをメールでお知らせします。