我写了一个成功的脚本,用于计算行人所采取的步数,以及最高步数。我没有得到的是在猪输出中生成标题,以便输出看起来整洁,干净。有没有什么方法可以在写输出时产生标题。以下是我的代码,
register 'piggybank-0.15.0.jar';
DEFINE CSVLoader org.apache.pig.piggybank.storage.CSVLoader();
part1 = LOAD '/home/cloudera/Pedestrian_Counts.csv' using CSVLoader(',') as (date_time, sensor_id: int, sensor_name: chararray, hourly_counts: int);
part2 = GROUP part1 BY (sensor_id, sensor_name);
part3 = FOREACH part2 GENERATE FLATTEN(group) AS (sensor_id, sensor_name), SUM(part1.hourly_counts), MAX(part1.hourly_counts);
STORE part3 into '/home/cloudera/pedestrian_result' using PigStorage('\t');
我输出的前5行如下,
1 Bourke Street Mall (North) 49591633 5573
2 Bourke Street Mall (South) 67759939 7035
3 Melbourne Central 70973929 5890
4 Town Hall (West) 90274498 8052
5 Princes Bridge 58752043 7391
我们可以在编写输出时放置标题吗?提前谢谢。
答案 0 :(得分:1)
将所有零件文件数据合并到本地文件系统中的文件中,该文件中包含头信息,或使用hive表存储该猪脚本的输出。
使用Hive表存储输出将具有自己的架构。
您应该使用Hcat访问Pig中的Hive。