我有一个包含这些数据的文件:
jumpsuit 1
son 1
Đồng hồ kim 1
这是我的猪脚本:
A = LOAD 'hdfs://Hadoop238:8020/user/steve/test/test.txt' USING PigStorage AS (productName:chararray, number:int);
B = FILTER A BY (productName =='Đồng hồ kim');
DUMP B;
它没有返回任何内容。但如果我改为:
B = FILTER A BY (productName =='jumpsuit');
它返回了值。
似乎猪不能比较unicode字符串。有没有办法比较unicode字符串?答案 0 :(得分:1)
在UTF-8系统上,您可以指定:
您应该\u0110\u1ED3ng h\u1ED3 kim
使用Đồng hồ kim
所以这是痛苦但你可以在unicode中转换那些字符串并将其作为参数传递。
理论上,您应该能够在非UTF-8系统上指定非UTF-8常量,但据我们所知,这尚未经过测试。