Spark整合Hive

spark-sql 写代码方式
1、idea里面将代码编写好打包上传到集群中运行,上线使用
spark-submit提交

2、spark shell  (repl) 里面使用sqlContext     测试使用,简单任务使用
    spark-shell --master yarn-client
    不能使用yarn-cluster 		

3、spark-sql    
spark-sql --master yarn-client   不能使用yarn-cluster 
    可以整合hive  使用hive的元数据
        1、在hive的hive-site.xml修改一行配置,增加了这一行配置之后,以后在使用hive之前都需要先启动元数据服务
hive.metastore.uris thrift://master:9083 2、将hive-site.xml 复制到spark conf目录下 cp hive-site.xml /usr/local/soft/spark-2.4.5/conf/
         3、启动hive元数据服务
            hive --service metastore
            或
            nohup hive --service metastore >> metastore.log 2>&1 &

         4、 将hive中的mysql 驱动包复制到saprk jars目录下
         cp mysql-connector-java-5.1.49.jar /usr/local/soft/spark-2.4.5/jars/

         整合好之后在spark-sql 里面就可以使用hive的表了
        spark-sql --master yarn-client  --conf  spark.sql.shuffle.partitions=2
        不能使用cluster模式

        在spark-sql中设置运行参数
        set spark.sql.shuffle.partitions=2;

create table student
(
id string,
name string,
age int,
gender string,
clazz string
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS textfile
location '/spark/data/stu/input/';

create table score
(
student_id string,
cource_id string,
sco int
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
STORED AS textfile
location '/data/score/';

你可能感兴趣的:(Spark整合Hive)