2022年04月13日 08時00分 公開
特集/連載

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

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

[Antony Adshead,Computer 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 マーケティング新着記事

news072.jpg

超リッチなイーロン・マスク氏の「言論の自由」は、あなたのそれと同じなのか?
Twitter買収の大義名分とされる「言論の自由」。しかし、同じことを語っているつもりでも...

news204.jpg

新卒の営業職が仕事をやりたくない時期、最多は「5月」 ―― RevComm調査
新卒営業社員は5月に最初の「壁」を感じるようです。

news069.jpg

「メタバース」でどうやってもうけるの? Meta(旧Facebook)が考える収益化への道
Metaの中核をなすメタバースプラットフォームのマネタイズ計画が明確になりつつある。高...