内部Catalogとは、OceanBaseデフォルトのデータベース内部データのディレクトリであり、現在のテナント内で作成されたすべてのデータベースとテーブルが含まれます。各テナントには、internalという名前の内部データディレクトリが1つだけ存在します。
- 現在のテナント内で標準DDL(例えば
CREATE DATABASE、CREATE TABLEなど)を使用して作成されたすべてのオブジェクトは、デフォルトでinternal Catalogに属します。 - internal Catalogは外部Catalog(例えばHMS Catalogなど)から論理的に分離されており、ローカルデータと外部データソースを区別しやすくなっています。
- internal Catalogの作成、削除、または名前の変更はサポートされていません。
特徴
- 明示的に宣言する必要はなく、
USE database;を使用して直接アクセスできます。 - 完全なDDL/DML操作(
CREATE TABLE、INSERTなど)をサポートしています。 - テーブルデータはOceanBase分散ストレージエンジンに保存されます。
例
-- 内部テーブルのクエリ(Catalogを指定する必要はありません)
USE ap_db;
SELECT COUNT(*) FROM user_behavior;
-- 内部Catalogを明示的に指定する(オプション)
SELECT COUNT(*) FROM internal.ap_db.user_behavior;
-- 内部Catalogに切り替える
SET CATALOG internal;
-- あるいはuse internal.ap_dbまたはuse odps_catalog.tableを使用して、Catalogとデータベースの切り替えを一度に完了させることもできます
USE internal.ap_db;
注意
内部Catalogの名前はinternalですが、通常は省略可能です。