鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

大数据计算引擎参数

Flink

Flink有standalone、yarn两种运行模式,当前测试场景以yarn模式为基准。需注意,不同运行模式在资源管理、任务调度策略及并发控制机制上存在差异,因此其性能表现也可能有所不同。在实际生产环境中,应根据业务需求和集群管理策略选择合适的运行模式,并结合对应模式的调优实践进行性能优化。

表1 Flink业务参数

推荐参数

调优分析

参数名称

参数含义

调整范围

Testing Case

重要性比率(%)

参考最优值(vs. Baseline)

state.backend.rocksdb.block.cache-size

控制RocksDB数据块缓存大小

[2, 512]

Latency

10.8%

227

(+3.2%)

execution.checkpointing.interval

Flink作业状态checkpoint的触发周期

[10, 600000]

6.4%

489870

taskmanager.network.request-backoff.max

TaskManager网络请求失败后的最大重试间隔时间

[1000, 20000]

6.1%

15256

Hive

  • 业务参数

    建议在Hive启动配置中,将hive.auto.convert.join.noconditionaltask.size参数设置为相对较大的值,同时将tez.grouping.min-size参数设置为相对较小的值,以优化任务拆分与执行效率。对于hive.stats.fetch.column.stats参数,需根据具体业务场景和测试用例表现进行选择性配置,其在不同的Testing Case下表现不一。

    表2 Hive业务参数

    推荐参数

    调优分析

    参数名称

    参数含义

    调整范围

    重要性比率(%)

    参考最优值(vs. Baseline)

    参考最劣值(vs. Baseline)

    tez.grouping.min-size

    Tez任务处理的最小输入数据量

    {8000000, 16000000,32000000, 64000000,128000000, 256000000,512000000, 768000000,1024000000, 2048000000}

    33.1%

    16000000

    (+30.8%)

    768000000

    (-57.9%)

    hive.auto.convert.join.noconditionaltask.size

    自动广播的小表总大小阈值

    {0, 10000000, 50000000,100000000, 250000000,500000000, 750000000,1000000000}

    30.8%

    1000000000

    0

    hive.stats.fetch.column.stats

    从Metastore获取列级统计信息

    {true, false}

    24.9%

    -

    -

  • 系统参数
    表3 Hive系统参数

    推荐参数

    调优分析

    参数名称

    调整范围

    重要性比率(%)

    测试环境默认值

    参考最优值(vs. Baseline)

    transparent_hugepage_mode

    {madvise, never, always}

    47.1%

    never

    always(+11.9%)

Spark

Spark集群有yarn、standalone两种部署模式,当前测试场景以yarn部署模式为基准。

  • 业务参数

    在Spark启动配置中,建议将spark.executor.instances和spark.sql.shuffle.partitions设置为相对较大的值,以提升并行度和任务调度效率。其他参数的推荐配置可参考表4进行调整。

    表4 Spark业务参数

    推荐参数

    调优分析

    参数名称

    参数含义

    调整范围

    重要性比率(%)

    参考最优值(vs. Baseline)

    参考最劣值(vs. Baseline)

    spark.executor.instances

    执行任务的工作进程Executor数量

    [2, 48]

    29.6%

    45

    (+28.7%)

    2

    (-3.5%)

    spark.sql.adaptive.enabled

    自适应查询执行使能

    {true, false}

    20.0%

    false

    true

    spark.sql.shuffle.partitions

    Spark SQL Shuffle操作生成的分区数量

    [100, 1000]

    17.0%

    775

    259

    spark.sql.autoBroadcastJoinThreshold

    Spark SQL中自动广播小表的大小上限

    {0, 10485760, 52428800,104857600, 209715200,314572800, 524288000,1048576000}

    14.7%

    0

    1048576000

    spark.executor.memory

    每个Spark Executor进程可用的内存大小

    [2, 32]

    8.6%

    4

    30

    spark.default.parallelism

    RDD中的默认分区数

    [200, 1600]

    7.1%

    1455

    200

  • 系统参数
    表5 Spark系统参数

    推荐参数

    调优分析

    参数名称

    调整范围

    重要性比率(%)

    测试环境默认值

    参考最优值(vs. Baseline)

    transparent_hugepage_mode

    {madvise, never, always}

    20.5%

    never

    always(+4.2%)