首页 > 解决方案 > 使用 sparkContext.wholeTextFiles 读取文件非常慢

问题描述

我正在尝试从 lichess 数据库中读取 PGN 文件:https ://database.lichess.org/ 。2013-01 文件为 16.1MB,读取时间约为 8 秒。2014-07 是 176mb,16 分钟后仍未完成。这很令人担忧,因为我确实需要使用最新的 27.3GB 文件作为最终输出。

def parse_game_file(game_file):
    from pyspark.sql import functions as F

    load_start = perf_counter()
    basefile = spark.sparkContext.wholeTextFiles(game_file, 10).toDF()
    load_stop = perf_counter()
    print("Time to load file:", round(load_stop - load_start,2))

df = parse_game_file('lichess_db_standard_rated_2014-07.pgn')

它挂在线上basefile = spark.sparkContext.wholeTextFiles(game_file, 10).toDF()

我在 Google Colab 上运行它,并且确实可以访问 Google Cloud Platform,我认为它会更快,但我很惊讶 Google Colab 无法处理只有 176mb 的文件。

谢谢。

标签: pythonapache-spark

解决方案


推荐阅读