gpt4 book ai didi

apache-spark - 在 RDD 中 Spark 获取文件名

转载 作者:行者123 更新时间:2023-12-03 22:49:41 28 4
gpt4 key购买 nike

我正在尝试处理 4 个每天都在增长的文本文件目录。我需要做的是,如果有人试图搜索发票编号,我应该向他们提供包含该编号的文件列表。
我能够通过将它们加载为 RDD 来映射和减少文本文件中的值。但是如何获取文件名和其他文件属性呢?

最佳答案

从 Spark 1.6 开始,您可以结合使用 text数据源和input_file_name功能如下:
斯卡拉 :

import org.apache.spark.sql.functions.input_file_name

val inputPath: String = ???

spark.read.text(inputPath)
.select(input_file_name, $"value")
.as[(String, String)] // Optionally convert to Dataset
.rdd // or RDD
python :
(2.x 之前的版本有问题,转换为 RDD 时可能不会保留名称):
from pyspark.sql.functions import input_file_name

(spark.read.text(input_path)
.select(input_file_name(), "value"))
.rdd)
这也可以与其他输入格式一起使用。

关于apache-spark - 在 RDD 中 Spark 获取文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29686573/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com