1 時間あたりに使用されるディスク容量の平均量を計算する必要があります。データベースでは、約 1 時間ごとにディスク容量をログに記録し (ただし、常に1 時間ごとであるとは限りません。それより多い場合も少ない場合もあります)、1 時間あたりの平均使用量を計算する必要があります。
ただし、チェック間の期間が変わるため、困惑しています。これを行う最善の方法がよくわかりません。
追加の詳細
明確にするために:
課金目的でディスク容量が一定間隔でログに記録されるシステム設定があります。ディスク容量はバイト単位で課金されますが、明らかにその量は 1 か月を通して変化するため、1 時間あたりの MB で表します。
請求概要で、1 時間に使用される平均ディスク容量を表示したいと考えています。
最初は、5 分ごとにログを記録していました。次に、1時間ごとにログに記録するように変更しました。最終的に、ログに記録するアカウントが十分にある場合は、2 時間以上ごとにログが記録されます。ただし、1 時間あたりになるように正規化する必要があります。
これは月末に行われるため、ゼロ データの使用例は実際にはありません。
以下は、MySQL から抽出されたサンプル データです。最初のクエリは 5 分間のログ用で、2 番目のクエリは時間ログ用です。
mysql> SELECT FROM_UNIXTIME(date) as date, CONCAT(ROUND(bytes / 1048576, 0), ' MB') AS 'disk usage' FROM host_manager_client_resource_usage WHERE type = 'diskspace' LIMIT 25;
+---------------------+------------+
| date | disk usage |
+---------------------+------------+
| 2013-03-23 22:40:01 | 28130 MB |
| 2013-03-23 22:45:01 | 28130 MB |
| 2013-03-23 22:50:01 | 28116 MB |
| 2013-03-23 22:55:01 | 28111 MB |
| 2013-03-23 23:00:01 | 28105 MB |
| 2013-03-23 23:06:58 | 28089 MB |
| 2013-03-23 23:10:01 | 28089 MB |
| 2013-03-23 23:15:01 | 28086 MB |
| 2013-03-23 23:20:01 | 28086 MB |
| 2013-03-23 23:25:01 | 28086 MB |
| 2013-03-23 23:30:01 | 28086 MB |
| 2013-03-23 23:35:01 | 27644 MB |
| 2013-03-23 23:40:01 | 26902 MB |
| 2013-03-23 23:45:01 | 26640 MB |
| 2013-03-23 23:50:02 | 26640 MB |
| 2013-03-23 23:55:01 | 26640 MB |
| 2013-03-24 00:00:01 | 25556 MB |
| 2013-03-24 00:05:01 | 25556 MB |
| 2013-03-24 00:10:01 | 24798 MB |
| 2013-03-24 00:15:01 | 24547 MB |
| 2013-03-24 00:20:01 | 24547 MB |
| 2013-03-24 00:25:01 | 20701 MB |
| 2013-03-24 00:30:01 | 20805 MB |
| 2013-03-24 00:35:02 | 20807 MB |
| 2013-03-24 00:40:01 | 20613 MB |
+---------------------+------------+
25 rows in set (0.00 sec)
mysql> SELECT FROM_UNIXTIME(date) as date, CONCAT(ROUND(bytes / 1048576, 0), ' MB') AS 'disk usage' FROM host_manager_client_resource_usage WHERE duration > 2395 AND type = 'diskspace' ORDER BY id LIMIT 25;
+---------------------+------------+
| date | disk usage |
+---------------------+------------+
| 2013-03-23 22:40:01 | 28130 MB |
| 2013-03-28 13:20:37 | 772 MB |
| 2013-03-28 15:00:01 | 772 MB |
| 2013-03-28 16:00:02 | 772 MB |
| 2013-03-28 17:00:01 | 771 MB |
| 2013-03-28 18:00:01 | 771 MB |
| 2013-03-28 19:00:01 | 771 MB |
| 2013-03-28 20:00:01 | 771 MB |
| 2013-03-28 21:00:01 | 771 MB |
| 2013-03-28 22:00:01 | 771 MB |
| 2013-03-28 23:00:01 | 771 MB |
| 2013-03-29 00:00:01 | 771 MB |
| 2013-03-29 01:00:01 | 771 MB |
| 2013-03-29 02:00:01 | 771 MB |
| 2013-03-29 03:00:01 | 771 MB |
| 2013-03-29 04:00:01 | 771 MB |
| 2013-03-29 05:00:01 | 767 MB |
| 2013-03-29 06:00:01 | 767 MB |
| 2013-03-29 07:00:01 | 767 MB |
| 2013-03-29 08:00:01 | 767 MB |
| 2013-03-29 09:00:01 | 769 MB |
| 2013-03-29 10:00:01 | 769 MB |
| 2013-03-29 11:00:01 | 769 MB |
| 2013-03-29 12:00:01 | 769 MB |
| 2013-03-29 13:00:01 | 766 MB |
+---------------------+------------+
25 rows in set (0.00 sec)