分散型ファイルストレージ(decentralized/distributed storage)とは?

分散型ファイルストレージ(decentralized/distributed storage)とは?

本稿では、まずネットワークに参加する不特定多数のノード間でコンテンツを分散管理する「分散型ファイルストレージ(decentralized storage/distributed storage)」の概要を説明します。

続いて、この分散型ストレージの具体的な例として”IPFS”と”Swarm”という2つのプロダクトを取り上げ、両者の特徴やそれぞれの違いなどに触れながら理解を深めていくことを目指します。

ゴール

分散ファイルストレージの大まかな仕組みを理解します。

この記事はこんな人におすすめです

・分散ファイル、ブロックチェーンを使ったストレージに興味がある方。
・通貨以外のブロックチェーンの活用例が知りたい方

前提知識

P2Pネットワーク、ブロックチェーンの基礎的知識が必要となります。

本記事での用語の説明

ノード:P2Pネットワークの参加者。ここではチェーンを維持し、コンテンツの管理、配信などに貢献するものを指す
peer(ピア) :  P2Pで直接通信するノード同士の関係のこと。対等なもの同士の関係性をいう。
コンテンツ:  テキスト、動画、画像、グラフィックデーターなどのデータ

分散ファイルストレージ(decentralized storage)とは何か?

分散型ファイルストレージの概要

分散ファイルストレージとは、P2Pネットワークでつながったノード間でファイルを共有する仕組みです。

P2Pネットワーク上のストレージにアップロードされたファイルは、暗号化することでプライバシーが確保され、さらに断片化しキャッシュファイルとして各ノードに分散して置くことで耐障害性を高めています。

「分散ファイルストレージ」という呼称ですが、国内での認知度はまだ低いようです。(海外では、 「decentralized storage」または、「decentralized cloud storage」と呼ばれることが多いようです。)

中央集権型ストレージと分散(非中央集権)型ストレージ

分散型のファイルストレージの概念を理解するために、まずは既に身近に使われておりイメージしやすい中央集権型のストレージサービスを例に挙げ、それぞれを比較しながら見ていきたいと思います

まず中央集権型のクラウドストレージのサービスですが、有名なところで「Dropbox」、「Google Drive」などが挙げられるかと思います。それぞれ専用のアプリをインストールするなどして、オンラインに自分専用のストレージ領域を持つことができます。

下に中央集権、分散型それぞれのイメージ図を書きました。

「Dropbox」「Google Drive」は中央集権型で、分散ファイルストレージの多くは非中央集権型に属します。

中央集権型の場合、運営会社(Google、Dropbox)側に管理の全てを委託していますので、万が一中央のサーバーで致命的な障害が発生した場合にはアップロードしたファイルが消滅するなどのリスクがあります。

最悪のケースでは運営会社の倒産、ファイル喪失などの原因により、サービスの継続が不可能になった際には、利用者のコンテンツが永久に失われたまま帰ってこない可能性も考えられます。

一方で、非中央集権型の分散ファイルストレージでは、世界中にあるノードが全て失われゼロにならない限り、サービスは永遠に続けることが可能です。この考え方はブロックチェーンの分散化の仕組みとよく似ています。

DHT(分散ハッシュテーブル)

DHT(Distributed Hash Table)とは、データを分散させ、公平に偏りがなく管理するためのアルゴリズムの総称です。

特徴として、コンテンツをアップロードする際に、コンテンツ自体をハッシュ計算により、ユニーク性をもたせ、ネットワークに参加しているノードに効率的に分散させます。

コンテンツを検索する際もノード数に関係なく、O(N)オーダーよりも良いOオーダーで検索できます。

分散ファイルストレージでは、コンテンツの管理にこのDHTを利用しているケースが多いです。

アルゴリズムの種類は、Kademlia、Koorde、Chord、が代表的で、これらの他にもいろいろな種類が存在しています。

一般的なDHTのイメージが以下の図になります。

アップロードされたコンテンツは、P2Pネットワークのノードに保存される前にハッシュ関数にかけられハッシュ化されます。

保存するネットワーク上のノードにはあらかじめ、保存対象のハッシュのprefix(識別のための接頭辞)が決めてあります。

そして、このprefixとハッシュ値を利用することによって、

・チェーンに参加している各ノードに対するコンテンツの割り当て
・コンテンツ保存先ノードの検索

などの動作を実現しています。

では、その実装方法・動作の仕組みについて、上の図に沿って説明していきましょう。


これ以降の記事はオンラインサロン「即戦力!ブロックチェーン技術者養成道場」で公開中です。

続きを見るには、即戦力!ブロックチェーン技術者養成道場(DMMのページに移動します)をご覧ください!

     

免責事項

本記事に掲載されている記事の内容につきましては、正しい情報を提供することに務めてはおりますが、提供している記事の内容及び参考資料からいかなる損失や損害などの被害が発生したとしても、弊社では責任を負いかねます。実施される際には、法律事務所にご相談ください。

技術・サービス・実装方法等のレビュー、その他解説・分析・意見につきましてはblock-chani.jp運営者の個人的見解です。正確性・正当性を保証するものではありません。本記事掲載の記事内容のご利用は読者様個人の判断により自己責任でお願いいたします。

     

コンセンサス・ベイス(株)とブロックチェーン事業を行なってみませんか?

当サイトを運営するコンセンサス・ベイス株式会社は、2015年設立の国内で最も古いブロックチェーン専門企業です。これまでに、大手企業の顧客を中心に、日本トップクラスのブロックチェーンの開発・コンサルティング実績があります。

ブロックチェーンに関わるビジネスコンサル・システム開発・教育・講演などご希望でしたら、お気軽にお問い合わせください。

     
     

ブロックチェーン学習に最適の書籍の紹介

図解即戦力 ブロックチェーンのしくみと開発がこれ1冊でしっかりわかる教科書

ブロックチェーン イーサリアムへの入り口 第二版 (ブロックチェーン技術書籍)

本書は、ブロックチェーン技術に興味を持ったエンジニアや、その仕組みを学び、自分の仕事に活かしたいビジネスパーソンを対象にして、ブロックチェーンのコア技術とネットワーク維持の仕組みを平易な言葉で解説しています。この本を読んだうえで、実際にコードを書くような専門書、ブロックチェーンビジネスの解説書を読むことで、理解度が飛躍的に高まるでしょう。(はじめにより)

技術全般カテゴリの最新記事