日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

設(shè)置列存數(shù)據(jù)壓縮算法

為了提高列存模式下的壓縮效率,降低存儲成本,您可以為創(chuàng)建的列存索引設(shè)置壓縮算法。本文介紹如何設(shè)置和修改列存索引的壓縮算法。

支持的壓縮算法

當(dāng)前PolarDB MySQL版支持兩種IMCI的壓縮算法:LZ4壓縮、ZSTD壓縮。

  • LZ4:一種無損數(shù)據(jù)壓縮算法,壓縮速度大于每核500 MB/s。具體可參見LZ4 GitHub

  • ZSTD(全稱Zstandard):一種無損數(shù)據(jù)壓縮算法,壓縮速度與LZ4相當(dāng)。具體可參見Zstandard GitHub

建表時(shí)設(shè)置壓縮算法

  • 語法:

    在建表時(shí),您只需要在CREATE TABLE語句的COMMENT字段里設(shè)置codec_opt參數(shù),即可設(shè)置IMCI的壓縮算法。

    COMMENT 'COLUMNAR=1 codec_opt={LZ4}'

    codec_opt有效的取值為LZ4ZSTDNONE,對應(yīng)LZ4壓縮、ZSTD壓縮和不使用壓縮。

    說明
    • imci_default_codec參數(shù)定義了缺省壓縮算法。當(dāng)COMMENT中缺省codec_opt時(shí),將根據(jù)該參數(shù)的值采用對應(yīng)的壓縮算法。該參數(shù)默認(rèn)值為ZSTD

    • 您可以執(zhí)行SET命令在SESSION級別修改imci_default_codec的值。

    在表的COMMENT字段中指定的壓縮算法將應(yīng)用在表的所有列索引上。如果同時(shí)在列的COMMENT中設(shè)置了壓縮算法,將以列的配置優(yōu)先。

  • 示例:

    CREATE TABLE t12(
      col1 INT,
      col2 DATETIME,
      col3 VARCHAR(200)
    ) ENGINE InnoDB COMMENT 'COLUMNAR=1 codec_opt={LZ4}';
    
    SET imci_default_codec="{LZ4}";
    
    CREATE TABLE t13(
      col1 INT COMMENT 'codec_opt={NONE}',
      col2 DATETIME,
      col3 VARCHAR(200) 'codec_opt={ZSTD}'
    ) ENGINE InnoDB COMMENT 'COLUMNAR=1';

    從以上示例中可以看到:

    • t12使用COMMENT字段指定了表的默認(rèn)壓縮算法為LZ4。col1、col2和col3列的數(shù)據(jù)都使用LZ4算法進(jìn)行壓縮。

    • t13未設(shè)置表的壓縮算法,col1單獨(dú)配置為不開啟壓縮;col2未設(shè)置codec_opt,將使用參數(shù)imci_default_codec配置的壓縮算法,使用LZ4算法壓縮;col3設(shè)置codec_opt={ZSTD},由于列的配置優(yōu)先級高于表以及默認(rèn)配置,因此col3使用ZSTD壓縮算法。

修改列的壓縮算法

目前尚不支持修改單列數(shù)據(jù)的壓縮算法。若要修改,需要?jiǎng)h除原來的數(shù)據(jù),再使用新的建表語句,指定列的新壓縮算法。修改單列數(shù)據(jù)的壓縮方式將在后續(xù)版本中推出。

示例:

CREATE TABLE t14(
  col1 INT COMMENT 'COLUMNAR=1 codec_opt={ZSTD}',
  col2 DATETIME COMMENT 'COLUMNAR=1 codec_opt={ZSTD}',
  col3 VARCHAR(200)
) ENGINE InnoDB;

-- 修改列存索引的壓縮算法
ALTER TABLE t14 COMMENT 'COLUMNAR=1', MODIFY COLUMN col2 DATETIME COMMENT 'codec_opt={LZ4}';

在以上示例中,表t14的col2列上已經(jīng)建立列索引,壓縮算法為ZSTD。若執(zhí)行示例中的命令嘗試將其修改為LZ4,不會(huì)立即生效,需要重建數(shù)據(jù)時(shí)才會(huì)生效。由于該命令不會(huì)觸發(fā)數(shù)據(jù)重建,因此數(shù)據(jù)(包括后續(xù)新增數(shù)據(jù))仍使用之前的指定的壓縮方式。