我正在尝试读取大的gz文件,然后将其插入表中。这花了很长时间。
sparkSession.read.format("csv").option("header", "true").load("file-about-5gb-size.gz").repartition( 1000).coalesce(1000).write.mode("overwrite").format("orc").insertInto(table)
有什么我可以优化的方法,请帮忙。
注意:我使用了随机分区并合并
答案 0 :(得分:1)
如果文件采用gzip压缩格式,则将无法进行读取优化。 gzip压缩无法在spark中拆分。无法避免在spark驱动程序节点中读取完整文件。
如果要并行化,则需要通过unzip
使该文件可拆分,然后对其进行处理。