質問

クエリ可能なピアツーピア システムがある場合は、次のことを行いたいと考えます。

  • ネットワーク全体のクエリの総数を削減します (「人気のある」アイテムを広く配布し、「類似した」アイテムを一緒に配布することによって)
  • 各ノードでの過剰なストレージを回避する
  • クライアントのダウンタイム、ハードウェア障害、ユーザーの離脱に直面した場合でも、中程度に希少なアイテムであっても良好な可用性を保証します (おそらくアーキビスト/歴史家にとってレアなアイテムを検出する可能性があります)。
  • ネットワークが分断された場合に、クエリで一致が見つからないことを回避します。

これらの要件を考慮すると、次のようになります。

  1. 標準的なアプローチはありますか?そうでない場合、尊重されているが実験的な研究はありますか?私は分散スキームについてはある程度知っていますが、堅牢性のための学習に実際に取り組んでいるものは見たことがありません。
  2. 明らかな基準が欠けていませんか?
  3. この問題に取り組む/解決することに興味のある人はいますか?(そうであれば、私が今週末に作成した非常に貧弱なシミュレータの一部を喜んでオープンソースにし、役に立たないアドバイスを提供します)。

@cdv:今ビデオを見ましたが、非常に優れています。プラグイン可能な配信戦略に完全に到達しているとは感じませんが、90% は確実に達成できています。ただし、これらの質問は、このアプローチとの有益な違いを強調しており、さらなる懸念事項のいくつかに対処し、フォローアップするための参考資料を提供します。したがって、質問は未解決であると考えますが、暫定的にあなたの回答を受け入れます。

役に立ちましたか?

解決

時間があればチェックしてみる価値はあります Wuala が行った Google の技術講演. 。彼らは、ピアツーピア ファイル システムを構築するときに直面したのと同じ問題について話し合います。

他のヒント

世の中には、求めるもののさまざまな側面を備えた複数のシステムがあり、それぞれが異なる妥協を行っています。たとえば、次のようなものがありますが、これらに限定されません。

アマゾンのダイナモ: http://s3.amazonaws.com/AllThingsDistributed/sosp/amazon-dynamo-sosp2007.pdf

カイ: http://www.slideshare.net/takemaru/kai-an-open-source-implementation-of-amazons-dynamo-472179

ハドゥープ: http://hadoop.apache.org/core/docs/current/hdfs_design.html

コード: http://pdos.csail.mit.edu/chord/

蜂の巣: http://www.cs.cornell.edu/People/egs/beehive/

他にもたくさんあります。これらの方針に沿ってカスタム システムを構築した後、いくつかの構成要素もオープン ソース形式で公開しました。 http://code.google.com/p/distributerl/(これはシステム全体ではありませんが、システムの構築に役立ついくつかのライブラリです)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top