このセクションでは、OceanBaseデータベースのMySQLモードでサポートされているデータベースオブジェクトの種類について説明します。
OceanBaseデータベースのMySQLモードにおけるデータベースオブジェクトの詳細は、次のテーブルのとおりです。
オブジェクトタイプ |
説明 |
|---|---|
| テーブル(Table) | データベースにおける最も基本的な格納単位であり、テーブル内のデータは行と列によって整理・配置されています。 |
| ビュー(View) | ビューは仮想的なテーブルであり、その内容はクエリによって定義されます。実際のテーブルと同様に、ビューには名前付きの列と行データのシリーズが含まれます。しかし、ビューはデータベース内に格納されたデータ値の集合としては存在しません。行と列のデータは、ビューを定義するクエリで参照されたテーブルから取得され、ビューが参照される際に動的に生成されます。 |
| インデックス(Index) | インデックスは、データベーステーブルの1列または複数列の値をソートするための構造であり、インデックスを使用することでデータベーステーブル内の指定情報に迅速にアクセスできます。例えば、特定の従業員の姓でその人を検索したい場合、テーブル内のすべての行を検索するのと比較して、インデックスは情報をより迅速に取得するのに役立ちます。 |
| パーティション(Partition) | OceanBaseデータベースでは、通常のテーブルのデータを一定のルールに従って複数のブロックに分割し、同一ブロック内のデータを物理的にまとめて保存することができます。このようにブロックに分割されたテーブルをパーティションテーブルと呼びます。OracleのPartition概念と同じで、OceanBaseデータベースでは水平パーティションのみが存在し、テーブルの各パーティションはレコードの一部を含みます。行データとパーティションとのマッピング関係によって、Hashパーティション、Rangeパーティション(範囲)、Listパーティションなどに分類されます。各パーティションはさらに異なる次元で複数のパーティションに分割することができ、これをサブパーティションと呼びます。例えば、取引記録テーブルをユーザーIDごとに複数のHashパーティションに分割し、各一次Hashパーティションを取引時間でさらに複数の二次Rangeパーティションに分割することができます。 |
| トリガー(Trigger) | トリガーは、システムが指定されたイベントが発生したときに自動的に呼び出す一連のストアドプロシージャです。通常のストアドプロシージャとは異なり、トリガーは有効または無効にでき、明示的に呼び出すことはできません。 |
| ストアドプログラム(Stored Program) | ストアドプログラム(Stored Program)は、指定された機能を実現するためのSQL文の集合であり、コンパイル後にデータベースに格納されます。ユーザーはストアドプロシージャの名前を指定し、パラメータ(該当する場合)を指定することで、それを呼び出して実行します。ストアドプログラムはプログラマブルな関数であり、データベース内に作成・保存され、SQL文と制御構造で構成されています。 |