OceanBaseデータベースのシステム管理において、構成管理、ストレージ管理、メモリ管理、プロセス管理、ディスク管理が中核をなしています。詳細は システム管理 をご参照ください。
構成管理
機能:構成管理は、システムパラメータやシステム変数を含むOceanBaseデータベースの実行パラメータを調整・最適化するために使用されます。 操作:システムパラメータ(例:memory_limit、cpu_countなど)を変更することで、データベースのリソース使用量と動作を制御できます。システム変数(例:sql_mode、time_zoneなど)は、SQL実行の動作と結果を調整するために使用されます。 ツール:SQLステートメントまたはOB Cloudコンソールを使用して構成管理を行えます。
ストレージ管理
機能:ストレージ管理は、データのストレージとパーティション管理を担当し、データの効率的な保存とアクセスを確保します。 アーキテクチャ:OceanBaseはLSM-Treeストレージアーキテクチャを採用しており、データは静的ベースラインデータ(SSTable)と動的増分データ(MemTable)に分かれています。データはまずMemTableに書き込まれ、一定の規模に達するとディスクにダンプされてSSTableとなります。 パーティション:水平パーティション(Hash、Range、Listパーティションなど)とサブパーティションをサポートしており、データは異なるノードに分散配置され、ロードバランシングと高可用性が確保されます。 レプリカ:各パーティションには複数のレプリカがあり、Paxosプロトコルによってデータの一貫性と高可用性が保証されます。
メモリ管理
機能:メモリ管理は、データベースのメモリ使用量を最適化し、効率的なデータ操作とアクセスを確保するために使用されます。 アーキテクチャ:OceanBaseのメモリはシステムメモリとテナントメモリに分かれています。システムメモリはデータベースエンジンの実行に使用され、テナントメモリは各テナントに割り当てられ、増分データ(MemStore)とキャッシュ(KVCache)の保存に使用されます。 マルチテナント:各テナントのメモリは相互に隔離されており、管理者はビジネスニーズに応じてテナントへのメモリリソースの割り当てを行うことができます。 監視:OB Cloudコンソールを使用してメモリ使用状況を監視し、メモリ割り当て戦略を適時調整できます。
プロセス管理
機能:プロセス管理は、OceanBaseデータベースのプロセスを監視・管理し、サービスの安定した稼働を確保します。 プロセスタイプ:主にOBServerプロセス(SQLエンジン、トランザクションエンジン、ストレージエンジンを担当)とRootServiceプロセス(クラスタ管理とリソーススケジューリングを担当)が含まれます。 高可用性:Paxosプロトコルによりプロセスの高可用性が実現され、プロセスに障害が発生した場合、スタンバイプロセスが自動的にサービスを引き継ぎます。
ディスク管理
機能:ディスク管理は、データの永続的な保存とディスクリソースの割り当てを担当します。 ストレージ層:データはSSTableに保存され、ストレージコストを削減するためにさまざまな圧縮アルゴリズムをサポートしています。 ディスク監視:コンソールを使用してディスク使用状況を監視し、適時にディスク拡張やデータ移行を行います。 バックアップ・リカバリ:フルバックアップ、増分バックアップ、ログバックアップをサポートし、データの安全性と復元可能性を確保します。