Distributed algorithm (original) (raw)
分散アルゴリズム(ぶんさんアルゴリズム、英語: Distributed algorithm)とは、相互接続されたプロセッサにより構成されるハードウェア上で実行するために設計されたアルゴリズムである。分散アルゴリズムは分散コンピューティングの多くの応用分野において使われ、その例として、通信、科学計算、分散情報処理、リアルタイムプロセス管理などがある。分散アルゴリズムによって解決された標準的な問題として、リーダー選出、合意、分散検索、全域木生成、ミューテックス、リソース割り当てなどがある。 典型的な分散アルゴリズムは、並列に実行され、アルゴリズムの各部が独立したプロセッサ上で同時に実行され、アルゴリズムの他の部分については限定的な情報しか持たない。分散アルゴリズムを開発し、実装する上での大きな課題となるのが、プロセッサ障害が発生し、通信接続が不確実であるような環境において、アルゴリズムの独立した部分の動作を統制することである。与えられた問題に対し、適切な分散アルゴリズムを選択することは、問題の特徴と、アルゴリズムが実行されるシステムの特徴の両方に依存する。ここでシステムの特徴とは、プロセッサの性能や、通信接続の障害、可能なプロセス間通信の種類、プロセス間の同期を行う際の精度などを指す。
Property | Value |
---|---|
dbo:abstract | A distributed algorithm is an algorithm designed to run on computer hardware constructed from interconnected processors. Distributed algorithms are used in different application areas of distributed computing, such as telecommunications, scientific computing, distributed information processing, and real-time process control. Standard problems solved by distributed algorithms include leader election, consensus, distributed search, spanning tree generation, mutual exclusion, and resource allocation. Distributed algorithms are a sub-type of parallel algorithm, typically executed concurrently, with separate parts of the algorithm being run simultaneously on independent processors, and having limited information about what the other parts of the algorithm are doing. One of the major challenges in developing and implementing distributed algorithms is successfully coordinating the behavior of the independent parts of the algorithm in the face of processor failures and unreliable communications links. The choice of an appropriate distributed algorithm to solve a given problem depends on both the characteristics of the problem, and characteristics of the system the algorithm will run on such as the type and probability of processor or link failures, the kind of inter-process communication that can be performed, and the level of timing synchronization between separate processes. (en) Un algorithme réparti (ou distribué) est une suite d'instructions et il est généralement un algorithme parallèle (mais pas toujours, exemple, une communication téléphonique) réparti sur plusieurs sites. Chaque site calcule (i.e. produit de nouveaux résultats) et communique (i.e. échange des données avec d'autres sites). Un algorithme réparti décrit le fonctionnement d'un système informatique composé de plusieurs unités de calcul reliées par un réseau de communication, tels que les routeurs dans Internet. L'algorithme d'un site isolé est appelé algorithme local. Il correspond le plus souvent à un algorithme séquentiel classique exprimé à la manière de la programmation événementielle : le site réagit à des actions externes (e.g. début de l'algorithme), des conditions internes (e.g. le site a atteint un état particulier) ou à l'arrivée d'un message. L'ensemble des algorithmes locaux constitue un algorithme réparti, aussi appelé protocole. Lorsque tous les algorithmes locaux sont identiques, l'algorithme est dit uniforme. (fr) 分散アルゴリズム(ぶんさんアルゴリズム、英語: Distributed algorithm)とは、相互接続されたプロセッサにより構成されるハードウェア上で実行するために設計されたアルゴリズムである。分散アルゴリズムは分散コンピューティングの多くの応用分野において使われ、その例として、通信、科学計算、分散情報処理、リアルタイムプロセス管理などがある。分散アルゴリズムによって解決された標準的な問題として、リーダー選出、合意、分散検索、全域木生成、ミューテックス、リソース割り当てなどがある。 典型的な分散アルゴリズムは、並列に実行され、アルゴリズムの各部が独立したプロセッサ上で同時に実行され、アルゴリズムの他の部分については限定的な情報しか持たない。分散アルゴリズムを開発し、実装する上での大きな課題となるのが、プロセッサ障害が発生し、通信接続が不確実であるような環境において、アルゴリズムの独立した部分の動作を統制することである。与えられた問題に対し、適切な分散アルゴリズムを選択することは、問題の特徴と、アルゴリズムが実行されるシステムの特徴の両方に依存する。ここでシステムの特徴とは、プロセッサの性能や、通信接続の障害、可能なプロセス間通信の種類、プロセス間の同期を行う際の精度などを指す。 (ja) 분산 알고리즘(distributed algorithm)은 상호 연결된 프로세서로부터 구성된 컴퓨터 하드웨어에서 실행되도록 설계된 알고리즘이다. 분산 알고리즘은 전기 통신, 계산컴퓨팅, 분산 정보 처리, 실시간 공정관리 등 각기 다른 분산 컴퓨팅 부문에 사용된다. 분산 알고리즘에 의해 해결되는 표준 문제들로는 리더 선출, 합의, 분산 검색 신장 트리 생성, 상호 배제, 이 있다. (ko) 分散式演算法(英語:Distributed algorithm),一種演算法類型。為分散式計算而設計,它運行在一群相互連結的處理器所構成的計算機硬體平台上。分散式演算法以方式執行,是平行演算法下的子類別。因為同時運行在不同處理器上,對演算法其他部份運行情況的資訊所知有限,使得這類型的演算法較為困難。 (zh) |
dbo:wikiPageExternalLink | http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-852j-distributed-algorithms-fall-2009/ |
dbo:wikiPageID | 3367202 (xsd:integer) |
dbo:wikiPageLength | 5370 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID | 1123534512 (xsd:integer) |
dbo:wikiPageWikiLink | dbr:Non-blocking_data_structures dbr:Algorithm dbr:Information_processing dbr:Resource_allocation dbr:Three-phase_commit_protocol dbr:Concurrency_(computer_science) dbr:Consensus_(computer_science) dbr:Computer_hardware dbr:Parallel_algorithm dbr:Spanning_tree dbr:Terminating_Reliable_Broadcast dbr:Mutual_exclusion dbr:Distributed_computing dbr:Leader_election dbr:Central_processing_unit dbr:Process_control dbr:Atomic_commit dbr:Telecommunications dbc:Distributed_algorithms dbr:Scientific_computing dbr:Inter-process_communication dbr:Raft_(computer_science) dbr:Search_algorithm dbr:Two-phase_commit_protocol dbr:Replication_(computer_science) dbr:Paxos_algorithm dbr:Vertex_coloring dbr:Spanning_tree_(mathematics) |
dbp:wikiPageUsesTemplate | dbt:Citation dbt:Commonscatinline dbt:Reflist dbt:Doi-inline |
dct:subject | dbc:Distributed_algorithms |
gold:hypernym | dbr:Algorithm |
rdf:type | dbo:Software yago:Abstraction100002137 yago:Act100030358 yago:Activity100407535 yago:Algorithm105847438 yago:Event100029378 yago:Procedure101023820 yago:PsychologicalFeature100023100 yago:YagoPermanentlyLocatedEntity yago:Rule105846932 yago:WikicatDistributedAlgorithms |
rdfs:comment | 分散アルゴリズム(ぶんさんアルゴリズム、英語: Distributed algorithm)とは、相互接続されたプロセッサにより構成されるハードウェア上で実行するために設計されたアルゴリズムである。分散アルゴリズムは分散コンピューティングの多くの応用分野において使われ、その例として、通信、科学計算、分散情報処理、リアルタイムプロセス管理などがある。分散アルゴリズムによって解決された標準的な問題として、リーダー選出、合意、分散検索、全域木生成、ミューテックス、リソース割り当てなどがある。 典型的な分散アルゴリズムは、並列に実行され、アルゴリズムの各部が独立したプロセッサ上で同時に実行され、アルゴリズムの他の部分については限定的な情報しか持たない。分散アルゴリズムを開発し、実装する上での大きな課題となるのが、プロセッサ障害が発生し、通信接続が不確実であるような環境において、アルゴリズムの独立した部分の動作を統制することである。与えられた問題に対し、適切な分散アルゴリズムを選択することは、問題の特徴と、アルゴリズムが実行されるシステムの特徴の両方に依存する。ここでシステムの特徴とは、プロセッサの性能や、通信接続の障害、可能なプロセス間通信の種類、プロセス間の同期を行う際の精度などを指す。 (ja) 분산 알고리즘(distributed algorithm)은 상호 연결된 프로세서로부터 구성된 컴퓨터 하드웨어에서 실행되도록 설계된 알고리즘이다. 분산 알고리즘은 전기 통신, 계산컴퓨팅, 분산 정보 처리, 실시간 공정관리 등 각기 다른 분산 컴퓨팅 부문에 사용된다. 분산 알고리즘에 의해 해결되는 표준 문제들로는 리더 선출, 합의, 분산 검색 신장 트리 생성, 상호 배제, 이 있다. (ko) 分散式演算法(英語:Distributed algorithm),一種演算法類型。為分散式計算而設計,它運行在一群相互連結的處理器所構成的計算機硬體平台上。分散式演算法以方式執行,是平行演算法下的子類別。因為同時運行在不同處理器上,對演算法其他部份運行情況的資訊所知有限,使得這類型的演算法較為困難。 (zh) A distributed algorithm is an algorithm designed to run on computer hardware constructed from interconnected processors. Distributed algorithms are used in different application areas of distributed computing, such as telecommunications, scientific computing, distributed information processing, and real-time process control. Standard problems solved by distributed algorithms include leader election, consensus, distributed search, spanning tree generation, mutual exclusion, and resource allocation. (en) Un algorithme réparti (ou distribué) est une suite d'instructions et il est généralement un algorithme parallèle (mais pas toujours, exemple, une communication téléphonique) réparti sur plusieurs sites. Chaque site calcule (i.e. produit de nouveaux résultats) et communique (i.e. échange des données avec d'autres sites). Un algorithme réparti décrit le fonctionnement d'un système informatique composé de plusieurs unités de calcul reliées par un réseau de communication, tels que les routeurs dans Internet. (fr) |
rdfs:label | Distributed algorithm (en) Algorithmique répartie (fr) 분산 알고리즘 (ko) 分散アルゴリズム (ja) 分散式演算法 (zh) |
owl:sameAs | freebase:Distributed algorithm yago-res:Distributed algorithm wikidata:Distributed algorithm dbpedia-fr:Distributed algorithm dbpedia-ja:Distributed algorithm dbpedia-ko:Distributed algorithm dbpedia-vi:Distributed algorithm dbpedia-zh:Distributed algorithm https://global.dbpedia.org/id/2e2Df |
prov:wasDerivedFrom | wikipedia-en:Distributed_algorithm?oldid=1123534512&ns=0 |
foaf:isPrimaryTopicOf | wikipedia-en:Distributed_algorithm |
is dbo:wikiPageRedirects of | dbr:Distributed_algorithms |
is dbo:wikiPageWikiLink of | dbr:Queue_number dbr:List_of_algorithms dbr:Deadlock dbr:Deadlock_prevention_algorithms dbr:Kőnig's_theorem_(graph_theory) dbr:Linda_Pagli dbr:Three-phase_commit_protocol dbr:Maximal_independent_set dbr:SPIN_model_checker dbr:Sequential_algorithm dbr:Google_Code_Jam dbr:Graph_coloring dbr:Parallel_algorithm dbr:Matching_preclusion dbr:Aiichiro_Nakano dbr:Weak_coloring dbr:Distributed_computing dbr:Distributed_constraint_optimization dbr:Distributed_minimum_spanning_tree dbr:Brigitte_Plateau dbr:Brooks–Iyengar_algorithm dbr:Folded_cube_graph dbr:Hirschberg–Sinclair_algorithm dbr:Michel_Raynal dbr:Hybrid_algorithm dbr:Alessandra_Sala dbr:Superstabilization dbr:Reachability_analysis dbr:Sorting_algorithm dbr:Cannon's_algorithm dbr:Shahid_Hussain_Bokhari dbr:Two-phase_commit_protocol dbr:Distributed_algorithms dbr:List_of_terms_relating_to_algorithms_and_data_structures dbr:Michael_Luby dbr:Self-stabilization dbr:Rocha–Thatte_cycle_detection_algorithm dbr:Torsten_Suel dbr:Outline_of_computer_programming dbr:Parallel_Processing_Letters dbr:Parallel_breadth-first_search dbr:Tuple_space |
is foaf:primaryTopic of | wikipedia-en:Distributed_algorithm |