オブジェクト・ストレージとは
クラウドを活用したオブジェクト・ストレージが、大量の静的データや非構造化データを確実に、効率的に、手頃な価格で保管、アーカイブ、バックアップ、管理するために理想的なソリューションである理由をご紹介します。
IBMニュースレターの購読
黒と青の背景
オブジェクト・ストレージとは

オブジェクト・ストレージは、オブジェクト・ベース・ストレージと呼ばれ、大量の非構造化データを処理するデータ・ストレージ・アーキテクチャーです。このデータは、行と列を待つ従来型のリレーショナル・データベースに準拠していないか、あるいは、同データベースに簡単に組み込むことができません。今日のインターネット通信データはほとんどが構造化されていません。例としては、Eメール、ビデオ、写真、Webページ、オーディオ・ファイル、センサー・データ、およびその他の種類のメディアとWebコンテンツ(テキストまたは非テキスト)があります。このコンテンツは、ソーシャル・メディア、検索エンジン、モバイル、および「スマート」デバイスから継続的にストリーミングされます。

市場調査会社IDCは、2025年までに非構造化データが世界中の全データの80%を占めると予測しています。

企業は、この前例のない量のデータを効率的に(そして手頃な価格で)保存・管理することが難しいと感じています。オブジェクト・ベースのストレージは、データのアーカイブとバックアップに推奨される方法として台頭してきており、従来型のファイル・ベースまたはブロック・ベースのストレージでは不可能なレベルのスケーラビリティーを提供します。オブジェクト・ベースのストレージを使えば、テラバイト(TB)、ペタバイト(PB)、あるいはそれ以上のオーダーのデータ・ボリュームを保存・管理できます。

IBMがオブジェクト・ストレージへの取り組みをどのように支援できるかをご覧ください
要項

オブジェクトは、構造的にフラットなデータ環境に保存される離散的なデータの単位です。ファイル・ベースのシステムのようなフォルダー、ディレクトリー、または複雑な階層はありません。各オブジェクトは、データ、メタデータ(オブジェクトに関連付けられた記述情報)、一意の識別ID番号(ファイル名とファイルパスの代わり)を含む、シンプルで自己完結型のリポジトリーです。この情報により、アプリケーションはオブジェクトを見つけてアクセスできるようになります。オブジェクト・ストレージ・デバイスをより大きな記憶域プールに集約し、その記憶域プールを複数の場所に分散できます。これにより、無制限の拡張が可能になるだけでなく、データの回復力が向上し、災害復旧にも対応できます。

オブジェクト・ストレージは、フォルダーとディレクトリーを含む階層ファイル・システムの複雑さとスケーラビリティーの課題を解決します。オブジェクトはローカルに保存できますが、ほとんどの場合はクラウド・サーバー上に存在し、世界中のどこからでもアクセスできます。

オブジェクト・ストレージ・システム内のオブジェクト(データ)には、アプリケーション・プログラミング・インターフェース(API)を介してアクセスします。オブジェクト・ストレージのネイティブAPIは、HTTPベースのRESTful APIです(RESTful Webサービスとも呼ばれます)。このようなAPIは、オブジェクトのメタデータを照会し、インターネットを介して、どこからでも、どのデバイスからでも、目的のオブジェクト(データ)を見つけることができます。RESTful APIでは、オブジェクトのアップロードには「PUT」や「POST」、オブジェクトを取得するには「GET」、オブジェクトを削除するには「DELETE」などのHTTPコマンドを使用します(HTTPはハイパーテキスト・トランスファー・プロトコルの略で、インターネット上でテキスト、グラフィック画像、サウンド、ビデオ、その他のマルチメディア・ファイルを転送するための一連のルールです)。

オブジェクト・ストレージ・インスタンスには、APIによって呼び出される静的ファイルをいくつでも保存できます。オブジェクトの作成、取得、更新、削除にとどまらない、さらなるRESTful API標準も登場しつつあります。これにより、アプリケーションはオブジェクト・ストレージ、そのコンテナ、アカウント、マルチテナンシー、セキュリティ、課金などを管理できます。

たとえば、単一プラットフォーム上の非常に大規模な図書館システムですべての書籍を保管したいとします。書籍の内容(データ)だけでなく、著者、出版日、出版社、主題、著作権などの関連情報(メタデータ)も保存する必要があります。このすべてのデータとメタデータをリレーショナル・データベースに保存し、ディレクトリーとサブディレクトリーの階層のフォルダーとして整理できます。

しかし、何百万冊もの本があると、検索と取得のプロセスは煩雑で時間がかかるものになります。オブジェクト・ストレージ・システムがここでうまく機能します。データが静的または固定であるためです。この例では、本の内容は変わりません。オブジェクト(データ、メタデータ、ID)はフラット構造の「パッケージ」として保存され、1回のAPI呼び出しで簡単に検索および取得できます。さらに、本の数が増え続けると、ストレージ・デバイスをより大きな記憶域プールに集約し、その記憶域プールを分散して無制限に拡張できます。

メリット

特に、Webベースのマルチメディア・データが大量に生成されているインターネットとデジタル通信のこの時代には、データを保存するためにオブジェクト・ストレージ・ベースのソリューションを検討する理由がたくさんあります。

非構造化データの保管/管理

オブジェクト・ストレージは、このクラウド・コンピューティングの時代や、近い将来、世界中のデータの大部分を占めるようになるとアナリストが推定している非構造化データの管理に広く採用されています。Eメール、ビデオ、ソーシャル・メディア、文書、モノのインターネット(IoT0)デバイスによって生成されるセンサー・データなど、Webで生成されたコンテンツの量は膨大であり、増加の一途をたどっています。非構造化データは通常、静的(不変)なデータですが、いつでもどこでも必要とされる可能性があります(画像やビデオのファイル、アーカイブ・データのバックアップなど)。

クラウドを活用したオブジェクト・ストレージは、データの長期保存に最適です。オブジェクト・ストレージを使用して、Network Attached Storage(NAS)などの従来型のアーカイブを置き換え、ITインフラストラクチャーを削減します。長期保存が義務付けられている規制データを簡単にアーカイブして保存できます。頻繁にはアクセスされない大量のリッチ・メディア・コンテンツ(画像、ビデオなど)をコスト効率よく保存できます。

拡張性

制限なしのスケールは、おそらくオブジェクト・ベースのデータ・ストレージの最も大きなメリットです。オブジェクト、またはデータの個別の単位(任意の量)は、サーバーなどのストレージ・デバイス内の構造的にフラットなデータ環境に格納されます。オブジェクト・ストレージ・クラスターに並行してデバイス/サーバーを追加するだけで、追加の処理が可能になり、ビデオや画像などの大きなファイルに必要なより高いスループットがサポートされます。

複雑さの軽減

オブジェクト・ストレージにより、フォルダーとディレクトリーを含む階層ファイル・システムの複雑さが解消されます。パフォーマンスが遅延する可能性が少なく、フォルダー、ディレクトリー、または複雑な階層をナビゲートする必要がないため、データを取得する際の効率が向上します。これにより、特に大量のデータを管理する場合のパフォーマンスが向上します。

災害復旧/可用性

コンテンツのレプリカを生成するように、オブジェクト・ストレージ・システムを構成できます。クラスター内のディスクに障害が発生した場合でも、複製ディスクが使用できるため、システムが中断やパフォーマンスの低下なしに稼働し続けることが保証されます。データは、ノードやクラスター内、分散データセンター間で複製され、オフサイトで、さらには地理的な領域を越えてバックアップすることができます。

オブジェクト・ストレージは、テープ・バックアップ・ソリューションに代わる、より効率的なソリューションです。テープ・バックアップ・ソリューションでは、テープを磁気テープ・ドライブに物理的に読み込んだり取り外したりする必要があり、地理的な冗長性を確保するためにオフサイトに移動する必要があります。オブジェクト・ストレージを使用すると、オンプレミスのデータベースをクラウドに自動的にバックアップしたり、分散データセンター間でコスト効率よくデータを複製したりできます。オフサイトや地理的リージョン間でのバックアップを追加して、確実に災害復旧を行います。

災害復旧の詳細については、バックアップと災害復旧:完全ガイド」を参照してください。

カスタマイズ可能なメタデータ

各オブジェクトは、メタデータまたはそれに関連付けられた記述情報を含む自己完結型のリポジトリーであることに注意してください。オブジェクトはこのメタデータを、保存、削除、ルーティングのポリシー、災害復旧戦略(データ保護)、コンテンツの確実性の検証などの重要な機能に使用します。また、後で抽出して活用できるコンテキストを追加してメタデータをカスタマイズし、お客様サービスや市場動向などに関するビジネス上の洞察を得たり、分析を行ったりすることができます。

手頃な価格

オブジェクト・ストレージ・サービスは、初期費用や設備投資が不要な従量制課金を採用しています。指定された量のストレージ容量、データ・リトリーブ、帯域幅使用量、APIトランザクションに対して月ぎめ契約料金を支払うだけです。通常、料金体系は階層ベースまたはボリュームベースであり、非常に大容量のデータでは料金が安くなります。

オブジェクト・ストレージ・ソリューションはハードウェアの制約が限られており、適切に構成されたほとんどのコモディティ・サーバーに導入できるため、コモディティ・サーバーのハードウェアを使用することでさらにコストを削減できます。これにより、オンプレミスでオブジェクト・ストレージ・プラットフォームを導入する際に、新しいハードウェアを購入する必要性が少なくなります。複数のベンダーのハードウェアを使用することもできます。

クラウドの互換性

オブジェクト・ストレージは、マルチテナント・ストレージをサービスとして提供するクラウド環境やホスト環境と密接に関係しています。これにより、企業内の多くの企業や部門が同じストレージ・リポジトリーを共有し、それぞれがストレージ・スペースの別々の部分にアクセスできるようになります。この共有ストレージのアプローチは、本質的に規模とコストを最適化します。必要なときにデータにアクセスできるようにしながら、低コストのクラウド・ストレージを使用することで、組織のオンサイトのITインフラストラクチャーを削減できます。たとえば、企業はクラウドを活用したオブジェクト・ストレージ・ソリューションを使用して、スマート・デバイスのアプリケーション用の大量の非構造化IoTおよびモバイル・データを収集して保存できます。

オブジェクト vs. ファイル vs. ブロック・ストレージ

保存方法は、データの性質の変化に合わせて進化してきました。データはトランザクションのデータで、サーバーのディスク・ドライブ上のデータベースにきちんと保管されている小さなボリューム単位で収集できます。ファイル・ベースのストレージとブロック・ベースのストレージは、この種の構造化データに適しており、特定のシナリオでは引き続き適切に機能します。しかし、インターネットはすべてを変えました。組織は、大量のWebベースのデジタル・コンテンツ(非構造化データ)の管理に苦労しています。オブジェクト・ベースのストレージが、この課題に対応できます。

企業は、IT運用の速度とパフォーマンスの要件に応じて、ストレージのニーズが異なる可能性があります。ファイル・ベース、ブロック・ベース、オブジェクト・ベースのストレージ方式には、それぞれ利点と欠点があるため、慎重に検討してください。これらのアーキテクチャーを組み合わせることで、データ・ストレージのニーズを満たす最善の方法が見つかる可能性があります。

ファイル・ストレージ

ファイル・ストレージは、フォルダー内にデータを整理して保存します。ファイルには名前が付けられ、メタデータ(通常、ファイル名、ファイル・タイプ、作成日と最終更新日)がタグ付けされ、ディレクトリーとサブディレクトリーの階層下にあるフォルダーに整理されます。ファイル・ストレージは、物理的な紙のファイルをファイリング・キャビネットに保管するのと同じように考えることができます。複数の引き出し(ディレクトリー)があり、それぞれの引き出し(サブディレクトリー)の中にラベル付きのファイル・フォルダーがあるのです。ファイル・キャビネットで特定のファイル・フォルダーを探すには、適切な引き出しを引き出してフォルダー・ラベルを確認します。同じように、ファイル・ストレージ・システム内のデータにアクセスするために、コンピューター・システムが必要とするのは、そのデータを見つけるためのパス(ディレクトリーとサブディレクトリー)だけです。このような階層型ストレージ・システムは、比較的少量で整理しやすいデータに適しています。しかし、ファイル数が増えるにつれて、検索と取得のプロセスが煩雑になり、時間がかかることがあります。

ファイル・ストレージ:完全ガイド」では、ブロック・ストレージに関する概要をすべて説明しています。

オブジェクト・ストレージ

オブジェクト・ベースのストレージは、今日のデジタル通信、つまり非構造化メディア、Webコンテンツ(Eメール、ビデオ、画像ファイル、Webページ)、IoTデバイスによって生成されるセンサー・データなどのデータのアーカイブとバックアップに推奨される方法として台頭し始めています。このストレージ・システムは、ファイルをファイル・システム内のディスクに保存されるブロックに分割するのではなく、構造的にフラットなデータ環境に保存される個別のデータ単位としてオブジェクトを扱います。

オブジェクト・ストレージでは、フォルダー、ディレクトリー、または複雑な階層は使用されません。むしろ、各オブジェクトが、データ、メタデータ、そしてアプリケーションが検索とアクセスに使用する一意の識別ID番号を含む、シンプルで自己完結型のリポジトリーになります。この場合、メタデータはファイル・ベースのアプローチよりも記述的です。後で抽出してデータ分析などの他の目的に利用できるように、追加のコンテキストを使用してメタデータをカスタマイズすることができます。

ブロックおよびファイル・ソリューションの実効限界をはるかに超える非構造化データのスケーリングにコスト効率の高いストレージ容量が必要な場合は、オブジェクト・ストレージをソリューションとして使用してください。オブジェクト・ストレージは、トランザクション・レコードや音楽、画像、ビデオのファイルなど、頻繁には変更されないデータ(静的ファイル)のアーカイブにも最適です。

ブロック・ストレージ

ブロック・ストレージは、ファイル・ベースのストレージに代わって、効率性とパフォーマンスが向上したストレージを提供します。ブロック・ストレージは、ファイルを同じサイズのデータのチャンクに分割し、これらのデータ・ブロックを一意のアドレスで個別に保存します。ファイル・フォルダー構造は必要ありません。代わりに、ブロックのコレクションをシステム内の任意の場所に保管して、効率を最大限に高めることができます。

ファイルにアクセスするために、サーバー・オペレーティング・システムは一意のアドレスを使用してブロックを元に戻し、これらをファイルに組み立てます。システムはデータ・ブロックにアクセスするためにディレクトリーやファイル階層を移動する必要がないため、効率が向上します。ブロック・ストレージは、低遅延(最小限の遅延)、データへのきめ細かいアクセス、および一貫したパフォーマンスを必要とする重要なビジネス・アプリケーション、トランザクション・データベース、および仮想マシンに適しています。

ブロック・ストレージ:完全ガイド」では、ブロック・ストレージに関する概要をすべて説明しています。

ブロック・ストレージとファイル・ストレージの違いと利点について詳しくは、「ブロック・ストレージとファイル・ストレージ」のビデオをご覧ください。

ユースケース

前述したように、オブジェクト・ベースのストレージは、大量の静的データまたは非構造化データを保存、アーカイブ、バックアップ、管理するための理想的なソリューションです。

その他のユースケースには、次のようなものがあります。

  • クラウドネイティブ・アプリケーション:クラウドを活用したオブジェクト・ストレージは、クラウド・アプリケーション開発と密接に関連しています。新しいクラウドネイティブなアプリケーションを構築したり、クラウドを活用したオブジェクト・ストレージを永続データ・ストアとして使用して、レガシー・アプリケーションを次世代のクラウド・アプリケーションに変換したりできます。スマート・デバイス・アプリケーションのために、大量の非構造化IoTデータやモバイル・データを収集・保存し、アプリケーションのコンポーネントを簡単かつ効率的に更新します。

  • AIとビッグデータ分析:コスト効率に優れたスケーラブルなオブジェクト・ストレージを活用し、一元化されたデータ・リポジトリーを構築します。あらゆる種類のデータをあらゆるソースから無制限に収集し、保存します。このデータをクエリしてビッグデータ分析を実行し、お客様、業務、サービスを提供する市場に関する貴重な情報を取得できます。
クラウド・オブジェクト・ストレージのユースケースの詳細については、このブログ投稿をお読みください。
オブジェクト・ストレージ・データベースとは

簡単なAPI呼び出しを使用して、オブジェクト・ストレージ・システムでファイルをアップロードおよび取得できることはすでに述べました。ただし、アプリケーションには、ストレージ内で適切なオブジェクトを見つけるために、オブジェクトのメタデータも必要です。ここで、オブジェクト・ストレージ・データベースが役立ちます。このデータベースは、オブジェクトのメタデータを使用して分散ストレージ・システム内の適切なデータ・ファイルを検索する一種のディレクトリーを提供します。

各オブジェクト・ストレージ・グループには、2つのテーブルを含むオブジェクト・ストレージ・データベースがあります。一方のテーブルはオブジェクト・ディレクトリー、もう一方のテーブルはオブジェクト・ストレージを対象にしています。

オブジェクト・ディレクトリー・テーブルには、各オブジェクトに関する記述情報(メタデータ)が含まれています。このディレクトリーは、コレクション名識別子、オブジェクト名、およびその他の関連情報を記録することで、ストレージ階層内のすべてのオブジェクトを追跡します。たとえば、IBMのオブジェクト・ストレージ方法論では、オブジェクト・ディレクトリー・テーブルには次の3つの「インデックス」が含まれます。

  • オブジェクト作成のタイム・スタンプ

  • コレクション名識別子(名前ID)、保留中のアクションデータ、オブジェクト作成タイム・スタンプ

  • オブジェクト名とコレクション名の識別子

オブジェクト・ストレージ・データベースの2つ目のテーブルはオブジェクト記憶テーブルで、データ・コンテンツ/ファイルそのもの(オブジェクト)が格納されています。データ(ビデオや画像ファイルなどの固定デジタル・コンテンツや、大規模なドキュメント・ライブラリー)はオブジェクト・ストアに、メタデータ(名前IDを含むデータに関するコンテキスト情報)はデータベース/オブジェクト・ディレクトリー・テーブルに格納されます。

アプリケーションがファイルを「ポスト」すると、メタデータが作成され、オブジェクト・ストレージ・データベース内のオブジェクト・ディレクトリー・テーブルに格納され、オブジェクト記憶テーブルにファイルを「格納」します。後でファイルを取得するために、アプリケーションはオブジェクト・ディレクトリー/データベースにメタデータを照会し、その記述的な識別情報を使用してデータを検索または「取得」します。

オープンソース・ソリューション

オープンソースとは一般に、普遍的な、あるいは非独占的なソフトウェア開発モデルを指します。オープンソースの開発者環境は、コラボレーションを促進します。一般ユーザーは、環境内のすべてのソースコード、ドキュメンテーション、ソフトウェア開発キット(SDK)、アプリケーション・プログラミング・インターフェース(API)を無料で利用できます。開発者とプログラマーは、ソースコードを変更および改善し、その成果を開発者コミュニティー内で共有、配布、または公開できます。他の開発者は、このコードをダウンロードしたり、さらに変更したりできます。

オープンソース・テクノロジーは、データ管理とストレージのオプションに最大限の柔軟性と制御性を与えます。オープンソースのツールとオープンAPIへのアクセスにより、組織固有の要件に合わせてコードをカスタマイズできます。開発時に独自のテクノロジーに縛られることはなく、所有する既存のハードウェア(またはベンダーのハードウェアの組み合わせ)を自由に利用することができます。また、より広範なコミュニティ内の他の開発者の取り組みからも恩恵を受けることができます。

オブジェクト・ベースのストレージ・システムに関しては、Ceph、MinIO、Openio.io、SwiftStack/OpenStack Swift など、いくつかのオープンソース・ソリューションが利用可能です。これらは違う機能、ポリシー・オプション、方法論を宣伝していますが、非構造化デジタル・データの大規模ストレージを実現するという同じ目標を持っています。

すべての主要なオープンソース・テクノロジー・ソリューションは、AmazonのSimple Storage Service(Amazon S3)のオブジェクト・ストレージ・プロトコルに準拠しています。2006年に初めて導入されて以来、クラウド・ストレージのデファクト・スタンダードとなっています。それぞれ、Amazon S3 RESTful APIと互換性のあるオープンソースのオブジェクト・ストレージ・サーバーを提供します。多くは、代替として独自のオープンAPIも提供しています。たとえば、OpenStack Swiftは、AmazonのS3 APIをサポートするだけでなく、いくつかの独自の機能を備えた独自のSwift Open APIも提供しています。Ceph Object Storageと Openio.io はS3と互換性がありますが、OpenStack Swift APIの大部分もサポートしています。

オブジェクト・ストレージとKubernetes

より多くの開発者がアプリケーションのデプロイとスケーリングを高速化しようと競い合う中、コンテナ化がソリューションとして台頭してきました。

コンテナ化はアプリケーションのパッケージ化アプローチとして急速に成熟しており、開発者、インフラストラクチャー、運用チームにかつてないメリットをもたらしています。「コンテナ化:完全ガイド」では、コンテナ化に関する概要をすべて説明しています。

そして、Kubernetesは主要なコンテナ管理ソリューションとなりました。Kubernetesは、コンテナ化されたアプリケーションのスケーリングなどの管理タスクを容易にします。また、アプリケーションの新しいバージョンの展開にも役立ち、モニタリング、ロギング、デバッグ・サービスなどの機能を提供します。Kubernetesはオープンソースのプラットフォームであり、コンテナ・イメージのフォーマットとランタイムに関するOpen Container Initiative(OCI)の標準に準拠しています。

Kubernetesとオブジェクト・ストレージの関係は?ここで重要なのはスケールです。

Kubernetesを使用すると、コンテナを大規模に管理できます。複数のホスト間でコンテナをオーケストレーションし、コンテナ化されたアプリケーションとそのリソースを動的にスケーリングできます(自動スケーリングはKubernetesの重要な機能の1 つです)。オブジェクト・ストレージ・システムは、大規模なストレージを処理します。これらのシステムは、ペタバイト規模以上の大量の非構造化データを保存できます。これら2つのスケールアウト・アプローチを併用することで、現在および将来の大規模かつ増大するデータ・ワークロードに理想的な環境を構築できます。

Kubernetes上でオブジェクト・ストレージ・システムを動かすのは自然なことです。Kubernetesを使用して、分散コンテナ化されたアプリケーションのプロビジョニングと管理を行います。同様に、Kubernetesは、分散オブジェクト・ストレージ・プールがローカルであるか、データセンター間で分散されているか、さらには地理的リージョンにも分散されているかにかかわらず、分散オブジェクト記憶域プールのオーケストレーションを処理するための統合管理インターフェースとして使用できます。

Kubernetes の詳細については、「Kubernetes:完全ガイド」を参照してください。

少し遡って中心的な概念から始めるには、ビデオ「コンテナ・オーケストレーションの説明」を参照してください。

関連ソリューション
IBM Cloud Object Storage

IBM Cloud Object Storageは、耐久性、耐障害性、安全性を重視して設計された、非構造化データ・ストレージ・サービスです。

IBM Cloud Object Storageの詳細はこちら
IBM Analytics Engine

IBM Analytics Engineは、分析アプリケーションを作成するためのApache SparkとApache Hadoopを組み合わせたサービスです。

IBM Analytics Engineの詳細はこちら
IBM Security Verify:IAMソリューション

ハイブリッドでマルチクラウドなエンタープライズ向けのスマートなID管理とアクセス管理(IAM)のソリューション。AIを搭載。IBM Security®に支えられています。

IBM Security Verifyの詳細はこちら
参考情報 トレーニング:IBM Cloud Professional Developer

キャリアを拡大し、IBM Cloud開発者としてのスキルを深めるために必要なスキルと知識を習得しましょう。この対話式のカリキュラムは、プロフェッショナル・レベルの認定資格の準備に役立ちます。

ファイル・ストレージとは

ファイル・ストレージは、ファイル・レベルまたはファイル・ベースのストレージとも呼ばれ、コンピューターのハード・ディスクまたはNetwork Attached Storage(NAS)デバイス上のデータの編成と保存に使用される階層型ストレージの手法です。

ブロック・ストレージとは

ストレージ・エリア・ネットワーク(SAN)やクラウド・プラットフォーム上にデータ・ファイルを保存するために使用されるストレージの一種であるブロック・ストレージの基礎をご覧ください。

詳細情報はこちら

IBM Cloud Object Storageは、大量のデータを安全かつ確実に保管するための従量制課金のサービスです。組織は、IBM Cloud Object Storageをデータ・アーカイブやバックアップ、Webアプリケーションやモバイル・アプリケーション、アナリティクス用の永続的でスケーラブルなストアとして使用できます。必要なときにデータにアクセスできるようにしながら、組織のオンサイトのITインフラストラクチャーを削減しましょう。

IBM Cloud Object Storageの詳細はこちら