首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >根据条件加载拼花文件夹以触发数据

根据条件加载拼花文件夹以触发数据
EN

Stack Overflow用户
提问于 2019-07-05 21:26:50
回答 1查看 549关注 0票数 1

我有一个目录,它有基于日期的文件夹,运行日期是文件夹名称的一部分。我有一个每天的火花工作,在其中我需要加载最后7天的文件在任何一天。

不幸的是,该文件夹还包含其他文件,以尝试分区发现。

我有如下格式的文件。

prefix-yyyyMMdd/

如何在最后7天内一次性加载文件夹。?

因为它是运行日期,所以我不能使用预定义的正则表达式来加载数据,因为我必须考虑月份和年份的变化。

我有几个蛮力的解决方案

  1. 若要将所有数据加载到7个数据中并对所有7个数据执行unionAll,则从7个数据中获取一个数据。--这看起来性能低效,但并不是完全糟糕--
  2. 加载整个文件夹,并在具有日期的列上执行where条件。--这看起来存储量很大,因为文件夹包含价值多年的数据

这两种方法的性能都不高,而且考虑到每个文件数据本身都是巨大的,我想知道是否有更好的解决方案。

有更好的方法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-05 22:49:53

DataFrameReader方法可以采取多种路径。

spark.read.parquet("prefix-20190704", "prefix-20190703", ...)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56909402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档