IN/OUTアクセスのカウントデータ

ディレクトリ型検索エンジンdtnでは、登録サイトのアクセスランキングクリックランキングを実施していますが、そのIN/OUTランキングのトランデータをランキング以外にも利用ができないかと以前より考えておりました。

jQuery Sparklines

そんな中、jQuery Sparklinesの紹介記事を見つけたので、このSparklinesをつかって日々のIN、OUTの状況をグラフで表示できれば殺風景なカテゴリも多少華やかになるかと思いつき、実際に組み込んでみました。

登録サイトのアクセスグラフとSparklines.jsについてはこちらの記事でもご紹介しています。

cronで定時バッチ処理化

ランキング用のアクセスデータ、クリックデータは単純にトランテーブルにログをためていただけなので、これを日別に一週間分それぞれ抽出する処理を組み込み、完成したものが下記のようなイメージとなります。

recent_dtn_access_top.png
登録サイトの直近アクセス数を表示しています

JavaScriptの処理が重い

Sparklinesは配列データを元にJavaScriptでグラフ化処理を実行しますが、カテゴリに登録サイト例えば100サイト存在したとすると、200グラフの生成を一気にやることとなり、PC側に相当な負荷がかかってしまい、ひどいときはブラウザがフリーズしたりしておりました。

登録サイト数が多いカテゴリは下層カテゴリに分割するといった地味な作業はやっておりますが、人力作業のためかなり時間がかかってしまっております。

アクセスランキングがないサイト

アクセスランキングデータが全く無いサイトの場合は、せっかくのグラフも_ _ _ _ _ _ _ と表示されるだけなので、少々残念な印象となってしまったりもします。

recent_dtn_access.png
データが存在しないグラフは殺風景過ぎる印象になります

おわりに

ランキングデータがもっと賑やかになればとはカテゴリの印象もだいぶ変わるとは思いますが、なかなか難しいものがあります。