Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
ディスク使用量の分布1(Kodama's tips page)
Kodama's home / tips.
ディスク使用量の分布(part1)
ホームディレクトリのディスク使用量を調べてみた.
使用量がフラクタル的に分布することを確かめる.
いくつかのグラフを作成するが, その意味の詳細については省略する.
データ列を分析する手法としては,
フラクタル解析や時系列解析などのテキストを読むと良い.
- スクリプト
- 順位-サイズのグラフ
- 順位-サイズの片対数グラフ
- 順位-サイズの両対数グラフ
- まとめ
- ディレクトリの使用量の偏りについて
- 問題を解決しても次が控えている
以下のようにして, データ列からグラフを作る.
du なのでサブディレクトリまで辿って使用量の総計を出してくる.
$ du -sk /home/* | sort -nr | gnuplot gplot.txt > disk-use.png
以下で, gnuplot に与えるコマンドファイル gplot.txt を変えて様々なグラフを作る.
まずそのままグラフにしてみる.
gnuplot のコマンドファイル(gplot.txt)
set terminal png
plot "< cat" using ($0+1):($1) # linear-linear
注. $0 が行番号. $1 は 第1フィールド.
結果(図1)
ものすごく偏ったグラフがえられたが, この素性は...
gnuplot のコマンドファイル(gplot.txt)
set terminal png
set logscale y; plot "< cat" using ($0+1):($1) # log-log
結果(図2)
参考のために片対数グラフを見る.
ここからは, 指数分布という解釈は適切ではないことがわかる.
gnuplot のコマンドファイル(gplot.txt)
set terminal png
set logscale xy; plot "< cat" using ($0+1):($1) # log-log
結果(図3)
log-log グラフで直線状になっていることから, 巾分布すると思われる.
ユーザ毎のディスク使用量はフラクタル状に分布していることが観察できる.
多数の利用者が使うサーバでは, 容量制限が無い場合,
利用者毎のディスク使用量はやはりこのようなパターンになり,
小数の利用者がディスクの多くの部分を使うことになる.
多くの場所で, ディレクトリ以下のディスク使用量の分布はこのようになっていると思われる.
しかし, 必然的にフラクタル的になるという訳でもない...
次回 part2 に続く
そういうわけで,
- 領域を浪費しているユーザを抑えても常に次が控えている.
一時的な対処で安心すると失敗する.
Kodama's home / tips.