OceanBaseの分析型インスタンスとは
OceanBaseは、完全に独自開発されたエンタープライズ向けのネイティブ分散データベースであり、一般的なハードウェア上で金融級の高可用性を実現します。「三地五中心」という都市レベルの障害自動無損失ディザスタリカバリの新標準を確立し、TPC-Cベンチマークで世界記録を更新しています。単一クラスタで1,500ノードを超える規模をサポートし、クラウドネイティブ、強整合性、Oracle/MySQLとの高い互換性などの特徴を備えています。OceanBaseデータベースは、分析処理(AP)シナリオを重点的に最適化し、トランザクション処理(TP)と分析処理(AP)の統合を実現しています。今回の更新では、OceanBaseのLSM-Treeアーキテクチャを基盤とし、行ストアとカラムストアの統合ストレージを実現しています。同時に、カラムストアを基盤とした新しいベクトル化エンジンとコスト評価モデルも導入されました。これらの機能強化により、ワイドテーブルの処理効率が大幅に向上し、APシナリオにおけるクエリ性能が著しく強化されました。また、リアルタイムインポート、セカンダリインデックス、高並行性を備えた主キークエリなど、リアルタイムOLAPで一般的な要件もサポートしています。

主な強み
安定性と信頼性
- TPとAPの一体化構築による、金融コア取引システムで実証済みの安定性。
- 業界初の「三地五中心」アーキテクチャは、都市レベルの無損失ディザスタリカバリをサポートし、世界トップクラスのRPO = 0、RTO 8秒未満の自動障害復旧能力を備え、厳しい条件下での事業継続性を実現します。
高性能な分析
- OceanBaseデータベースは、カラムストアおよび行と列のハイブリッドストアをサポートし、多様なクエリ最適化手法により優れたクエリ性能を保証します。さらに、OceanBaseデータベースV4.3バージョンではベクトル化エンジン2.0を実装し、データ形式、演算子実装の最適化、ストレージのベクトル化最適化などにより、ベクトル化エンジンの実行性能を大幅に向上させました。
- アドホッククエリの性能はClickHouseと同等です。
- TPC-H 30000GBで第1位。
低コストで管理しやすい
- HTAP混合負荷により、従来のTP+APの2システムを1システムで代替でき、データベースやテーブルの分割が不要です。
HSAP
- 分析結果を直接オンラインデータサービスとして提供します。
マルチモーダル
- SQLを使用して、JSON、GIS、テキストなどの非構造化データを分析できます。
適用シナリオ
シナリオ1:リアルタイムレポートとリアルタイムリスク管理
データベースの利用方法として、ほとんどのケースではOLTP負荷が中心ですが、時折OLAP負荷が発生する場合があります。このようなシナリオでは、分析のために専用のAPクラスタを購入するのは非常に非効率的です。この場合、OceanBaseデータベースの行と列の混合レプリカを使用するか、行ストアレプリカ上にカラムストアインデックスを構築することができます。行形式でTPを、列形式でAPを実行し、リソースグループによってソフト分離を実現します。
行ストアを基盤とし、カラムストアインデックスを作成することで、クラスタ内でカラムストアの機能を獲得し、クエリの高速化を実現します。行ストアとカラムストアは同一クラスタ内に存在し、同じリソースセットを共有します。リソース分離の要件に対応するため、同一テナント内でcgroupによる分離、CPU、I/Oなどの分離を提供し、TPとAPが互いに干渉しないようにしています。
- TPには行ストアを使用
- APにはカラムストアインデックスを使用(ストレージコストを削減)
- 分離にはリソースグループを使用

シナリオ2:リアルタイムデータウェアハウス
OceanBaseデータベースは、カラムストア、パラレル実行エンジン、ベクトル化エンジン、リライトとコストに基づくオプティマイザーを基盤としており、軽量データウェアハウスとしての役割を担う能力を備えています。データウェアハウスシナリオでは、OceanBaseデータベースを全面的に使用してETLを簡素化できます。マテリアライズドビューを使用してETLを簡素化することができ、同時にFlinkもサポートしています。既存のFlinkクエリは修正せずにそのまま使用でき、OceanBaseデータベースをストレージとして活用できます。OceanBaseデータベースは、ODSのログをサブスクライブしてリアルタイムにストリーム処理を行い、結果をADSに書き込んで外部システムへのインタラクティブクエリや連携クエリを提供します。
- APにはカラムストアを使用
- TPには行ストアインデックスを使用(APのポイントルックアップクエリを高速化)
- 分離にはリソースグループを使用


シナリオ3:Servingシナリオ
Servingシナリオとは、即時の意思決定やインタラクティブなデータ探索を支援するために、高速な応答と低遅延でのデータ処理・分析が求められるシナリオを指します。通常、集計操作の高速化にはカラムストアが採用され、インデックスを利用してデータ検索時間を短縮し、分散コンピューティングフレームワークを活用して水平方向にスケールアウトし、大規模なデータセットを処理します。
Servingのパフォーマンスを向上させるため、業務上では通常、結果を事前に結合して大規模なワイドテーブルとしてデータベースに格納し、そのワイドテーブルに対して高並行性の単一テーブル集計操作を実行します。
OceanBaseデータベースは、ServingシナリオにおいてClickHouseの代替として使用できます。

技術アーキテクチャ
- OceanBaseデータベースの技術アーキテクチャについては、OceanBaseシステムアーキテクチャをご参照ください。
- OceanBaseデータベースの技術原理の詳細については、OceanBaseシステム原理の章をご参照ください。