検索
特集/連載

OSSストレージは良いことだらけ? 商用製品との違いはオープンソース技術が約束するストレージの変革【前編】

OSSのストレージは、既存ストレージインフラよりもコストを抑えることができ、高い柔軟性を提供することから、業界を一変させる可能性がある。

Share
Tweet
LINE
Hatena

 オープンソースソフトウェア(OSS)は、コミュニティーベースの協調型ソフトウェア開発モデルの発展を大きくけん引してきた。その最も顕著な例がLinuxの躍進だ。さまざまなLinuxディストリビューションが最適なクラウドOSとして、モダンなアプリケーション開発のプラットフォームとして採用されている。

 スタックの上位層でも、同じオープンソースの精神が「Docker」という形でコンテナ化に、あるいは構造化されたSQL、NoSQL、アナリティクス用の多様なデータベースプラットフォームに息づいているのが分かる。だがストレージはどうだろうか。オープンソース開発の進化は、ストレージを素通りしてしまっているのか。それとも、ストレージをオープンソースで実装したい人向けの選択肢が提供されているのだろうか。

オープンソース技術の定義

 まず、「オープンソース」が何を意味するかを説明しよう。オープンソースはその定義から、製品のソースコードが公開されていて、誰でも自由にアクセスし、読めるということを意味する。だが、オープンソースに該当する技術は、極めて幅広いものとなっている。ほとんどのオープンソースプロジェクトはライセンス条件の下でコードが配布されており、その条件がさまざまだからだ。ライセンスは、「コードをどのように利用または再利用できるか」「派生ソフトウェアにおいてどのように著作権表示を行うべきか」「特許がどのようにカバーされるか」「どのような商用利用が許可されているか」などを規定している。

 通常、「GNU GPL(GNU's Not Unix General Public License)」のようなライセンススキームは、プロジェクトのために開発されたコードに適用する著作権ルールに、「ライセンスが自らの作成したコードに制限を課すことなく、コードが自由に配布、使用されること」を要求する。こうした著作権ルールの考え方は、「コピーレフト」とも呼ばれる。GPL 3.0における最も最近の追加事項は、こうした著作権ルールの適用を保証しており、プロジェクトの結果として開発された特許は、誰でも自由に使用できるように公開される。

 こうしたことは、ストレージソフトウェア開発にとってどのような意味を持つのか。実のところ、ストレージプラットフォームの開発は、他のソフトウェアの開発と何ら変わらない。そのため、オープンソースはストレージ開発にとって非常に理にかなっている。複雑な問題についての大規模なコラボレーションが可能になるからだ。これによって、永続モデルにおけるデータの正確性の完全な保証が維持される。

コミュニティー開発

オープンソースは、OSとデータベースの開発モデルとして成功してきた。コミュニティー開発モデルが共有および永続ストレージの要件にも適用されると考えるのは、全く理にかなっている。


 ストレージでは、オープンソース開発は明確な選択肢ではなかった。最も初期の共有ストレージプラットフォームはプロプライエタリなハードウェアで開発されたからだ。だが、ここ15年でサーバとストレージメディアのコモディティ化が進んだことで、市販の既製コンポーネントから構築したストレージプラットフォームが、十分に低いコストで十分な信頼性を備えるようになった。こうしたソフトウェア定義型ストレージ(SDS)の台頭に伴い、オープンソースストレージは、多くの商用SDS製品が出回る市場の一角を形成している。

なぜオープンソースストレージなのか

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る