使能KAEzip

下文介绍如何使能KAEzip并验证在Greenplum集群中使能KAEzip后提升的性能。请在所有节点执行本章节的操作。

  1. 修改KAEzip。

    KAEzip安装完成之后,默认提供了256个instances。为了根据实际需求和硬件能力进行调整,用户可以通过以下两种方法进行修改KAEzip。
    • 方法一:临时修改。临时修改方式在下次操作系统启动或重新加载内核模块时,该设置将失效。
      1. 卸载当前加载的hisi_zip模块。
        rmmod hisi_zip
      2. 重新加载并指定pf_q_num参数(即instances的数量),最大值为1024,一般建议设置为最大值。
        modprobe hisi_zip pf_q_num=1024
    • 方法二:永久修改。永久修改方式在下次操作系统启动或重新加载内核模块时,该设置将依然生效。
      1. 打开“/etc/modprobe.d/hisi_zip.conf”文件。
        vim /etc/modprobe.d/hisi_zip.conf
      2. “i”进入编辑模式,修改“options hisi_zip pf_q_num”参数的值为1024。当前可设置的最大instances数量为1024,可以根据实际情况修改。
        options hisi_zip pf_q_num=1024
      3. “Esc”键,输入:wq!,按“Enter”保存并退出编辑。
      4. 在下次操作系统启动或重新加载内核模块时,该设置将自动生效。

  2. 使能KAEzip。

    1. 需要设置环境变量“LD_LIBRARY_PATH”,以便Greenplum数据库在运行时能够找到并使用KAEzip库。
      export LD_LIBRARY_PATH=/usr/local/kaezip/lib:$LD_LIBRARY_PATH
      • 如果使能KAEzip成功,当Greenplum数据库运行SQL语句时,instances会自动减小。
      • 如果没有使能KAEzip成功,请参见使能KAEzip后没有生效解决此问题。
    2. 可选:如果使用的是KAE2.0,还需要在所有节点执行以下命令:
      chown -R gpadmin:gpadmin /dev/hisi_zip*

  3. 验证KAEzip是否正在被使用。

    1. 为了确保更改生效,用户可能需要重启Greenplum数据库并运行期望的SQL语句来观察性能提升。
    2. Greenplum数据库运行时,用户可以使用watch命令持续监控可用的instances数量。
      • 如果是用的是KAE1.0,请使用如下命令:
        watch -n 0.2 cat /sys/class/uacce/hisi_zip*/attrs/available_instances
      • 如果使用的是KAE2.0,请使用如下命令:
        watch -n 0.2 cat /sys/class/uacce/hisi_zip*/available_instances

  4. 可选:通过TPC-H测试可以得到使能KAEzip后的性能提升效果,详细测试步骤请参见《HammerDB 测试指导》。

    使能KAEzip后,加快了查询过程中的解压缩速度,在同一时间只处理一个请求、IO占比多的场景下,端到端的性能可以提升10%。使能KAE前后对比效果如图1所示。
    图1 使能KAE前后性能对比