有没有办法在 Azure 数据工厂中执行简单的字符串操作?
就像我有一个带有制表符分隔文件的存储 blob 一样简单的事情,我想将其移动到存储表中......但做一些
我想说的是,将制表符转换为逗号,将第 4 列合并到最后一列
可以使用自定义活动执行此操作,但要记住的有关 Azure 数据工厂的一点是,它主要用于业务流程(而不是转换(。 这意味着它本身没有很大的能力进行转换。
另一种方法是使用Azure Data Lake Analytics(ADLA(,这可能是我的偏好,因为我目前经常使用它。 如果您还没有ADLA帐户,尽管这似乎有点开销。
我获取了一个示例文件,它使用此示例文件使用 U-SQL 根据您的要求对其进行了转换:
DECLARE @inputFilepath string = "input/input67.tsv";
DECLARE @outputFilepath string = "output/output67.csv";
@input =
EXTRACT rowId int,
col1 int,
col2 int,
col3 int,
col4 int
FROM @inputFilepath
USING Extractors.Tsv(skipFirstNRows : 1);
// Concat the four columns
@output =
SELECT rowId,
string.Concat(col1.ToString(), col2.ToString(), col3.ToString(), col4.ToString()) AS col5
FROM @input;
// Export as csv
OUTPUT @output
TO @outputFilepath
USING Outputters.Csv(quoting:false);