我正在使用year_week
版本。我正在尝试将分区的Hive表加载到DataFrame中,其中Hive表由spark.sql.shuffle.partitions
数字分区,在一个场景中我可能有104个分区。
但我可以看到DataFrame正在将数据加载到200个分区中,我知道这是由于year_week
默认设置为200。
我想知道是否有任何好的方法可以将我的Hive表加载到具有104个分区的Spark Dataframe,并确保在Dataframe加载时间内Dataframe被year_week
编号分区。
我期望的原因是我将使用大量表进行少量连接,其中所有数据表都由year_week
数字分区。因此,使用year_week
数字进行分区并相应加载的数据帧将为我节省大量时间,使用{{1}}数字重新对其进行分区。
如果您对我有任何建议,请与我们联系。
感谢。
答案 0 :(得分:0)
使用hiveContext.sql("Select * from tableName where pt='2012.07.28.10'")
其中,pt = partitionKey,在你的情况下将是year_week 和相应的价值。