ネットワークインデクサの紹介

Filecoin

Protocol Labsは、ストレージプロバイダーが利用できる、コンテンツアドレッサブルデータの検索を可能にする、初のネットワークインデクサを発表しました。ストレージプロバイダーは、データのコンテンツID(CID)をネットワークインデクサに公開し、クライアントはそれに問い合わせることで、CIDで特定のコンテンツの取得場所を知ることができます。

ネットワークインデクサとは

ネットワークインデクサとは、CIDとそのデータを持っている人の記録(プロバイダーデータ記録)を紐づけ、Filecoinネットワーク上のデータを扱いやすくし、IPFSネットワーク上のデータを特定するためのシステムです。

ストレージプロバイダーは、クライアントが検索できるように、データをインデクサに公開します。ある情報が、どこに保存されているかを知りたいクライアントは、コンテンツのCIDまたはマルチハッシュを使用して、インデクサに問い合わせることができます。インデクサは、プロバイダーに関する情報をクライアントに返信します。送信される内容は、クライアントはどこからコンテンツを取得できるのか、そしてコンテンツの取得方法を示しています。以下は、ネットワークインデクサのシステムのアーキテクチャ図です。

ダイアグラム

自動的に生成された説明

現在のインデクサの状況

ネットワークインデクサは大規模に稼働しており、毎秒11,000件以上の問い合わせを処理し、すでに30億件のCIDをインデックスしています。この数字は、今後も増え続けることが予想されます。

ネットワークインデクサの使用方法

ネットワークインデクサはcid.contactでホストされており、HTTPまたはlibp2pを介してそのAPIにリクエストを送ることでアクセスすることができます。cid.contactインデクサは、CIDを手動で入力し、問い合わせをするために利用する、軽量なWebインターフェイスを備えています。これはcid.contact/cid/にリクエストを行い、結果が表示されるようになっています。

実例

ここでは、cid.contact indexerを使用したコンテンツ検索のデモを紹介します。

  1. ストレージプロバイダーf08403が保存している国立がん研究所のデータのSlingshot Recoveryページを表示します。
  2. 次に、案件IDの1つ、例えば34999166に移動します。
  3. 次に、ペイロードCID uAXASID5qXOLVLSg17P3C9tchE5BzxD4H2iAzwG6cJZL6bcAsをcid.contact検索ボックスでクリックします。

インデクサは、このCIDがID12D3KooWBwUERBhJPtZ7hg5N3q1DesvJ67xx9RLdSaStBz9Y6Ny8のストレージプロバイダーにあり、アドレスは/dns4/yablufc.ddns.net/tcp/4567であると応答します。これで、データを取得することができます。検索クライアントの例は、w3rc github repoで見ることができます。

これと同じ問い合わせを、このURLを使って直接行うこともできます。CIDで問い合わせるには、https://cid.contact/cid/uAXASID5qXOLVLSg17P3C9tchE5BzxD4H2iAzwG6cJZL6bcAsを利用してください。

これはプロバイダの情報をJSONとして返します。

{
    "MultihashResults": [{
        "Multihash": "EiA+alzi1S0oNez9wvbXIROQc8Q+B9ogM8BunCWS+m3ALA==",
        "ProviderResults": [{
            "ContextID": "AXESIM51QwYLyeGgLUIOT/Xyk1l+hfqSyj2EwN5wAH9Y3Z5n",
            "Metadata": "gID8AaNoUGllY2VDSUTYKlgoAAGB4gOSICAmwARKsu6MUK4TuhQXqDkXViVlAnKxjUUCEVGRGt78EWxWZXJpZmllZERlYWz1bUZhc3RSZXRyaWV2YWz1",
            "Provider": {
                "ID": "12D3KooWBwUERBhJPtZ7hg5N3q1DesvJ67xx9RLdSaStBz9Y6Ny8",
                "Addrs": ["/dns4/yablufc.ddns.net/tcp/4567"]
            }
        }]
    }]
}

この結果は、CIDがID12D3KooWBwUERBhJPtZ7hg5N3q1DesvJ67xx9RLdSaStBz9Y6Ny8のプロバイダーから利用でき、アドレス/dns4/yablufc.ddns/tcp/4567で到達可能であることも示しています。メタデータフィールドは、プロバイダーがコンテンツの場所を特定し、クライアントに配信するために使用するデータを含んでいます。

インデクサーのクエリー結果は、そのCIDで識別されるコンテンツが複数のプロバイダーによって利用可能である場合、1つのCIDに対して複数のプロバイダーレコードを含むことも可能です。また、一回のリクエストで多数のCIDを検索するバッチクエリも利用可能です。このため、レスポンスには複数のCIDに対する問い合わせをサポートするMultihashResults…の配列が含まれます。

CIDの代わりにマルチハッシュでプロバイダー情報を検索するには、cid.contact/multihash/エンドポイントを使用します。インデクサがデータを持つプロバイダーのリストを見るには、cid.contact/providersエンドポイントを参照してください。

自分自身のネットワークインデクサを実行する

はい、あなた自身のコンテンツをインデックスするために、ネットワークインデクサを実行することができます。インデクサは、こちらのコードを使えば、ほとんどのプラットフォームで構築することができます:

https://github.com/filecoin-project/storetheindex.

あなた自身のインデクサの実行方法と設定方法については、今後の議論のトピックになるでしょう。インデクサへのデータ提供に関する技術的なリソースは、以下のリンクから確認ができます。

次のアクション

最新のLotusリリースでは、ストレージプロバイダーはFilecoinコンテンツの大半にインデックスを付けられるようになります。そして、IPFSネットワークのインデックスを介してコンテンツの発見を可能にします。

私たちは、ネットワーク上のインデクサノードのセットを増やすことで、ネットワークインデックスの弾力性を高めることを計画しています。興味のある方はソフトウェアを実行し、Filecoin Slack#storetheindexでチームに連絡してみましょう。

本ブログは、www.filecoin.io/blogからの翻訳となります。

ソース:https://filecoin.io/blog/posts/introducing-the-network-indexer/

IJC-media

IJC-media

IPFSを中心とした技術による日本の産業競争力の向上を目指すIPFS JAPAN コンソーシアムが、最新の世界動向や業界情報を配信するメディアサイト

関連記事

コメント

この記事へのコメントはありません。

TOP