コロナウイルスの感染拡大防止には,クラスターの発生を阻止することが不可欠,とよく言われるが,フツーの人は「クラスターって何だ?」となるだろう。
一応,Win95,Nt3.51あたりからコンピュータに関わってきたので,ここにきて毎日「クラスター」という単語を聞く日が来るとは思わなかった。
コンピュータでクラスタと言えば,データを格納する区画,セクタの集まりのこと。1クラスタは8セクタが標準
・・・何を言っているかわからない人がほとんどだろう。
昔むかし,磁気テープにデータを記録していた時代は,データはシーケンシャル,頭から順に記録するしかなかった。
しかし,フロッピーディスクが出て,円盤に記録できるようになると,データを読み出すのに最初から読む必要がなくなった。
円盤を蜘蛛の巣状に区切って,ランダムに記録,読み出しができるようになったからだ。
区画には番地を付けておいて,「XX番地からXX番地には,○○データが入っている」というインデックスを作っておけばいい。
目的のデータを読み込むときは,インデックスを参照して目的のクラスタのデータを読み込む。
そこで問題となるのが,クラスタのサイズ。大きければ1つの区画に入るデータ量は増え,読み込む回数は減る。
しかし,データ領域に無駄が出来てしまう。具体的には,クラスタサイズが100なのに,そこにサイズ10のデータを入れると,そのクラスタは使用済になり,開いている90は使えなくなってしまう。
![](https://blogimg.goo.ne.jp/user_image/31/82/01c527a246d4f007d7b353e7fd152b4a.jpg)
こんな感じ。データのサイズは802なのに,HDDに記録するときは4096のデータ領域を使ってしまう。
この4096バイトは,Windowsの標準クラスタサイズ(正確にはNTFSでフォーマットした時のクラスタサイズ)
逆に小さくすると,データ領域の無駄は減るが,読み込むクラスタが増えて読み込みに時間がかかるようになってしまう。
クラスタサイズはディスクをフォーマットするときに指定できる。昔,FAT16時代はサイズを色々変えてフォーマットしてみたが,違いは分からなかったwww
記録媒体が高価で「とにかくフロッピーディスクに記録できるだけする!」という時代は緻密に設計することもあったのだろうが,1TBのSSDが1万円程度で買える時代になってしまったので,クラスタサイズを本気で考える必要もなくなった。バイト当たり単価はどんどん下がっている。
どこまで下がるのだろうか??
![](https://blogimg.goo.ne.jp/img_emoji/whale.gif)