2014-02-17 3 views
0

json 문서가 있습니다. 아래 문서와 같은 것.Json 로더의 스키마?

{"sick":["sick","sickness"], "typhoid":["thyphoid A","thyphoid B","typhoid C"]} 

JsonLoader를 사용하여 돼지에서이 문서를 어떻게로드합니까? 이것은 내가 뭘하려 : 내가 얻을

A = LOAD 'd' USING JsonLoader('key:map[]'); 

출력은 다음과 같습니다 돼지에 대한

Input paths to process : 1 
() 

답변

1

네이티브 JsonLoader 잘 중첩 된 배열을 처리하지 않습니다.

중첩 된 배열로 복잡한 JSON을로드하는 경우 Elephant-Bird (https://github.com/kevinweil/elephant-bird/) JsonLoader를 설정하면 훨씬 쉽게 시간을 가질 수 있습니다. 다음과 같이 할 수 있습니다.

REGISTER '/path/to/elephant-bird.jar'; 
B = LOAD '/path/to/your/jsonfile.json' USING com.twitter.elephantbird.pig.load.JsonLoader('-nestedLoad'); 

-nestedLoad 태그는 중첩 된 JSON 배열을 처리합니다. 이 기능을 사용하려면 json_simple 라이브러리를 등록해야 할 수도 있습니다. 또한 Github 저장소에 게시 된 예제를 살펴보고 출력 형식을 더 잘 이해할 것을 권장합니다.