写真-morenhsu -Unsplash
ハイパードライブについて一言
これは、分散アーキテクチャアプリケーション用のPOSIXのようなファイルシステムです。その階層は単一のツリーで表され、すべてのオブジェクトには、絶対(ルートから)と相対(現在の作業ディレクトリから)の2つの名前があります。Hyperdriveは、オープンP2PブラウザーBeakerの作成者によって開発されています。これにより、「ブラウザー内で」サイトをホストできます。ローカルフォルダーを作成し、対応するリンクを共有するだけです。
システムの仕組み
Node.jsに実装されています-そのソースコードはGitHubにあります。著者によると、Hyperdriveの操作は、標準のNodeモジュール(fs)との対話に似ています。次に例を示します。
var hyperdrive = require('hyperdrive')
var archive = hyperdrive('./my-first-hyperdrive') // content will be stored in this folder
archive.writeFile('/hello.txt', 'world', function (err) {
if (err) throw err
archive.readdir('/', function (err, list) {
if (err) throw err
console.log(list) // prints ['hello.txt']
archive.readFile('/hello.txt', 'utf-8', function (err, data) {
if (err) throw err
console.log(data) // prints 'world'
})
})
})
ハイパードライブの心臓部であるHypercoresと呼ばれる2つの特殊な構造。これらは追加専用のログです。 1つ目はインデックスメタデータを格納し、2つ目はファイルバイナリを格納します。ファイル名とフォルダー名は、検索を容易にするために、接頭辞付きのハッシュツリーを使用してインデックスが付けられます。ある意味で、それは高速なキー値システムとして機能します。データの整合性は、BLAKE2b-256暗号化ハッシュ関数を備えたMerkleツリーを使用して検証されます。特別なデーモン は、ファイルシステムへのユーザー要求を処理する責任があります。そのCLIを使用すると、Hyperdriveディレクトリを作成、共有、および表示できます。デーモンはFUSEをサポートします
したがって、ハイパードライブはLinuxおよびMacシステムでは通常のフォルダーとして表示されます。
どこで使われていますか
Hyperdriveは、機能的にクラウドストレージに似た分散アプリケーションの開発に適しています。たとえば、ScienceFairオープンソースプラットフォームはそれを使用します。彼女は、研究者が科学文献、ジャーナル、記事、それらからの抜粋を検索し、彼ら自身の洞察を共有するのを助けます。
もちろん、Beakerブラウザの開発者は独自のファイルシステムを使用します。これは、格納された表示のウェブサイトに必要なデータを。
写真-クリント・アデア- Unsplash
ハイパードライブはの心臓部であるダットのプロトコル..。分散ネットワークでのデータ交換に必要です。送信中、ファイルはさまざまなサイズの小さなフラグメントに分割され、受信側で1つのDatファイルに収集されます。システムでは、新しいフラグメントを追加できますが、既存のフラグメントを変更または削除することはできません。このアプローチにより、ドキュメントの変更履歴を保存できます。
今日、かなり大きなコミュニティがすでにDatの周りに形成されており、特別なDat Foundationがその推進に取り組んでいます。これは、MozillaとCode for Science&Societyによってサポートされています。長期的には、これらの組織は、DatプロトコルとHyperdriveファイルシステムの両方の人気の高まりに貢献します。
1cloud.ru:
:
:
RAID-