OceanBaseデータベースはシングルプロセスです。OceanBaseデータベースでは、一部のスレッドが分散データベースサービスを維持するためのシステムスレッドとして機能し、別の一部のスレッドがデータベース負荷を処理するワーカースレッドとして機能します。
OceanBaseデータベースのスレッド分類
全体として、OceanBaseデータベースのスレッドは以下のカテゴリに分類できます:
テナントスレッド:テナントのリクエスト処理を担当するスレッド。例えば、SQLやトランザクションリクエストを処理するスレッド。命名規則は
TNT_L<n>_<tenant id>です。システムスレッド:
net io:ネットワークI/Oを処理するスレッド。
disk io:ディスクI/Oを処理するスレッド。
dag スレッド:パーティションのダンプ、メジャーコンパクション、移行などのタスクを実行するために使用されます。
clog writer:clogを書き込むスレッド。
election worker:選挙スレッド。
misc timer:複数のバックグラウンドタイマースレッドを含み、主にリソースのクリーンアップを担当します。
その他、Root Server専用のスレッドもありますが、ここでは詳細な分類は行いません。
最後に、特定の用途を持つバックグラウンドスレッドもありますが、OceanBaseデータベースをさらに深く理解する前は、これらは無視しても構いません。
その中で、テナントスレッドは各テナント専用であり、そのテナントのリクエストを実行する責任を持ちます。システムスレッドは、ノード上のobserverプロセスの正常な実行とリクエスト処理を保証する役割を担い、マルチテナントで共有されます。
詳細を見る
OceanBaseデータベースのスレッドの詳細については、スレッドの概要を参照してください。