历史版本2 :获取目录下符合条件的文件,按写入方式读取入库并记录状态 返回文檔
編輯時間: 內容長度:图片数:目录数: 修改原因:

目錄:

1. 概述编辑

1.1 应用场景

用户业务流程中下发的文件,有特定的文件生成则代表下发完成。比如:文件下发完成后,目录下会生成与文件同名的 .ok 文件(用来判断文件是否下发完成)、.del 文件(根据值的不同判断写入方式)、.sql 文件。

现需要将已经下发完成(生成 .ok 文件)的 csv 文件按照 .del 记录的方式进行读取入库,并且读取文件后,需要记录已经读取完成的文件,以便在任务异常重启时避免重复写入。

1.2 实现思路

1)将需要遍历的目录生成参数,「Shell 脚本」节点使用该参数获取指定目录下的 .ok、.sql、.del 文件,将文件名和文件路径输入到 output.csv 中,然后根据 output.csv 文件数据,拼接出待读取的 csv 文件路径。

2)过滤出下发完成的文件,将 .del 文件(需要根据该文件判断写入方式)路径、待读取 csv 文件路径输出为参数。

3)遍历第二步的参数,执行以下步骤:

  • 判断文件是否已读取,若未读取,执行下面步骤。

  • 读取 del 文件数据并输出为参数,根据参数值的不同,判断写入方式,根据不同的写入方式,将数据写入不同的表中。

  • 记录已写入 csv 文件的路径、写入表、写入时间。

2. 示例编辑

2.1 场景模拟

示例文件结构:csv.zip

某银行用户,业务流程中下发的文件,若下发完成,目录下会生成与文件同名的 .ok 文件(用来判断文件是否下发完成)、.del 文件(根据值的不同判断写入方式)、.sql 文件。如下图所示:

1725245363179869.png

其中,文件所处的目录结