この記事では、Dorisのcompute-storage coupledモードとcompute-storage decoupledモードの違い、利点、適用シナリオを紹介し、ユーザーの選択の参考資料を提供します。
以下のセクションでは、compute-storage decoupledモードでApache Dorisをデプロイして使用する方法を詳細に説明します。compute-storage coupledモードでのデプロイメントについては、クラスター Deploymentセクションを参照してください。
DorisのアーキテクチャはFrontend (FE)とBackend (BE)の2つのプロセスで構成されています。FEは主にユーザーリクエストのアクセス、クエリの解析と計画、メタデータ管理、ノード管理を担当します。BEはデータの保存とクエリプランの実行を担当します。(詳細情報)
compute-storage coupledモードでは、BEノードがデータの保存と計算の両方を実行し、複数のBEノードが大規模並列処理 (MPP) 分散計算アーキテクチャを形成します。
BEノードはもはやプライマリデータを保存しません。代わりに、共有ストレージ層が統一されたプライマリデータストレージとして機能します。さらに、基盤のオブジェクトストレージシステムの制限とネットワーク転送のオーバーヘッドによって引き起こされるパフォーマンス損失を克服するため、Dorisはローカルコンピュートノード上に高速キャッシュを導入しています。
Meta data layer:
FEはメタデータ、ジョブ情報、権限、およびその他のMySQLプロトコル依存データを保存します。
Meta ServiceはDorisのcompute-storage decouplingモードにおけるメタデータサービスです。データインポートトランザクション処理、tablet meta、rowset meta、およびクラスターリソース管理を担当します。これは水平スケールが可能なステートレスサービスです。
Computation layer:
compute-storage decoupledモードでは、BEノードはステートレスです。クエリパフォーマンスを向上させるため、tabletメタデータとデータの一部をキャッシュします。
compute clusterは計算リソースとして機能するステートレスBEノードの集合です。複数のcompute clusterが単一のデータセットを共有し、compute clusterは必要に応じてノードを追加または削除することで弾力的にスケールできます。
:::info
compute-storage decoupledモードのcompute clusterの概念は、[クラスター Deployment]と[Create クラスター]セクションで説明されている「cluster」とは異なります。
compute-storage decoupledモードの文脈では、「Compute クラスター」は[クラスター Deployment]と[Create クラスター]セクションで説明されている複数のApache Dorisノードから構成される完全な分散システムではなく、特に計算リソースとして機能するステートレスBEノードの集合を指します。
:::
Shared storage layer:
共有ストレージ層は、segmentファイルとinverted indexファイルを含むデータファイルを保存します。