OceanBaseデータベースは、データエンコーディング方式と汎用的な圧縮アルゴリズムの2種類の方法でデータを圧縮できます。汎用的な圧縮アルゴリズムには、lz4_1.0やzstd_1.0などが含まれます。
OceanBaseデータベースでは、テーブル作成時またはテーブル属性変更時に、row_format を設定することでデータエンコーディングを有効または無効にできます。また、COMPRESSION プロパティを設定することで使用する圧縮アルゴリズムを制御できます。
ROW_FORMATを使用してデータエンコーディングの有効化を制御する
データエンコーディングを無効にします。SQLステートメントは以下のとおりです:
CREATE TABLE table_name ROW_FORMAT = REDUNDANT; ALTER TABLE table_name [SET] ROW_FORMAT = REDUNDANT; CREATE TABLE table_name ROW_FORMAT = COMPACT; ALTER TABLE table_name [SET] ROW_FORMAT = COMPACT;データエンコーディングを有効にします。SQLステートメントは以下のとおりです:
CREATE TABLE table_name ROW_FORMAT = DYNAMIC; ALTER TABLE table_name [SET] ROW_FORMAT = DYNAMIC; CREATE TABLE table_name ROW_FORMAT = COMPRESSED; ALTER TABLE table_name [SET] ROW_FORMAT = COMPRESSED; CREATE TABLE table_name ROW_FORMAT = CONDENSED; ALTER TABLE table_name [SET] ROW_FORMAT = CONDENSED; CREATE TABLE table_name ROW_FORMAT = DEFAULT; ALTER TABLE table_name [SET] ROW_FORMAT = DEFAULT;
COMPRESSIONを使用して使用する圧縮アルゴリズムを制御する
COMPRESSION を使用して圧縮アルゴリズムを設定するSQLステートメントは以下のとおりです:
CREATE TABLE table_name COMPRESSION 'compress_func_name';
ALTER TABLE table_name [SET] COMPRESSION 'compress_func_name';
ここで、compress_func_name は none、zstd_1.0、lz4_1.0 に設定でき、none は圧縮アルゴリズムを使用しないことを意味します。
詳細については、圧縮とエンコーディングを参照してください。