我正在将 Avro 格式的 Spark 数据帧写入 HDFS。我想拆分大型 Avro 文件,以便它们适合 Hadoop block 大小,同时不会太小。是否有任何数据框或 Hadoop 选项?如何将要写入的文件拆分成更小的文件?
这是我将数据写入HDFS的方式:
dataDF.write
.format("avro")
.option("avroSchema",parseAvroSchemaFromFile("/avro-data-schema.json"))
.toString)
.save(dataDir)
最佳答案
我研究了很多,发现不可能只在 Avro 记录的数量上设置文件大小的限制。因此,唯一的解决方案是创建一个将记录数映射到文件大小的应用程序。
关于scala - 配置 Spark 写入 HDFS 的 Avro 文件大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55610882/