2009年12月28日月曜日

アルゴリズム

1,000件オーバーのデータをGoogleChartAPI(GC)に喰わせてグラフを吐き出す、っていう案件が発生。
最初は鼻歌交じりにやってたんだけど。
GCに2000バイト以上のリクエスト投げたらエラーになる!
そりゃそうだわな。長すぎるURLはいつぞやのapache乗っ取り攻撃の時に禁止する方向になったもんね。
で、どうするか真剣に考えた。
最初に思い浮かんだのが、データの間引き。
でも、うまくいかない。
間引いたデータにあわせて軸のラベルを作るのが一苦労だし、そもそも間引きしたら元のデータ曲線が正確に再現できない!

で、昼メシ喰いながら悩んだ結果、データを分割してGCに喰わせて、後で合成してやることにした。
このやり方だと、細かい座標設定とかをGCに依存しちゃうので、何らかの仕様変更が発生した場合にプログラム内の設定値を変更してやる必要がある。
ま、そうそう変わらないという事でいいかな。

とりあえず、視点を変える、という事の重要さを痛感した昼休みでした。

0 件のコメント:

コメントを投稿