スパースファイルとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > スパースファイルの意味・解説 

スパースファイル

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/09/24 13:47 UTC 版)

スパースファイル:空のバイトは保存する必要がないため、 メタデータで表すことができる。

計算機科学において、スパースファイル英語: sparse file)とはファイルの一種で、部分的に空のファイルを実際のファイルシステム上で少ない消費容量で効率的に保存する仕組みである。これは、空の領域を実際にディスク上に書き込む代わりに、メタデータと呼ばれる空の領域であることを示す小さな情報を書きこむことで実現される。

概要

スパースファイルに対応したファイルシステムでは、部分的に空のファイルを書き込む際に、ブロックを構成する実際の空データではなく、空のブロックを表すメタデータをディスクに書き込む。これによって使用するディスクスペースは少なくなる。 ブロックに空でないデータが含まれている場合にのみ、ブロック全体が実際にディスクに書き込まれる。またファイルシステムがホールパンチをサポートし、ゲストオペレーティングシステムがTRIMコマンドを発行する場合、ゲストのファイルを削除すると必要なスペースが削減される。

スパースファイルをファイルシステムから読み出す場合、ファイルシステムはメタデータで空と記録されているブロックを実際の空ブロック(NULLバイトで埋められたブロック)に復元しながら読み出すという変換を透過的に行うので、利用者はスパースファイルかどうかを意識することなく利用することができる。

現在では多くのファイルシステムがスパースファイルをサポートしており、代表的なものとしてNTFSUnixのファイルシステムがある。Apple社のHFS+はスパースファイルの機能を持たなかったが、OS Xでは仮想ファイルシステムによって、HFS+などのファイルシステム上でもスパースファイルを利用できるようになった。また、2016年のWWDCではApple File System(APFS)でもサポートされることが公表された。スパースファイルは、主にディスクイメージの保存やデータベースのスナップショット、ログファイルの保存、科学計算分野などで広く用いられるようになってきている。

良い点

スパースファイルの良い点は、本当に必要な容量しか容量を消費しないことである。これにより、ディスク容量を節約できたり、空き容量が足りなくても巨大なファイルを作ることができたりする。また空き領域にNULLバイトを大量に書き込むこともないので、その領域の書き込みは事実上スキップされることから、書き込み時間の節約にもなる。更には容量確保の時点でNULLバイト書き込みが起きるようなシステムでは実際のファイル書き込みと併せると、2重のスキップ効果が得られる。

例えば最大100GBの仮想マシンのイメージファイルが実際には2GB分しかファイルを持たない場合、事前割り当て(Pre-Allocated)ディスクでは100GB必要だが、スパースファイルなら2GBで足りる。

悪い点

スパースファイルの悪い点は、断片化を起こしやすいことである。ファイルシステム上の空き領域情報は誤解を招きやすいものとなり、ファイルシステム上にスパースファイルが多く存在すると、例えばスパースファイルの空き領域への上書きが発生したとたんにディスク溢れやクォータ超えエラーを起こしてしまうなど、予期しにくいエラーが発生しやすくなることが知られている。

Unixのスパースファイル

通常、スパースファイルはユーザーに対して透過的に処理される。 ただし、通常のファイルとスパースファイルの違いは、状況によっては明らかになる。

外部リンク


スパースファイル

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/01/15 15:12 UTC 版)

XFS」の記事における「スパースファイル」の解説

XFSでは、64ビットスパースアドレス空間が各ファイルごとに利用可能で、すなわち、極めて大きサイズファイルを扱うと同時にファイル中に実ディスクスペースの割り当てのない「穴」持たせることが出来る。XFSファイルデータブロック管理可変長エクステント用いるため、ファイルアロケーションマップのサイズ小さく保持できる。アロケーションマップのサイズ一つinode収まり切らなくなった場合でも、そのアロケーションマップはB+木上に移される以上により64ビット広大な空間であっても迅速にアクセスすることが可能となっている。 「スパースファイル」も参照

※この「スパースファイル」の解説は、「XFS」の解説の一部です。
「スパースファイル」を含む「XFS」の記事については、「XFS」の概要を参照ください。

ウィキペディア小見出し辞書の「スパースファイル」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「スパースファイル」の関連用語

スパースファイルのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



スパースファイルのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのスパースファイル (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのXFS (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS