如何在spark里面设置hive数据库连接

时间:2016-10-31 19:33:54

标签: hadoop apache-spark hive

新的火花和蜂巢。目前我可以运行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中将这两个字符串串在一起?

感谢。

1 个答案:

答案 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)