並列動的検索


24

合理的な作業効率でありながら、更新用の類似またはひどく悪いプロパティを持つ赤黒木に自然な並列類似物はありますか?

より一般的には、更新を伴う並列検索でできることは何ですか?


特に、どのプロパティを保持するか、または「ひどく悪い」にしたいですか?バランス条件が赤黒木のそれであることはどれほど重要ですか?同時スキップリストのように、予想される境界は受け入れられますか?
jbapple

予想される範囲は問題ないと思います。これは、更新されたキー値でデータ構造に頻繁にアクセスする状況であるため、正確で効率的なキー変更操作でも、フィボナッチヒープは問題ありません。同時スキップリストの参考文献はありますか?
スレシュヴェンカト

Herlihy&Shavitの本、The Art of Multiprocessor Programming、または「ロックフリーリンクリストとスキップリスト」またはjava.util.concurrentまたはPractical lock-freedom石蹴りハッシュテーブルのような同時ハッシュテーブルの使用を検討しましたか?
jbapple

実は違う。残念ながら、並行メソッドについては文盲です。参照していただきありがとうございます。
Suresh Venkat

回答:


8

私が知ることができることから、戦略にはバランス条件を緩和し、その後、一気にリバランス更新を実行することが含まれます。ここに、Hanke et al。、1997 [PDF]からの論文があります。これは、更新操作を同時に実行できるように更新操作を集約および解決する手法に焦点を当てていると思います。


5

岡崎の著書、Purely Functional Data Structuresに興味深い答えが見つかるかもしれません。本書では、多くのデータ構造が示されており、すべての更新に費用がかかるわけではありません(通常は一定の時間または対数時間しかかかりません)。

nn


4
これ以上変更しないと、純粋に機能的な検索ツリーがすべての更新をシリアル化するため、書き込み競合下でパフォーマンスが低下すると思います。
jbapple
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.