強力な機能と優れたスケーラビリティにより、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 年のトレンドは何ですか?
123systemsの年間プロモーションが始まりました。年間VPSが非常に安いだけでなく、足りないと...
現在、クラウド コンピューティングの導入は、ホスト型データ センター インフラストラクチャと同様の傾...
a2hosting がブラック フライデーの特別プロモーションを実施していたとき、シンガポールにデー...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています消費者は、...
Ivanti は、強力なセキュリティ機能、幅広いデバイスへの幅広いサポート、幅広いチャネルへのリーチ...
COVID-19パンデミックは、医療機関を世間の注目の的にしただけでなく、医療・健康業界におけるデジ...
OPA の Gatekeeper と Kyverno は、CNCF の 2 つの主要なポリシー管理プ...
インターネットで何をするにしても、より多くの訪問者を獲得したり、広めたい情報をより広く伝えたり、その...
コンテンツの品質、サイトの速度、サイトの構造、URL アドレスの構造など、サイトの掲載とランキングに...
最適化は修正とは異なります。修正とは元の設計に大きな変更を加えることであり、最適化とは結果を迅速に改...
2008 年に設立されたベトナムのホスティング会社である vinahost は、ベトナム、タイ (機...
[[385209]]ビル・ホームズは、象徴的なフェンダー・ストラトキャスターとテレキャスターのギター...
SEO オペレーターの多くは、一般的に、Web サイトのコンテンツの更新と外部リンクの投稿という 2...
みなさんこんにちは。私は外部リンクを投稿する男です。仕事が休みの時は何をしているのでしょうか?80年...
[[333521]]この記事はWeChat公式アカウント「Xintai Cloud Service...