JSON列でのアルゴリズム圧縮の使用 - Teradata Database - Teradata Vantage NewSQL Engine - JSON型の列でアルゴリズム圧縮を実行する場合に使用できる圧縮関数。

Teradata Vantage™ JSONデータ型

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/bgi1512081870828.ditamap
dita:ditavalPath
ja-JP/bgi1512081870828.ditaval
dita:id
evi1472243742653
Product Category
Software
Teradata Vantage
次の圧縮関数を使用して、JSON型の列でアルゴリズム圧縮(ALC)を実行できます。
  • JSON_COMPRESS
  • JSON_DECOMPRESS
  • TD_LZ_COMPRESS
  • TD_LZ_DECOMPRESS

TD_LZ_COMPRESSを使用してJSONデータを圧縮できます。ただし、JSON_COMPRESS関数はJSONデータの圧縮用に最適化されているので、代わりにJSON_COMPRESSを使用することを推奨します。

JSON_COMPRESSとJSON_DECOMPRESSは、JSON型の列を圧縮するためにのみ使用できます。これらの関数を使って他のデータ型の列を圧縮することはできません。

独自の圧縮および圧縮解除のユーザー定義関数を作成して、JSON型の列にアルゴリズム圧縮を実行することはできません。上記の関数を使用する必要があります。

ALCを使用して、バイナリ ストレージ形式(BSONまたはUBJSON)のいずれかでJSON データを格納する列を圧縮できます。

ALCをブロック レベル圧縮(BLC)と一緒に使用するとパフォーマンスが低下することがあるため、この方法は推奨しません。圧縮の使用例とサンプルの詳細については、https://access.teradata.comにログインし、Teradataオレンジ ブックの<Teradataのブロック レベル圧縮>を参照してください。

圧縮関数についての詳細は、<Teradata Vantage™ SQL演算子とユーザー定義関数、B035-1210>を参照してください。

COMPRESS句とDECOMPRESS句についての詳細は、<Teradata Vantage™データ型およびリテラル、B035-1143>を参照してください。

例: JSON_COMPRESS関数とJSON_DECOMPRESS関数

この例では、JSON_COMPRESS関数を使って"json_col"列のJSONデータを圧縮します。圧縮されたデータは、JSON_DECOMPRESS関数を使って圧縮解除されます。

CREATE TABLE temp (
  id       INTEGER, 
  json_col JSON(1000) 
           CHARACTER SET LATIN 
           COMPRESS USING JSON_COMPRESS 
           DECOMPRESS USING JSON_DECOMPRESS);