Spark以及Hive安装见我的博客:https://blog.csdn.net/qq_25948717/article/details/80758713
https://blog.csdn.net/qq_25948717/article/details/81054411
使用Spark SQL,并使用Hive作为数据仓库,需要在安装了Hive的那台机器上的Spark的conf下配置Hive的元数据信息,这即使不启动Hive,Spark也可以正常工作。
vim hive-site.xml
启动Metastore服务:hive --service metastore &
Spark SQL初试:
从Spark的examples里面上传people.json到hdfs:
通过spark-shell来使用Spark SQL,启动spark-shell:
通过spark sql读取people.json数据:
通过网页可以看到以下任务正在运行:
####创建一个sqlcontext
####读取json中的数据并且创建一个Dataframe
####查看dataframe的内容
####查看dataframede 树形结构
####只查看name这列的数据,并显示
####查看name和age+1的结果,并show
####选择年龄大于21岁的人:
启动Spark SQL 使用:进入到Spark安装目录下的bin,运行 ./spark-sql,启动之前必须启动Hive的Metastore服务
:hive --service metastore > metastore.log 2>& 1&,此之前必须启动hadoop。
Spark SQL CLI操作:几乎和DBMS中的操作一摸一样。
####列出Hive中的数据库: show databases;
注意如果没有将hive的hive-site.xml拷贝到spark的conf中,通过Spark sql并不能显示hive中通过hive创建的数据库,
Hadoop下的core-site.xml和hdfs-site.xml也拷贝过来。
还需外另外创建:
通过Spark sql并看不到:
将hive-site.xml拷贝后重新启动spark-sql:
查看表:
查看数据: