嗨,我是apachespark新手,我正在java中使用apachesparksql查询配置单元表。
这是我的密码
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 meta store建立连接。如何解决这个问题,并告诉我如何有效地使用persist选项。
1条答案
按热度按时间vu8f3i0k1#
打个电话也许会有帮助
sqlContext.cacheTable("Tablename")
在执行这两个查询之前。根据文件,它符合你的要求。
在内存中缓存指定的表。