将Hive中的hive-site.xml文件拷贝到Spark的conf目录,Spark才能访问Hive的元数据

HiveContext是Spark提供的用户接口,HiveContext继承自SqlContext。可以使用sql读取和写入Hive表(必须在hive上有创建表且名称必须一致)。
如下SQL:

select user_ip_city, service_type, sub_service_type from default.gem_dns_etl_xdr where time=2018110312 and cname is not null and response_first_ip is not null;

可以只读入需要的列;where条件进行一些数据的筛选,减少内存的开销。

1、为了让Spark能够连接到Hive的原有数据仓库,我们需要将Hive中的hive-site.xml文件拷贝到Spark的conf目录下,这样就可以通过这个配置文件找到Hive的元数据以及数据存放。 

CDH安装的hive-site.xml存放在/etc/hive/conf中。同理,CDH安装的Spark配置目录在/etc/spark/conf中。如上所述,将对应的hive-site.xml拷贝到spark/conf目录下即可。也可以

运行时,需通过–file选项增加hive-site.xml文件,如图:

如果没有将hive-site.xml拷贝到spark/conf目录下,会出现spark无法知道hive的元数据的位置,所以就无法实例化对应的client。 

2、java代码入口:

 

猜你喜欢

转载自blog.csdn.net/as4589sd/article/details/103975706
今日推荐