前の記事「分散トランザクション、こんな遊び方もできる?」多くの議論を引き起こした。分散したものについて語る新しいシリーズを始める予定です。今日は、比較的わかりやすい「2フェーズコミット」から始めます。 ナレーション: 私は Paxos をわかりやすい言葉で説明することを目標にしました。
分散トランザクションはなぜ難しいのでしょうか? 分散環境では、各ノードは自身の操作の成功または失敗を知ることができますが、他のノードの操作の成功または失敗を知ることはできません。分散トランザクションが複数のノードにまたがる場合、トランザクションの原子性と一貫性を維持することは非常に困難です。 2 フェーズコミットとは何ですか? 2 フェーズ コミット (2PC) は、すべてのノードがトランザクションをコミットし、分散環境で一貫性を維持できるようにするアルゴリズムです。 参加者全員の操作結果を統合し、操作結果を実際にコミットするかロールバックするかを指示するコーディネータを導入します。 なぜ 2 フェーズ コミットと呼ばれるのでしょうか? 名前が示すように、2PC は 2 つのフェーズに分かれています。
ナレーション: これは、単一マシン トランザクションの trx.exec() として理解できます。
ナレーション: これは、単一マシン トランザクションの trx.commit() または trx.rollback() として理解できます。 例えば: A、B、C、D の 4 人が会議を開催し、会議の時間を決定する必要があります。 A がコーディネーターであり、B、C、D が参加者であると仮定します。 投票フェーズ (1)AはB、C、Dに電子メールを送り、明日10時の会議を通知し、都合がつくかどうかを尋ねる。 (2)Bは時間はあると答えた。 (3)Cは時間はあると答えた。 (4)ディンは長い間返事をしない。この時点で、A、B、C はすべてこのトランザクションに対してブロックされており、アルゴリズムは続行できません。 提出フェーズ (1)コーディネーターAは収集した結果をB、C、Dに通知する。 ナレーション: この場合、いつ通知するか、フィードバックの結果がどうなるかは、Ding の時間と決定によって決まります。
(2)乙は通知を受け取り、コーディネーターに通知を承認する。 (3)Cは通知を受け取り、コーディネーターに確認する。 (4)ディンは通知を受け取り、コーディネーターに確認の応答をする。 ナレーション: A がすべての ACK を受信しない場合、分散トランザクションは完了せず、次の投票ラウンドは実行されません。 2 フェーズコミットの欠点は何ですか? 2PC の実行中は、すべてのノードがブロック状態になり、ノードが保持するすべてのリソース (データベース データ、ローカル ファイルなど) がブロック状態になります。 典型的な状況は次のとおりです。
さらに、コーディネーターまたは参加者がクラッシュした場合、アルゴリズム全体が完全にブロックされた状態になるのを回避するために、アルゴリズムを前進させるためのタイムアウト メカニズムが必要になることがよくあります。 一般的に、2PC は比較的保守的で非効率的なアルゴリズムであり、分散トランザクションを実行するのは非常に困難です。 【この記事は51CTOコラムニスト「58 Shen Jian」によるオリジナル記事です。転載については原著者にお問い合わせください。 この著者の他の記事を読むにはここをクリックしてください |
<<: マイクロソフトのエンタープライズ クラウド サービスが中国に集結、クラウド イノベーションに無限の可能性をもたらす
>>: IBM は Redhat を 334 億ドルで買収します。これにより、クラウドの状況は完全に変わり、世界一のハイブリッド クラウド プロバイダーになります。
ガートナーによると、世界のインフラストラクチャ・アズ・ア・サービス(IaaS)市場は、2019年の4...
企業サイトのキーワードはどのように選べばいいのでしょうか?ある企業がインターネットでサイトを構築して...
この記事は主にフォーラム型ウェブサイトの組み込みに焦点を当てており、Baidu の組み込み契約である...
国内の新興企業であるChaMao Cloudは、主にクラウドサーバーと独立サーバー事業に注力しており...
2014年以降、多数の中国のインターネット企業が米国で株式を公開した。この過程で、「沈黙期間」または...
tranzmediaはインドのIT企業で、2005年に事業を開始したと言われていますが、具体的な情報...
草の根ウェブマスターになるのはとても忙しいです。毎日オリジナルの記事を探し、たくさんの外部リンクを投...
Hostsumo は、VPS 販売業者 sharknode のサブブランドです。違いは、hostsu...
今日、クラウド コンピューティングは、企業がワークフローを効率化するための手段にとどまらず、大きな差...
Baidu Webmaster Platform は、SEO 最適化を行う Web マスターにとって...
アプリプロモーションチャンネルに関する記事はたくさんあります。従来のチャンネル形式、無料と有料のもの...
人人影視はホームページに「中国語サイトは正式に閉鎖されました。国際版を閲覧する際は、お住まいの地域の...
SEOの重要性を認識するビジネスリーダーが増えているようです。彼らはプロのSEO会社に相談したり、従...
virmach の最後の VPS プロモーションは 2017 年 11 月のようで、最新の物理サーバ...
若者はコンピューター技術に精通しており、多くのチャンスを見つけることができますが、臨安には自分の技術...