我正在尝试阅读猪的文件。
A = load 'dataviz/TOP500_201511.csv' using PigStorage(',') as (Rank:int , Previous Rank:int,
First Appearance:int, First Rank:int, Name:chararray,Computer:chararray,Site:chararray,
Manufacturer:chararray,Country:chararray,Year:int,Segment:chararray,Total Cores:int,
Accelerator/Co-Processor Cores:int,Rmax:int,Rpeak:int,Nmax:int,Nhalf:int,Power:int,
Mflops/Watt:int,Architecture:chararray,Processor:chararray,Processor Technology:chararray,
Processor Speed (MHz):int,Operating System:chararray,OS Family:chararray,
Accelerator/Co-Processor:int,Cores per Socket::chararray,Processor Generation:chararray,
System Model:chararray,System Family:chararray,Interconnect Family:chararray,
Interconnect:chararray,Region:chararray,Continent:chararray);
但是我收到了一个奇怪的错误。
2016-02-06 21:19:50,213 [uber-SubtaskRunner]错误 org.apache.pig.tools.grunt.Grunt - 错误1200:不匹配的输入'Rank'期待RIGHT_PAREN
请帮忙。
答案 0 :(得分:0)
我们不能拥有多字段的字段名称。而不是逐个字段:上一个排名(多个措辞)将其作为prv_rank或任何名称,只要它是有效的标识符。对于其他字段名称也是如此。
参考:https://pig.apache.org/docs/r0.11.0/basic.html#Data+Types+and+More
标识符标识符包括关系名称(别名), 字段,变量等。在Pig中,标识符以字母开头 并且可以跟随任意数量的字母,数字或下划线。
有效标识符:
A A123 abc_123_BeX _
无效的标识符:
A123 abc $ A!B