【发布时间】:2015-04-21 10:18:01
【问题描述】:
我是 Apache Pig 的新用户,我有以下数据
order=0012,1,23
order=0013,2,34,0015,1,45
order=0011,1,456
...
我试图提取到下面的记录
0012,1,23
0013,2,34
0015,1,45
0011,1,456
...
以下是我尝试过的代码
a = LOAD 'a.txt' Using TextLoader() AS (line:chararray);
b = FOREACH a GENERATE FLATTEN(REGEX_EXTRACT_ALL(line, 'order=((\\d+),(\\d+),(\\d+))+')) AS
(
order_item:chararray,
order_pid: chararray,
order_qty: chararray,
order_price: chararray
);
它不起作用。
另一个尝试保存到包中:
a = LOAD 'a.txt' Using TextLoader() AS (line:chararray);
b = FOREACH a GENERATE FLATTEN(REGEX_EXTRACT_ALL(line, 'order=((\\d+),(\\d+),(\\d+))+')) AS
(
B: bag { T: tuple(
order_pid: chararray,
order_qty: chararray,
order_price: char array
)}
);
还是不行。
【问题讨论】:
-
您好 jurgemaister,感谢您的提醒,对不起,我也是堆栈溢出的新手。
标签: hadoop apache-pig