spark 连接hive 的代码
时间: 2023-10-24 16:25:19 浏览: 114
连接Hive可以使用Spark的HiveContext(或者SparkSession中的spark.sql.hive.*配置)来实现。以下是一个示例代码:
```scala
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.spark.sql._
// 创建SparkConf对象
val conf = new SparkConf()
.setAppName("Spark Hive Example")
.setMaster("local[*]")
// 创建SparkContext对象
val sc = new SparkContext(conf)
// 创建HiveContext对象
val hiveContext = new HiveContext(sc)
// 查询Hive表
val result = hiveContext.sql("SELECT * FROM my_table")
// 显示结果
result.show()
```
需要注意的是,需要在Spark的classpath中包含Hive相关的jar包,例如hive-exec,hive-metastore等。
相关问题
spark连接hive代码
好的,以下是连接 Hive 的 Spark 代码:
```
import org.apache.spark.SparkConf
import org.apache.spark.sql.SparkSession
object SparkHiveExample {
def main(args: Array[String]): Unit = {
val conf = new SparkConf().setAppName("Spark Hive Example")
val spark = SparkSession.builder().config(conf).enableHiveSupport().getOrCreate()
// Query Hive table
val df = spark.sql("SELECT * from mytable")
df.show()
// Create new Hive table from DataFrame
val newDf = df.filter("id > 100")
newDf.write.mode("overwrite").saveAsTable("newtable")
spark.stop()
}
}
```
这个代码通过 SparkSession 的 enableHiveSupport 方法来启用 Hive 支持,然后就可以通过 spark.sql 命令来查询 Hive 表。如果要将 DataFrame 保存到 Hive 表中,则可以使用 saveAsTable 方法。
spark连接集群hive代码
我理解您的问题是如何使用Spark连接到Hive集群。以下是一些示例代码,仅供参考:
1. 使用Scala连接到Hive集群:
```
import org.apache.spark.sql.SparkSession
val spark = SparkSession.builder()
.appName("Spark Hive Example")
.master("local")
.config("spark.sql.warehouse.dir", "/user/hive/warehouse") // Hive 的 warehouse 目录
.enableHiveSupport()
.getOrCreate()
val df = spark.sql("SELECT * FROM myHiveTable") // 查询你的Hive表
df.show()
```
2. 使用Python连接到Hive集群:
```
from pyspark.sql import SparkSession
spark = SparkSession.builder \
.appName("Spark Hive Example") \
.config("spark.sql.warehouse.dir", "/user/hive/warehouse") \ # Hive 的 warehouse 目录
.enableHiveSupport() \
.getOrCreate()
df = spark.sql("SELECT * FROM myHiveTable") # 查询你的Hive表
df.show()
```
希望这可以回答您的问题!