当前位置: 首页 > 知识库问答 >
问题:

配置单元分区表上的火花行为

巫墨一
2023-03-14

更新:恰恰相反。实际上,我们的表非常大,就像3个TB有2000个分区。3TB/256MB实际上会达到11720,但我们的分区数量与表的物理分区数量完全相同。我只想了解任务是如何在数据量上生成的。

共有1个答案

红甫
2023-03-14

通常,Hive分区不是1:1映射到Spark分区。1个配置单元分区可以拆分为多个Spark分区,一个Spark分区可以容纳多个配置单元分区。

加载配置单元表时Spark分区的数量取决于以下参数:

spark.files.maxPartitionBytes (default 128MB)
spark.files.openCostInBytes (default 4MB)

您可以检查分区,例如使用

spark.table(yourtable).rdd.partitions
 类似资料:
  • 我正在使用Spark2.0,我想知道,是否可以列出特定配置单元表的所有文件?如果是这样,我可以直接使用spark增量地更新这些文件。如何向配置单元表添加新分区?有没有关于蜂巢转移瘤的api我可以从Spark使用? 有什么方法可以获得映射dataframe的内部配置单元函数吗 我的主要理由是对表进行增量更新。现在,我知道的唯一方法是SQL+,这不是很有效,因为他将覆盖所有表,而我主要感兴趣的是对某些

  • 我正在使用Spark生成拼花文件(通过分区,使用Snappy压缩),并将它们存储在HDFS位置。 拼花数据文件存储在下 然后为其创建配置单元表,如下所示:

  • 先声明一下,这不是Hadoop的生产环境。这是一个我们测试工作流的单节点环境

  • 我想创建一个带有分区的hive表。 该表的架构为: 我可以使用Spark-SQL实现这一点: 当我尝试使用 Spark API(使用斯卡拉)时,表中充满了数据。我只想创建一个空表并定义分区。这就是我正在做的事情,我做错了什么: 我正在使用Spark-2.1.1。

  • 我通过指定分区的数量从文本文件创建RDD(Spark 1.6)。但它给我的分区数与指定的分区数不同。 案例1 案例2 案例3 案例4 文件/home/pvikash/data/test的内容。txt是: 这是一个测试文件。将用于rdd分区 基于以上案例,我有几个问题。 对于案例2,显式指定的分区数为0,但实际分区数为1(即使默认最小分区为2),为什么实际分区数为1? 对于案例3,为什么在指定数量的