获取现有文件并将数据附加到现有文件中 -- U-SQL

get existing file and append data into an existing file -- U-SQL

我们如何通过 u-sql 脚本获取现有文件并将数据附加到该文件中。

`DECLARE @file1 string = "dailyfiles/daily/LATESTMODIFIEDFILENAME.csv";

声明@out string = "/output/result.csv";

@data = 使用 Extractors.Csv();

从 @file1、@file2 中提取 col1 字符串、col2 字符串、col3 字符串、col4 字符串

将数据附加到现有文件代码中`

恐怕在 U-SQL 中不支持,请查看此线程:Append data in existing file in U-SQL. You could vote up this feedback link 以推动它的进展。

此外,作为解决方法,您可以使用 ADLS Path-Update Rest api 来实现追加。

首先,您需要调用action=append将其推送到服务器上未提交的缓冲区。

https://$STORAGE_ACCOUNT_NAME.dfs.core.windows.net/mydata/data/file1?action=append&position=0

收到 202 Accepted 后,您可以调用 action=flush 并传递您希望刷新数据的位置。

https://$STORAGE_ACCOUNT_NAME.dfs.core.windows.net/mydata/data/file1?action=flush&position=13

前几天我遇到了同样的问题。是一种解决方法,但确实对我的实施有帮助。

我遵循相同的数据并集逻辑来获得具有更新值的最终结果:

https://www.purplefrogsystems.com/paul/2016/12/writing-a-u-sql-merge-statement/

希望对您有所帮助!