启用或禁用 defrag

可以根据 Vertica 配置要求修改 defrag 实用程序,也可以根据工作负载优化系统性能。

在所有 Red Hat/CentOS 系统上,必须禁用 defrag 实用程序才能满足 Vertica 配置要求。

对于 SUSE 15.1,Vertica 建议启用 defrag 以获得最优性能。

对 Red Hat 8/CentOS 8 和 SUSE 15.1 按工作负载建议设置

Vertica 按工作负载建议 defrag 设置以优化性能。下表列出了针对主要运行并发查询(例如短时间运行的仪表板查询)或顺序 SELECT 或 load (COPY) 查询的系统提出的建议:

有关按工作负载优化系统性能的其他设置,请参阅启用或禁用透明大页

在 Red Hat 6/CentOS 6 系统上禁用 defrag

  1. 通过运行以下命令确定是否已启用 defrag:

    cat /sys/kernel/mm/redhat_transparent_hugepage/defrag
    [always] madvise never
    

    括号内返回的设置是当前设置。如果未使用 madvisenever 作为 defrag 设置,则必须禁用 defrag。

  2. 编辑 /etc/rc.local, 并添加以下脚本:

    if test -f /sys/kernel/mm/redhat_transparent_hugepage/enabled; then
        echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
    fi
    

    必须重新引导系统以使设置生效,或运行以下 echo 行以继续安装而不重新引导:

    # echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
    

在 Red Hat 7/CentOS 7、Red Hat 8/CentOS 8 和 SUSE 15.1 上禁用 defrag

  1. 通过运行以下命令确定是否已启用 defrag:

    cat /sys/kernel/mm/transparent_hugepage/defrag
    [always] madvise never
    

    括号内返回的设置是当前设置。如果未使用 madvisenever 作为 defrag 设置,则必须禁用 defrag。

  2. 编辑 /etc/rc.local, 并添加以下脚本:

    if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
        echo never > /sys/kernel/mm/transparent_hugepage/defrag
    fi
    

    必须重新引导系统以使设置生效,或运行以下 echo 行以继续安装而不重新引导:

    # echo never > /sys/kernel/mm/transparent_hugepage/defrag
    
  3. 如果使用的是 Red Hat 7.0/CentOS 7.0 或 Red Hat 8.0/CentOS 8.0,请以 root 或 sudo 身份运行以下命令:

    $ chmod +x /etc/rc.d/rc.local
    

在 Red Hat 7/8、CentOS 7/8 和 SUSE 15.1 上禁用 defrag

  1. 通过运行以下命令确定是否已启用 defrag:

    cat /sys/kernel/mm/transparent_hugepage/defrag
    [never] madvise never
    

    括号内返回的设置是当前设置。如果未使用 madvisealways 作为 defrag 设置,则必须启用 defrag。

  2. 编辑 /etc/rc.local, 并添加以下脚本:

    if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
        echo always > /sys/kernel/mm/transparent_hugepage/defrag
    fi
    

    必须重新引导系统以使设置生效,或运行以下 echo 行以继续安装而不重新引导:

    # echo always > /sys/kernel/mm/transparent_hugepage/defrag
    
  3. 如果使用的是 Red Hat 7.0/CentOS 7.0 或 Red Hat 8.0/CentOS 8.0,请以 root 或 sudo 身份运行以下命令:

    $ chmod +x /etc/rc.d/rc.local