Apache Hive 是Hadoop 上的一种常见的结构化数据源。Hive 可以在HDFS 内或者在其他
存储系统上存储多种格式的表。这些格式从普通文本到列式存储格式,应有尽有。Spark SQL 可以读取Hive 支持的任何表。
要把Spark SQL 连接到已有的Hive 上,你需要提供Hive 的配置文件。你需要将hive-site. xml 文件复制到Spark
的./conf/ 目录下。这样做好之后,再创建出HiveContext 对象,也 就是Spark SQL 的入口,然后你就可以使用Hive
查询语言(HQL)来对你的表进行查询, 并以由行组成的RDD 的形式拿到返回数据
代码实例
import org.apache.spark.sql.hive.HiveContext
val hiveCtx = new org.apache.spark.sql.hive.HiveContext(sc)
val rows = hiveCtx.sql("SELECT name, age FROM users")
val firstRow = rows.first()
println(firstRow.getString(0)) // 字段0是name字段