나는 Avro 형식으로 저장된 데이터를 읽는 EMR에서 돼지 스크립트를 실행 중입니다. 로컬에서 작업했지만 스크립트의 다른 부분이 EMR에서 작동하도록하려면 piggybank.jar를 되돌려 야했는데 0.10.0 대신 0.9.2를 사용했습니다. 변경 후 AvroStorage는 자동으로 모든 데이터를 읽지 못하고 0 개의 레코드 만 반환합니다. 로그 나 아무것도 언급하지 않았습니다. 스크립트는 다음과 같습니다.piggybank와 AvroStorage에서 EMR 문제가있는 돼지
REGISTER ../../../lib/avro-1.7.0.jar
REGISTER ../../../lib/json-simple-1.1.1.jar
REGISTER ../../../lib/jackson-core-asl-1.5.2.jar
REGISTER ../../../lib/jackson-mapper-asl-1.5.2.jar
REGISTER ../../../lib/piggybank.jar
a = LOAD '/data/' USING org.apache.pig.piggybank.storage.avro.AvroStorage();
DUMP a;
그리고 다시 piggybank.jar가 버전 0.10.0 인 경우 작동합니다. 버전 0.9.2 인 경우에는 그렇지 않습니다. 다른 라이브러리 중 다른 버전을 사용해야합니까? 나는 avro-1.5.3.jar로 시도해 보았고, 그것도 작동하지 않았다.
Anothr note : 내가 describe a;
이면 정확하게 스키마를 출력합니다.