MySQLで、インポート作業してたら、「アップロードしようとしたファイルが大きすぎるようです」ってメッセージが出て、インポートに失敗しちゃいました。
その経緯と、対応策は、こちらの記事に書いていますので、是非ご覧下さい。
よくみるとMiB
対応が済んで、MySQLのインポートの画面を見て、ビックリ!
ここに、書かれている文字に注目!
「1024M」って勝手にメガバイト(MB)って思ってたら、よくよくみたら、「MB」じゃなく「MiB」。ってことで、この「MiB」ってヤツをサクッと調べて見ました。
ちなみに、別のシステム用語として、「MIB」ってのがありまして、こちらは「SNMPで参照する管理情報」ってことで、また別のヤツです。
で、MiBとは
Wikipediaの情報によると、
メビバイト (mebibyte) は、コンピュータの容量や記憶装置の大きさをあらわす情報の単位の一つ。MiBと略記される。
1 MiB = 220 B = 1,048,576 B
220 = 1,048,576バイトを表す。本来SI接頭辞の106を表すメガは、1,000,000であり、混乱を避けるため、IECが決めたのが二進接頭辞のメビである。メビバイト = 220バイトと定義し、220バイトという意味ではこの呼び名が推奨される。メガバイトと違い、1,024,000バイトや1,000,000バイトという意味では使えない。
とのこと。
要は、MB(メガバイト)ってのは十進数をベースにしていて、10の6乗のことで、MiB(メビバイト)ってのは二進数をベースにしていて、2の20乗ってことです。
ちなみに、Wikipediaによると、その差は、「4.857600%」でMiB(メビバイト)の方が多きいとのことです。
最後に
まあ、私程度のエンジニアがその違いを実感することはなさそうですが、エンジニアたるもの、事象を明確に認識しておくってのは、重要なような気がしちゃったりなんかしたりします。
ってことで、よいMiB(メビバイト)生活を!