spark sql 与hive打通

Why

Hive管理的数据本身就带有表结构,比如数据类型,字段名在spark机器学习数据处理过程中,直接读取文件的方式需要从文件转换到dataframe,这个时候最麻烦的就是Schema如果打通hive和spark,我们就可以直接在hive中定义好表结构,在spark中直接使用。非常省事,也不用关心hive表数据是哪种文件格式了,RCFILE,SequenceFile, TextFile等全部兼容

How

环境准备
安装hive和安装spark具体安装过程这里就不详细介绍了。
主要讲下,spark如何整合hive

1. Hive配置文件拷贝

copy hive安装目录下的 hive-site.xml 到 $SPARK_HOME/conf 目录(如果采用ambari搭建的话,该步骤不用,因为ambari已经帮助拷贝了)

2. Hive配置文件拷贝

添加JDBC驱动:
export HIVE_HOME=/usr/hdp/2.3.4.0-3485/hive
export SPARK_CLASSPATH=$HIVE_HOME/lib/mysql-connector-java-5.1.26-bin.jar:$SPARK_CLASSPATH
注:mysql-connector-java-5.1.26-bin.jar可以上mysql官网下载

3. 运行spark-shell

运行sqlContext.tables("default").show
就可以看到hive中的数据了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容