我正在尝试写一个猪脚本来基本上执行以下操作。
我想要的输出是将当前分区作为列。因此,从分区1读取的行应该具有值为1的列,而从分区3读取的行应该将该列值设置为3。
目前我将“s3:// tap-prod / propensity / glPurchaseProbabilities /#{runDate} /#{partition} /glPurchaseProbabilities.tsv/part*”作为Pig脚本的输入传递。
我的猪脚本会加载这样的东西。 s3_consolidated_results =使用PigStorage加载'$ input'('\ t',' - noschema')
任何人都可以帮我解决如何拦截输入变量并从中提取分区并作为列推送?
答案 0 :(得分:0)
试试这个:
A = LOAD 'x' using PigStorage('\t','-tagsource');
引用文档:
('tagsource') - Add a first column indicates the input file of the record.
之后,您可以进行投影以获取您真正感兴趣的文件名部分。