オルタナティブ・ブログ > IT倉庫番24時 >

ストレージの話題に加え、面白いと思ったこと、日常の気づきなどをSE的、理系思考で綴ります。

情報爆発への現時点での処方箋 その2

»

 前回、活動中の主データを少なくあるいは小さくするアプローチとして、現時点の重複削減の技術は向かないと考えられることをお話しました。
 もちろん、バックアップなどの非活動データであれば、現時点でも重複削減技術は十分有効なアプローチの一つですが、アクセス頻度が高く短い応答時間での処理を求められる主データに対してはこれからお話しするリアルタイム圧縮の技術が一つの解と成りえると考えています。

 リアルタイム圧縮技術とは、文字通り 読み書きあるいは更新 としてアクセスされる活動データをその場で圧縮し、あるいはその逆にその場で解凍するという処理をアクセス性能を犠牲にすることなく実現するものです。
 圧縮という処理は、重複削減と違い他のデータとの比較は不要で、受け取ったあるいは渡すデータのみを対象とすればよいため、エンジンが高速であれば処理を速くすることが可能です。
 現在のCPUの処理能力は非常に高速になっており、他のコンポーネントの処理能力の向上に比べて、特に近年のCPU処理能力の向上はコスト・パフォーマンスという観点で顕著になっていることから、CPUの能力を使用して効率化する方法は現時点では非常に理にかなったソリューションではないでしょうか。

 そして、圧縮のロジック自体は従来からあるもの(の中で効率的なもの)を使用していますが、パフォーマンスを犠牲にせずにリアルタイムに実行できるのには理由や工夫があり、バックアップやアーカイブのデータのみならず、主データに適用できるテクノロジーとなっています。

 まず、経路の途中で圧縮されることで、末端のストレージ装置に届く時点ではデータは既に圧縮により小さくなっているため、キャッシュも圧縮が効いた分だけ大きなキャッシュとして使え、かつ処理される物理的なデータ容量が減ることから最終的に読み書きされるHDDへの負荷も軽くなることから、末端のストレージ装置をより高いパフォーマンスで使用することができます。
 また、従来のファイル・アクセスでの圧縮の実装は、ファイル途中のみの部分的な変更があった場合でも先頭からのそっくり圧縮しなおすことになるため、圧縮の処理量が多く負荷も高いという問題がありましたが、リアルタイム圧縮方式では全体を固定長に分割して、部分的な変更があった場合には変更前の物理ブロックはそのままにしておき、変更があったブロックのみを圧縮し直しファイルの最後尾に追加して該当ブロックのポインターを付け直すことを行って、部分変更の負荷を大幅に減らしています。 この方式は、圧縮ファイルに対する変更を最小限(該当ブロックのみ)にすることから、重複削減のテクノロジーとも相性がよく、この方式の圧縮後にも重複削減も合わせて効果を発揮します。
 20年以上前からテープ装置で実装・実証されているデバイスでのインライン圧縮テクノロジーに、このような工夫や改良を加えてディスクの主データへの適用が実現しています。

 一般に、バックアップやアーカイブのデータの方が容量は大きく、データ量を削減する意味でこれらデータへの着目は重要ですが、主データ用には容量単価の高い高速、最新の装置を使っていることが通常であるため、実はデータを保管するストレージ全体のコストという観点では、主データの占める割合は高く、その主データの容量削減への取組みは避けては通れない状況となりつつあります。 そして、現時点の技術で主データを削減する非常に効果的な方法がリアルタイム圧縮テクノロジーです。
 将来的にはよりデータ量を少なくする全く新しい方法や、現存のテクノロジーの改良や組合せによるより効果的なソリューションが実装される可能性はありますが、現時点で「1.主データに対して」(未来ではなく)「2.直ぐに適用可能」であり、導入後の「3.運用の負担増がほとんどなく」そして「4.既存環境を生かして(流用して)実現できる」言う点で、リアルタイム圧縮テクノロジーは大変有望なソリューションと考えています。
 特に既存資産を生かせる・流用できると言う点が、環境負荷低減が求められる現代にマッチしているとともに、「既存環境の変更をすることなく新規導入や単純増設以上の効果が得られる」ことになり、現状で多くの資産を既に保有している企業にとっては夢のようなソリューションと成り得ます。

Comment(0)