2

我正在尝试为 U-SQL 编写一个自定义输出器,该输出器根据一列中的数据将行写入单个文件。例如,如果列的日期为“2016-01-01”,它将将该行写入具有该名称的文件,并将下一行写入具有同一列中值的文件。

我的目标是通过在输出器中使用 Data Lake Store SDK 来做到这一点,它创建一个客户端并使用 SDK 函数写入单个文件。

这是一个可行且可能的解决方案吗?

我已经看到要为输出器覆盖的功能是

public override void Output (IRow row, IUnstructuredWriter output)

其中 IUnstructuredWriter 被强制转换为 StreamWriter(我看到了一个这样的例子),所以我假设这个 IUnstructuredWriter 是由 U-SQL 脚本传递给这个函数的。所以这不会让我对这里传递的内容进行任何控制,而且它对于所有行都将保持不变并且不能改变。

4

1 回答 1

2

目前这是不可能的,但我们正在开发此功能以响应此频繁的客户请求。现在,请在此处为请求添加您的投票: https ://feedback.azure.com/forums/327234-data-lake/suggestions/10550388-support-dynamic-output-file-names-in-adla

更新(2018 年春季):此功能现在为私人预览版。如果您想尝试一下,请通过电子邮件(Microsoft dot com 上的 usql)联系我们。

于 2016-06-03T19:17:14.440 回答