Apache Spark中的持久化选项



嗨,我是Apache Spark的新手,我正在java中使用Apache Spark sql查询hive表。

这是我的代码
    SparkConf sparkConf = new 
SparkConf().setAppName("Hive").setMaster("local");   
   JavaSparkContext ctx = new JavaSparkContext(sparkConf);
    HiveContext sqlContext = new 
org.apache.spark.sql.hive.HiveContext(ctx.sc());
    org.apache.spark.sql.Row[] results = sqlContext.sql("Select * from 
Tablename where Column='Value'").collect();
    org.apache.spark.sql.Row[] results = sqlContext.sql("Select * from 
Tablename where Column='Value1'").collect();

我还尝试在同一应用程序中运行两个不同的查询,我看到它每次都与hive元存储建立连接。如何解决这个问题,并告诉我如何有效地使用持久选项

在执行这两个查询之前调用sqlContext.cacheTable("Tablename")可能会有帮助。

根据文档,它做你正在寻找的。

在内存中缓存指定的表。

相关内容

  • 没有找到相关文章

最新更新