IN/OUTアクセスのカウントデータ
ディレクトリ型検索エンジンdtnでは、登録サイトのアクセスランキング、クリックランキングを実施していますが、そのIN/OUTランキングのトランデータをランキング以外にも利用ができないかと以前より考えておりました。
jQuery Sparklines
そんな中、jQuery Sparklinesの紹介記事を見つけたので、このSparklinesをつかって日々のIN、OUTの状況をグラフで表示できれば殺風景なカテゴリも多少華やかになるかと思いつき、実際に組み込んでみました。
登録サイトのアクセスグラフとSparklines.jsについてはこちらの記事でもご紹介しています。
cronで定時バッチ処理化
ランキング用のアクセスデータ、クリックデータは単純にトランテーブルにログをためていただけなので、これを日別に一週間分それぞれ抽出する処理を組み込み、完成したものが下記のようなイメージとなります。
JavaScriptの処理が重い
Sparklinesは配列データを元にJavaScriptでグラフ化処理を実行しますが、カテゴリに登録サイト例えば100サイト存在したとすると、200グラフの生成を一気にやることとなり、PC側に相当な負荷がかかってしまい、ひどいときはブラウザがフリーズしたりしておりました。
登録サイト数が多いカテゴリは下層カテゴリに分割するといった地味な作業はやっておりますが、人力作業のためかなり時間がかかってしまっております。
アクセスランキングがないサイト
アクセスランキングデータが全く無いサイトの場合は、せっかくのグラフも_ _ _ _ _ _ _ と表示されるだけなので、少々残念な印象となってしまったりもします。
おわりに
ランキングデータがもっと賑やかになればとはカテゴリの印象もだいぶ変わるとは思いますが、なかなか難しいものがあります。