欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spark SQL操作外部数据源之Hive

程序员文章站 2022-04-11 10:23:16
...

贴个图记录一下
Spark SQL操作外部数据源之Hive
Spark SQL操作外部数据源之Hive

-- 查询所有表
scala> spark.sql("show tables").show
-- 查询‘emp’表数据
scala> spark.table("emp").show
-- 统计每个部门的人数
scala> spark.sql("select deptno,count(1) num from emp group by deptno").show
-- 将统计结果导出到‘emp_count_dept’表
scala> spark.sql("select deptno,count(1) num from emp group by deptno").write.saveAsTable("emp_count_dept")
-- 查询‘emp_count_dept’表数据
scala> spark.table("emp_count_dept").show

注意,这个时候我们通过页面可以看到这个Task有一个200的参数,其实这是由一个属性spark.sql.shuffle.partitions配置的,默认值就是200,含义是在shuffle或aggregations时partitions的值,可以根据服务器的实际参数进行调整,在生产中尤其要注意。
Spark SQL操作外部数据源之Hive
Spark SQL操作外部数据源之Hive
在这里我们把它设置为10,命令是sparkSession.sqlContext.setConf("spark.sql.shuffle.partitions", "10")
Spark SQL操作外部数据源之Hive
Spark SQL操作外部数据源之Hive

相关标签: spark