1. dataNode的java堆内存
      默认4G->
      出现datanode-gc超时问题,调整到6G
    2. hdfs默认副本因子
      默认为3->
      出现存储瓶颈,调整为2
      1. dfs.datanode.balance.bandwidthPerSec
        数据节点之间banlance的带宽
        默认10M->
        根据集群实际带宽调整
    3. dfs.datanode.max.transfer.threads
      数据节点内外传输数据最大线程数
      默认4096->
      调整为8092
    4. spark任务中文乱码问题
      在spark-default.conf中添加配置:
      spark.driver.extraJavaOptions=-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8
      spark.executor.extraJavaOptions=-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8
    5. namenode处理请求线程数
      dfs.namenode.handler.count
      通过公式计算线程数量:N为集群服务器数量
      ln(N)*20

    7 . dfs.datanode.max.transfer.threads
    datanode传输数据的最大线程数,之前的名称是 dfs.datanode.max.xcievers,默认4096,调整到了32768。这个参数控制着datanode传输数据、文件操作的最大并行度,类似datanode上的最大文件句柄数。通常文件操作压力比较大的场景下需要调大该参数,例如执行一个比较重的MapReduce任务、频繁的HBase flush刷写磁盘等。针对这个参数调整,后来想了想直接调整到32768这种8倍的幅度有点大,建议先调整到2倍、4倍。
    8. dfs.datanode.handler.count
    datanode处理请求的线程数,从3调整到了8。这个参数原生Hadoop默认为10,这边CDH初始值只设置了3,对于读写请求比较大的场景,建议增大该参数以支持更大的并发请求。

    1. 9. hbase.regionserver.thread.compaction.small
    2. regionserver服务端做small compaction的线程数,默认1,调整到了5。这个参数的调整主要是考虑到HBase flush刷写比较频繁,为了避免小文件持续增加,增大该参数加快合并小文件的compaction操作。建议调整范围保持在2~5,避免消耗过多的服务端CPUMem资源。