前提・実現したいこと
10分間隔で取得したデータを最大2か月分、データの項目別にグラフにしたいと思っています。
例えば、地点A、B、C についてそれぞれ温度、湿度、照度を取得していた場合、温度、湿度、照度の3つのグラフを表示します。
グラフデータの取得は、ページ表示後に非同期(jQuery使用)で行うつもりです。
サーバ側はPHPで実装します。
取得したデータはDBに保存してあり、1レコードに取得日時、地点名、温度、湿度、照度を持っています。
データ数が多いので何回かに分けて取得しようと思っているのですが、どのように実装するのがいいでしょうか(レスポンス・負荷的に)。
案1、案2と挙げましたが他にいい方法があれば教えていただきたいです。
案1
- グラフごとに非同期通信で2週間分のデータ取得(未取得のデータ有無も同時に取得)
- グラフにデータ追加
- 未取得のデータがあれば、1.に戻る
- 上記例でいうと、12回(3グラフ×4)の非同期通信が行われる
- SQL発行も12回
- 温度、湿度、照度と同一レコードに何度もSQLを発行するのが無駄な気がする
案2
- 非同期通信で各項目の2週間分のデータ取得(未取得のデータ有無も同時に取得)
- 各項目に対応するグラフにデータ追加
- 未取得のデータがあれば、1.に戻る
- 上記例でいうと、4回の非同期通信が行われる
- SQL発行も4回
- 取得データを加工する(温度、湿度、照度ごとのデータに別ける)処理が増える
- 1度に取得するデータ量が増える
補足
2週間分を一度に取得する、というのに根拠はありません。
現状1週間分であれば待ちなしで取得できているので、それくらいならいけるかな?という感じです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/31 04:21