強力な機能と優れたスケーラビリティにより、Postgresql をベースにした分散アーキテクチャが数多く存在し、そのほとんどが分析シナリオで使用されています。以下では、いくつかの一般的なアーキテクチャ機能を比較します。 シタス Citus はプラグインの形で PostgreSQL に拡張されます。 PostgreSQL カーネルから独立しているため、PG のメインバージョンの更新にすぐに対応できます。また、導入も比較的簡単で、現在では分散ソリューションとして非常に人気があります。 Citus は Suning で広く使用されており、Microsoft も Citus の商用サポートを提供しています。以下は citus のアーキテクチャです。 Citus ノードは主にコーディネーション ノードとワーカー ノードに分けられます。コーディネーション ノードは実際のデータを保存するのではなく、データ配布に関するメタデータのみを保存します。実際のデータは複数のシャードに分割され、異なるワーカーノードに分散されます。アプリケーションはコーディネーション ノードに接続し、そこで SQL 解析が実行され、分散実行プランが生成されます。この実行プランはワーカー ノードに送信されて実行されます。 CN は結果を要約してクライアントに返します。 Ciitus の主な建築上の特徴は次のとおりです。 ①テーブルには参照テーブルと分散テーブルの2種類があります。各コーディネーション ノードとワーカー ノードには参照テーブルの完全なコピーが保持されますが、分散テーブルは分散され、さまざまなワーカーに配布されます。 ② 読み書き分離が行えます。上図に示すように、cn1 は書き込みノードです。複数の cn 読み取りノードを追加することで、クラスターの読み取り機能を高めることができます。ストリーム レプリケーションは、メタデータを同期するために書き込み CN と読み取り CN 間で使用されます。 ③MXモードをサポートし、メタデータを特定のワーカーノードに保存することで、ワーカーノードが直接書き込み機能を提供できるようになり、クラスターの書き込み機能が向上します。 ④ 基盤となるワーカーノードは、ストリームレプリケーションを通じてレプリカを構築し、高いデータ可用性を確保できます。 ⑤ 結合を行う場合、計算をワーカーノードにプッシュダウンできることが最良の結果となります。ただし、これは参照テーブルが他のテーブルと結合され、2 つのテーブルが同じ方法で分散されている場合にのみ実行できます。それ以外の場合は、計算のためにデータを調整ノードにプルする必要があります。 ⑥全体的なアーキテクチャはmycatミドルウェアに似ています。グローバルトランザクション管理がないため、データのリアルタイム読み取り一貫性は保証されませんが、パフォーマンスは向上します。データ書き込みの一貫性は 2pc によって保証されます。 pgxc && pgxl Pgxc は、古典的な分散データベース アーキテクチャであり、真のエンタープライズ レベルの HTAP です。市場に出回っている多くの分散データベース製品は、pgxc アーキテクチャに基づいて拡張されていることがわかります。 pgxc は pg カーネルと緊密に結合されており、pg カーネルに組み込まれています。当初、pgxc のコア開発者は pgxc を商品化し、stormdb を作成し、いくつかの並列演算子の最適化を実行しました。その後、TransLattice は stormdb を買収し、プロジェクトをオープンソース化しました。これは現在、pgxl となっています。したがって、pgxc と pgxl は同じ起源を持ち、コードの大部分は直接移植されています。以下は pgxc のアーキテクチャです。 実際、このアーキテクチャには Citus と同様の利点があります。また、コーディネーションノードとデータノードに分かれています。データはハッシュを通じて異なるデータ ノードにも分散されます。グローバル トランザクションの一貫性を確保するために、クラスターにグローバル トランザクション管理コンポーネントを追加するだけです。 pgxc のアーキテクチャ上の特徴は次のとおりです。 ① GTM はグローバル読み取り一貫性を保証し、2 フェーズコミットはグローバル書き込み一貫性を保証します。 ②GTMがシステム全体のボトルネックとなっている。同時実行数が 150 を超えると、GTM のボトルネックが発生します。トランザクションが開かれるたびに、トランザクション番号とスナップショット情報を取得するために GTM にアクセスするため、GTM ネットワークの負荷とトランザクション番号の割り当て速度にボトルネックが発生します。 ③複数のコーディネーションノード間でメタデータ情報を同期する必要がある。調整ノードに障害が発生すると、DDL がハングするだけでなく、2 フェーズ トランザクションがブロックされる可能性もあります。 ④pgxc の登場は主に oltp アプリケーション シナリオで pg を最適化することを目的としており、gtm の追加やデータの一貫性の確保など、より洗練されたものになっています。 ⑤ citusと同様に、データテーブルも分散テーブルと複製テーブルに分けられます。複製されたテーブルには、各データ ノード上の完全なデータのコピーが含まれます。 グリーンプラム Greenplum は、Pivotal が立ち上げたオープンソースの OLA MPP データベースです。ある程度、Greenplum ユーザーの数は PG ユーザーの数を上回っています。多くの人が Greenplum を通じて PG を知ったかもしれません。これは Greenplum の人気を物語っています。以下は Greenplum のアーキテクチャです。 マスター ノードはグローバル システム メタデータ情報を格納しますが、実際のデータは格納しません。データはハッシュを通じて異なるセグメントに分散されます。マスターは SQL のグローバル エントリ ポイントとして機能し、セグメント間でワークロードを分散し、処理結果を統合してクライアントに返す役割を担います。 Greenplum アーキテクチャの機能は次のとおりです。 ①マスターノードはプライマリノードとバックアップノードとして使用でき、セグメントノードにもミラーがあり、高可用性を確保します。セグメントのプライマリノードとバックアップノードは、可能な限り異なるサーバーに分散されます。 ②行列ハイブリッドストレージエンジンと外部テーブルをサポートします。 ③ 結合時には、ノード間でのデータ再配分の問題も発生しますが、これはシェアード・ナッシング・データベースの避けられない問題でもあります。 ④データ結合時の高速移動・集約を実現する高速内部相互接続ネットワーク。 ⑤効率的な並列データロード。 |
<<: 5Gとエッジコンピューティング、どのように選択するのでしょうか?
>>: クラウド コンピューティング モデル: 2021 年のトレンドは何ですか?
Crissic の openvz VPS プロモーションは非常に強力で魅力的です。2 つの IP、大...
hostodo からメールを受け取りました: 今日から、hostodo のすべての VPS がオンラ...
reprisehostingは、米国西海岸シアトルでデータ付きの独立サーバーの販売に注力しており、超...
クラウド コンピューティングは、デジタル経済の発展にとって重要な原動力となっています。世界のクラウド...
序文:百度プロモーション入札者として入札技術を習得したいなら、28 原則を実際の戦闘で柔軟に適用する...
Raksmart のクラウド サーバー (従来の VPS ではありません) は現在、全面的に 30%...
メーデー連休最終日の正午、QQ Spaceチームは「5月2日だけで、QQ Spaceにアップロードさ...
VPS (仮想プライベートサーバー) とクラウドサーバーの違いは、インフラストラクチャとリソースの割...
多くの SEO 担当者は、なぜ自分の Web サイトのインデックスが少ないのか、または新しい Web...
オープンソースの詳細については、以下をご覧ください。 51CTO オープンソース基本ソフトウェアコミ...
最近、上海は「上海市のデジタル変革を全面的に推進することに関する意見」を発表しました。上海は「経済、...
Cloudsilk は、11 月 30 日まで開催される今年の Double Eleven プロモー...
Racknerd は、現在中秋節プロモーションを開始しています。米国 VPS の年間料金は 11.8...
ウェブサイトが降格されると、ウェブサイトに大きな影響が出ます。多くのウェブマスターは、降格のためにウ...
2011 年に急成長を遂げた後、共同購入 Web サイトは 2012 年に重要な時期を迎えました。現...