(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【入門】ストレージにおけるデステージとは?

スポンサーリンク

はじめに

ストレージの記事を読んでいると唐突に「デステージ」という用語が用いられることがあります。

結論から言うと、この意味は「メモリに保持されている情報をストレージに移すこと」を指す「destage」の日本語読みです。

本記事ではデステージを最も意識するスナップショットを例に本用語を解説します。

デステージとは?

キャッシュに書き込まれたデータがストレージに書き込まれる、要は配置されることをデステージと言います。

destageという用語で英文を検索すると

To inhibit the frequent occurrence of competition between a host I/O and destage on a cache block.

上記のような例文が発見できました。本用語は対象としてストレージ機器周りでのみ使われる用語なのかもしれません。


コンピュータの基本を学んだ人はご存知かと思いますが、情報を保持する際にいきなりストレージに保管せずにメモリにキャッシュとして保持しています。それは以下の記事にもあるようにストレージに保持するとメモリと比較して処理速度が遅くなるからです。

ところが一般的にメモリ領域はストレージ領域に比べて容量が少ないので、メモリが溢れる場合はストレージに配置する必要があります。これがデステージです。

スナップショットでも用いられるデステージ

先ほどまでの例はメモリが溢れた際の挙動でしたが、スナップショットを利用する際は明示的にデステージする必要があります。

スナップショットのステップには以下があります。

  • ディスクへの書き込みを一時停止し、メモリ上に残っているデータを全てディスクに書き出す

要は、ストレージのある時点のコピーを作成するためには「メモリにしか保持されていない情報」をストレージに移す必要があります。言い方を変えれば意図的なデステージを発生させる必要があります

終わりに

まとめると

  • デステージとはメモリをストレージに移すこと
  • メモリが溢れた段階で自動的に起きる
  • スナップショット時には意図的に発生させる

という点を抑えておけば本用語を理解するスタートとしては十分だと思います。

以上、ご参考になれば幸いです。