IPLD (Interplanetary Linked Data)
Merkle DAG(Directed Acyclic Graph) を利用した汎用的で分散可能なデータレイヤー
抽象的な分散可能データ構造を提供する仕様とも言える
IPFS は IPLD 上に構築されている
Git も DAG を利用しているため、IPLD 上に Git を構築することは容易
何日とかでなく何時間レベルで実装できるとのこと
IPLD には「Codec」と呼ばれる仕組みがあり、抽象的な DAG データ構造を具体的なデータ構造に encode できる
DAG-JSON
: DAG のデータを JSON にエンコードする
DAG-CBOR
: DAG のデータを CBOR にエンコードする
DAG-PB
: DAG のデータを
Protocol Buffers
にエンコードする(これが IPFS の実体
)
IPLD 上に構築されたデータ(IPFSなど)は、当然 IPLD という共通仕様に則っているため、相互連携ができる!
まとめると
IPLD は分散コンピューティングにおけるデータ永続化のプロトコル・共通仕様となることを目指している? と思われる。
参考
IPLD docs
Merkle Directed Acyclic Graphs (DAGs)
Ever Wonder How Merkle Trees Work?
「Ever Wonder How Merkle Trees Work?」で紹介されている図。