US10375037
[0003] Some known distributed database systems attempt to achieve consensus for values within the distributed database systems (e.g., regarding the order in which transactions occur).
【背景技術】
【0003】
[1003] 一部の知られている分散データベースシステムは、(例えばトランザクションが行われる順序に関して)分散データベースシステム内の値に関するコンセンサスを達成しようと試みる。
For example, an online multiplayer game might have many computer servers that users can access to play the game.
例えばオンラインのマルチプレーヤゲームは、ゲームで遊ぶためにユーザがアクセス可能な多くのコンピュータサーバを有し得る。
If two users attempt to pick up a specific item in the game at the same time, then it is important that the servers within the distributed database system eventually reach agreement on which of the two users picked up the item first.
2人のユーザがゲーム内で特定のアイテムを同時に拾おうと試みる場合、分散データベースシステム内のサーバは2人のユーザのどちらがそのアイテムを最初に拾ったのかに関して最終的に合意に達することが重要である。
[0004] Such distributed consensus can be handled by methods and/or processes such as the Paxos algorithm or its variants.
【0004】
[1004] かかる分散コンセンサスは、Paxosアルゴリズム又はその改変形態等の方法及び/又はプロセスによって処理することができる。
Under such methods and/or processes, one server of the database system is set up as the “leader,” and the leader decides the order of events.
かかる方法及び/又はプロセスの下、データベースシステムの1つのサーバが「リーダ」としてセットアップされ、そのリーダがイベントの順序を決定する。
Events (e.g., within multiplayer games) are forwarded to the leader, the leader chooses an ordering for the events, and the leader broadcasts that ordering to the other servers of the database system.
(例えばマルチプレーヤゲーム内の)イベントはリーダに転送され、リーダがイベントの順序付けを決め、その順序付けをデータベースシステムの他のサーバにブロードキャストする。
[0005] Such known approaches, however, use a server operated by a party (e.g., central management server) trusted by users of the database system (e.g., game players).
【0005】
[1005] しかし、かかる既知の手法はデータベースシステムのユーザ(例えばゲームのプレーヤ)によって信頼されている当事者(例えば中央管理サーバ)によって運営されるサーバを使用する。
Accordingly, a need exists for methods and apparatus for a distributed database system that does not require a leader or a trusted third party to operate the database system.
従って、データベースシステムを運営するのにリーダ又は信頼できるサードパーティを必要としない分散データベースシステムのための方法及び機器が求められている。
[0057] FIG. 6 illustrates a hashgraph 640 of one example for determining a total order.
【0049】
[1057] 図6は、全順序を決定するための一例のハッシュグラフ640を示す。
Hashgraph 640 illustrates two events (the lowest striped circle and lowest dotted circle) and the first time each member receives an indication of those events (the other striped and dotted circles).
ハッシュグラフ640は、2つのイベント(一番下のストライプの円及び一番下のドットの円)と、各メンバがそれらのイベントの指示を受信した最初のとき(他のストライプの円及びドットの円)とを示す。
Each member's name at the top is colored by which event is first in their slow order(*イミフ).
上部の各メンバの名前は、どのイベントがそれぞれの遅い順で最初に来るのかによって色付けしている。
There are more striped initial votes than dotted; therefore consensus votes for each of the members are striped.
ドットよりもストライプの初期投票が多く、従ってメンバそれぞれのコンセンサス投票はストライプである。
In other words, the members eventually converge to an agreement that the striped event occurred before the dotted event.
換言すれば、メンバは最終的にストライプのイベントがドットのイベントよりも前に生じたという合意に収束する。
【0050】
WO2004090857
In addition, some systems appear to display a"memory"effect, such that the impulse needed for (say) a 0-1 transition varies somewhat depending upon whether a particular pixel undergoes 0-0-1, 1-0-1 or 3-0-1 transitions.
また、(例えば)0-1転移に必要なインパルスが、特定の画素の転移の種類、0-0-1、1-0-1、あるいは3-0-1などに従って若干変動するように、見かけ上「メモリ」効果を表示するシステムもある。
(Where, the notation"x-y-z", where x, y, and z are all optical states 0,1, 2, or 3 denotes a sequence of optical states visited sequentially in time, list from earlier to later. )
(上記中、x、y、zが全光学状態0、1、2、3である、「x-y-z」という表記法は、時間的に早い順から遅い順にアクセスされる光学状態の順序を示す)。
Although these problems can be reduced or overcome by driving all pixels of the display to one of the extreme states for a substantial period before driving the required pixels to other states, the resultant"flash"of solid color is often unacceptable;
上記の問題は、目的の画素を次の状態に移動する前に、かなりの期間、全表示画素を一方の極度状態へ駆動することで低減あるいは克服できるが、結果として生じる無地の「フラッシュ」は許容し難いことが多い。
for example, a reader of an electronic book may desire the text of the book to scroll down the screen, and may be distracted, or lose his place, if the display is required to flash solid black or white at frequent intervals.
例えば、電子ブックの読者が画面の文をスクロールダウンしたい時、もし画面が頻繁に黒か白の無地のフラッシュを表示する必要があるとすると、気が散ったり、読んでいた場所が分らなくなったりする可能性がある。
US7337446
In such situations, the computer is at a loss to distinguish which task should be performed and which should not.
【0006】
このような状況では、コンピュータは、どのタスクを実施すべきであってどのタスクを実施すべきでないかの識別に窮する。
Today, applications obtain resources on first-come or last-come basis. Accordingly, the applications control resource allocation irrespective of the users' desires.
今日、アプリケーションは、先着順または遅い順にリソースを得る。したがってアプリケーションは、ユーザの希望に関係なくリソース割振りを制御する。