Apache spark 读取配置单元表之前的筛选器分区(Spark)

Apache spark 读取配置单元表之前的筛选器分区(Spark),apache-spark,hive,hdfs,Apache Spark,Hive,Hdfs,目前,我正在尝试按最新处理日期筛选配置单元表 这张桌子是用桌子隔开的 系统 处理日期 区域 我成功筛选它的唯一方法是执行联接查询: query = "select * from contracts_table as a join (select (max(date_processed) as maximum from contract_table as b) on a.date_processed = b.maximum" 这种方法非常耗时,因为我必须对25个表执行相同的过程 任何人都知道一种

目前,我正在尝试按最新处理日期筛选配置单元表

这张桌子是用桌子隔开的

系统 处理日期 区域

我成功筛选它的唯一方法是执行联接查询:

query = "select * from contracts_table as a join (select (max(date_processed) as maximum from contract_table as b) on a.date_processed = b.maximum"
这种方法非常耗时,因为我必须对25个表执行相同的过程


任何人都知道一种直接读取SparkDataframe中表的最新加载分区的方法,所有表分区都可以通过以下方式接收:

val partitionsDF = hiveContext.sql("show partitions TABLE_NAME")

可以解析值以获取最大值。

我认为这可以起作用并提高性能,但实际上并不能完全解决问题,因为您需要加载20个新数据帧,计算最大值,然后过滤其他表……我将尝试一下,看看性能如何。谢谢
val partitionsDF = hiveContext.sql("show partitions TABLE_NAME")