spark的简单说明
----一个引擎:spark
--目前我们使用的查询引擎是hivesql,其实是MapReduce,也就是那个java程序。
--这个引擎效率不高,所以考虑使用高效的查询引擎处理数据。
--spark就是一个基于内存计算的高效的查询引擎,可以用它查询hive中的表
--我们使用spark-sql
spark-sql的使用:
1、把hive配置文件hive-site.xml拷贝到Spark的conf目录下
命令是:
备注:cp 复制拷贝的意思
cp /opt/apache-hive-2.1.0-bin/conf/hive-site.xml /opt/spark-2.4.0-bin-hadoop2.7/conf
2、从/opt/apache-hive-2.1.0-bin/lib把mysql-connector-java-5.1.39-bin.jar拷贝到Spark的jars目录下
命令是:
cp /opt/apache-hive-2.1.0-bin/lib/mysql-connector-java-5.1.39-bin.jar /opt/spark-2.4.0-bin-hadoop2.7/jars
4、进入 spark-sql:
spark-sql
显示数据库:
>show databases;
5、使用spark-sql执行以上需求并对比。
测试:
select deptno,count(1) from mydb.emp group by deptno;
6、修改脚本:原来的语句是用hive -e 运行的,改动为spark-sql -e 运行。
---编写shell脚本:
#!/bin/bash
spark-sql -e ""