「POSIX」と「オブジェクトストレージ」の関係がなぜ問題なのかオブジェクトストレージとPOSIX【後編】

Amazon S3などで一般化したオブジェクトストレージは、POSIXを前提とする既存のアプリケーションと相性が悪い。POSIX準拠の有無がどう関係するのか。

2022年04月13日 08時00分 公開
[Antony AdsheadComputer Weekly]

 ここ数十年、アプリケーションの大半はPOSIX準拠で作成されてきたが、世界は変わっている。Webやクラウドによって、データを保持する手法としてオブジェクトストレージが重要になっている。

 オブジェクトストレージにもメリットがある。POSIX準拠のシステムは拡張するにつれ煩雑になり、パフォーマンスのオーバーヘッドが増加する。オブジェクトストレージは適切にスケーリングされ、パフォーマンスは低下しない。

 だが今のところ、POSIX準拠を求める環境でオブジェクトストレージを扱うのは難しい。

POSIXとオブジェクトストレージの関係

iStock.com/ipuwadol

 オブジェクトストレージでは、読み取り、書き込み、削除などに全く異なるメソッドを使う。オブジェクトは、階層型ファイルシステムではなく一意の識別子を持つフラットな構造に格納される。POSIXのファイルシステムには数十種類の機能があるのに対し、オブジェクトストレージにはPUT(書き込み)、GET(読み取り)、DELETE、HEAD(メタデータを返す)など、数種類の機能しかない。

 オブジェクトストレージでは、オブジェクト内部のブロックやバイト列を取得することはできない。POSIXベースのシステムならば、データベース内のデータにアクセスすることも可能だ。

 従って、オブジェクトストレージはPOSIXストレージのようなアクセス制御も機能もない。オブジェクトストレージの一貫性は厳密なものではなく、「最終的には」保たれる程度のものだ。特に地理的に分散しているシステムや複数のバージョンが比較的長期にわたって複製されるシステムではそうなる。

 つまりオブジェクトストレージを直接使うためには、アプリケーションの多くを作り直す必要がある。

POSIXストレージとオブジェクトストレージの変換

 バックエンドでオブジェクトストレージを使いながらPOSIX準拠のファイルシステムへのアクセスを提供する製品やプロジェクトが幾つか登場している。

 こうした製品やプロジェクトは、オブジェクトベースのバルクストアにデータを格納し、POSIX準拠のアプリケーションがやりとりできるローカルファイルシステムにそのデータを移動する手法をベースとするものが多い。

 その例の一つが「S3QL」だ。これは、全てのデータをクラウドストレージに格納し、圧縮、重複排除、暗号化、スナップショットなどの機能を持つPOSIX準拠のファイルシステムをローカルドライブに提供する。

 オブジェクトベースのバルクストアの前面に高速なNVMe SSDのローカル作業ストレージを用意することで、アプリケーションが使うデータをオブジェクトストレージから提供するアプローチもある。Seagate Technologyのヘンリー・ニューマン氏(Government Solutions部門CTO:最高技術責任者)が主導する「mmap_obj」は、オブジェクトストレージに対するPOSIXフロントエンドを不要にする可能性がある。

 ニュージーランドのスタートアップ企業Nexustorage(訳注)の製品は、ローカルまたはクラウドのオブジェクトストレージにデータを一括保存し、用途に応じてPOSIX準拠の「Nexfs」ファイルシステムや「Amazon S3」のローカルストレージに階層化する。

訳注:意外に難しい「オブジェクトストレージへの簡単なアクセス」を解決参照。

ITmedia マーケティング新着記事

news098.jpg

食品の高値安定傾向はどこまで続く?――インテージ調査
全国約6000店舗より収集している「SRI+(全国小売店パネル調査)」を基に実施した食品や...

news028.jpg

インターネット広告の新しいKPIと「アテンション」の再定義
最終回となる今回は、ターゲットに届いた広告の効果を正しく測定するための指標として「...

news158.png

売れるネット広告社、「売れるD2Cつくーる」にLP自動生成機能を追加
売れるネット広告社が「売れるD2Cつくーる」に、新たに「ランディングページ自動生成(AI...