新的火花和蜂巢。目前我可以运行spark 1.5.2并且我也可以从命令行访问配置单元。我希望能够以编程方式连接到hive数据库,运行查询并将数据提取到数据帧,所有内部都是spark。我想这种工作流程非常标准。但我不知道该怎么做。
现在我知道我可以在spark中获得HiveContext:
import org.apache.spark.sql.hive.HiveContext;
我可以像在
中那样在hive中查询所有内容SHOW TABLES;
>>customers
students
...
然后我可以从表中获取数据:
SELECT * FROM customers limit 100;
如何在spark中将这两个字符串串在一起?
感谢。
答案 0 :(得分:0)
// sc是现有的SparkContext。
val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc)
//查询以HiveQL
表示val tablelist = sqlContext.sql("show tables")
val custdf = sqlContext.sql("SELECT * FROM customers limit 100")
tablelist.collect().foreach(println)
custdf.collect().foreach(println)