Spark学习之Spark调优与调试(7) 1. 对Spark进行调优与调试通常需要修改Spark应用运行时配置的选项. 当创建一个SparkContext时就会创建一个SparkConf实例. 2. Spark特定的优先级顺序来选择实际配置: 优先级最高的是在用户代码中显示调用set()方法设置选项: 其次是通过spark-submit传递的参数: 再次是写在配置文件里的值: 最后是系统的默认值. 3.查看应用进度信息和性能指标有两种方式:网页用户界面.驱动器和执行器进程生成的日志文件. 4.…
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 apache-hive-3.1.1 一.执行计划核心思想:把Hive SQL当做Mapreduce程序去优化以下SQL不会转为Mapreduce来执行 -select仅查询本表字段 -where仅对本表字段做条件过滤 Explain 显示执行计划:EXPLAIN [EXTENDED] query hive> explain sele…
第8章 压缩和存储(Hive高级)8.1 Hadoop源码编译支持Snappy压缩8.1.1 资源准备8.1.2 jar包安装8.1.3 编译源码8.2 Hadoop压缩配置8.2.1 MR支持的压缩编码8.2.2 压缩参数配置8.3 开启Map输出阶段压缩8.4 开启Reduce输出阶段压缩8.5 文件存储格式8.5.1 列式存储和行式存储8.5.2 TextFile格式8.5.3 Orc格式8.5.4 Parquet格式8.5.5 主流文件存储格式对比实验8.6 存储和压缩结合8.6.1 修…
1.hive参数优化之默认启用本地模式 启动hive本地模式参数,一般建议将其设置为true,即时刻启用: hive (chavin)> set hive.exec.mode.local.auto;     hive.exec.mode.local.auto=false 2.设置hive执行模式 hive (default)> set hive.mapred.mode; hive.mapred.mode=nonstrict 参数hive.mapred.mode控制着hive的执行模式,如果设置…
Hive的标准调优清单,我们可以对照着来做我们的查询优化!…
目录 1.Fetch抓取 2.本地模式 3.表的优化 3.1大小表join 3.2大表Join大表 3.3map join 3.4group By 3.5 count(distinct) 3.6笛卡尔积 3.7行列过滤 3.8 分区.分桶 4.合理设置map和reduce数 4.1输入数据量大增加map数 4.2小文件合并 4.3合理设置reduce数 5.并行执行 6.严格模式 7.JVM重用 8.压缩 9.执行计划(explain) 1.Fetch抓取 Fetch抓取:Hive中对某些情况的…
下面来看看更复杂的情况,比如,当调度器进行流水线执行(pipelining),或把多个 RDD 合并到一个步骤中时.当RDD 不需要混洗数据就可以从父节点计算出来时,调度器就会自动进行流水线执行.上一篇博文结尾处输出的谱系图使用不同缩进等级来展示 RDD 是否会在物理步骤中进行流水线执行.在物理执行时,执行计划输出的缩进等级与其父节点相同的 RDD 会与其父节点在同一个步骤中进行流水线执行.例如,当计算 counts 时,尽管有很多级父 RDD,但从缩进来看总共只有两级.这表明物理执行只需要两个…
一.使用SparkConf配置Spark 对 Spark 进行性能调优,通常就是修改 Spark 应用的运行时配置选项.Spark 中最主要的配置机制是通过 SparkConf 类对 Spark 进行配置.当创建出一个 SparkContext 时,就需要创建出一个 SparkConf 的实例. import org.apache.spark.SparkContext import org.apache.spark.SparkConf object Test { def main(args: A…
hive   ddl 操作官方手册https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL hive  dml 操作官方手册https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DML   1.创建库 create database test; 2.删除库 drop database test;   3.建表 完整ddl建表语法规则 CREATE…
shuffle优化之减少shuffle数据量 1.谓词下推  hive.optimize.ppd ,默认为true. 所谓谓词下推就是过滤条件如果写在shuffle操作后面,就提前过滤掉,减少参与shuffle的数据量 如 select * from a join b on a.id=b.id where a.age>10  ,这里执行计划会优先执行 a.age>10 再执行 a join b ,是一种自动优化 但是如下sql就无法自动优化 select * from a join b on…