メインコンテンツまでスキップ
バージョン: Candidate-4.0

column_size & column_compressed_size

これらの関数は、ストレージ分析と最適化のためにテーブル列のサイズ情報を返します。両方の関数は [_META_] ヒントと組み合わせて使用し、セグメントファイルのメタデータを検査します。

column_size

列の非圧縮サイズをバイト単位で返します。

構文

-- ヒント内の角括弧 [] を省略しないでください。
SELECT column_size(column_name) FROM table_name [_META_];

パラメータ

  • column_name: 非圧縮サイズを取得したい列の名前。

戻り値

列の非圧縮サイズをバイト単位で BIGINT 値として返します。

column_compressed_size

列の圧縮サイズをバイト単位で返します。

構文

-- ヒント内の角括弧 [] を省略しないでください。
SELECT column_compressed_size(column_name) FROM table_name [_META_];

パラメータ

  • column_name: 圧縮サイズを取得したい列の名前。

戻り値

列の圧縮サイズをバイト単位で BIGINT 値として返します。

使用上の注意

  • 両方の関数は [_META_] ヒントと組み合わせて使用し、メタデータ情報にアクセスする必要があります。
  • これらの関数は META_SCAN オペレータを使用して、基盤となるセグメントファイルのメタデータをスキャンします。
  • 複雑なデータ型(JSON、ARRAY、MAP、STRUCT)の場合、これらの関数はすべてのサブ列のサイズを再帰的に計算します。
  • column_size は、非圧縮の列サイズを返します。
  • column_compressed_size は、圧縮されたディスクサイズを返します。

-- 列の非圧縮サイズと圧縮サイズを取得
SELECT
column_size(name) as name_decompressed_size,
column_compressed_size(name) as name_compressed_size,
column_size(description) as desc_decompressed_size,
column_compressed_size(description) as desc_compressed_size
FROM products [_META_];