我正在尝试为U-SQL编写一个自定义输出器,它根据一列中的数据将行写入单个文件。 例如,如果列具有日期" 2016-01-01",则会将该行写入具有该名称的文件,并将下一行写入具有相同列中的值的文件。
我的目标是通过在输出器中使用Data Lake Store SDK来实现这一目的,该输出器创建一个客户端并使用SDK函数写入单个文件。
这是一个可行且可行的解决方案吗?
我已经看到要为输出器覆盖的函数是
public override void Output (IRow row, IUnstructuredWriter output)
其中IUnstructuredWriter被转换为StreamWriter(我看到了一个这样的例子),所以我假设这个IUnstructuredWriter由U-SQL脚本传递给这个函数。所以这并不能让我对这里传递的内容有任何控制权,它也会对所有行保持不变,并且无法改变。
答案 0 :(得分:2)
这是目前无法实现的,但我们正致力于此功能以回复此频繁的客户请求。目前,请在此处将您的投票添加到请求中:https://feedback.azure.com/forums/327234-data-lake/suggestions/10550388-support-dynamic-output-file-names-in-adla
更新(2018年春季):此功能现在处于私人预览状态。如果您想尝试一下,请通过电子邮件(usc at microsoft dot com)与我们联系。