[HADOOP] 하둡 돼지 XPath는 빈 속성 값을 반환
HADOOP하둡 돼지 XPath는 빈 속성 값을 반환
나는 돼지, 하둡 2.6 0.15 버전을 클라우 데라를 사용하고 있습니다.
나는 XML 파일에서 데이터를 추출하려합니다. 아래는 XML 파일의 일부를 볼 수 있습니다.
<product productID="MICROLITEMX1600LAMP">
<basicInfo>
<category lang="NL" id="OT1006">Output Accessoires</category>
</basicInfo>
</product>
나는 노드 값을 덤프하지만, XPath를 () 함수를 사용하여 속성 값을 수 없습니다. 대신 제품 ID의 빈 튜플을 반환 아래의 코드를 볼 수 있습니다.
DEFINE XPath org.apache.pig.piggybank.evaluation.xml.XPath();
allProducts = LOAD '/pathtofile/sample.xml' USING org.apache.pig.piggybank.storage.XMLLoader('product') AS (data:chararray);
productsOneByOne = FOREACH allProducts GENERATE XPath(data, 'product/@productID') AS productid:chararray
dump productsOneByOne;
이 문제를 해결하기 위해 저를 도와주세요.
해결법
-
==============================
1.XML은 돼지까지 XPath를 사용하여 속성을 추출하는 방법에 대한 자세한 내용을 추가?
XML은 돼지까지 XPath를 사용하여 속성을 추출하는 방법에 대한 자세한 내용을 추가?
이 4 매개 변수를 무시로 버그 XPath.java에있다.
XPath.java에서 다음 코드와 준수 문제를 추가하여 해결됩니다. http://svn.apache.org/repos/asf/pig/branches/branch-0.15/contrib/piggybank/java/src/main/java/org/apache/pig/piggybank/evaluation/xml/XPath.java
if(input.size() > 3){ ignoreNamespace=input.get(3); }
위의 코드 앞에 추가해야
if (ignoreNamespace) { xpathString = createNameSpaceIgnoreXpathString(xpathString); }
from https://stackoverflow.com/questions/35887260/hadoop-pig-xpath-returning-empty-attribute-value by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 하둡 단일 노드 설치 2.5.1 후 작업 추적기와 JobTracker를 참조 할 수없는 (0) | 2019.10.10 |
---|---|
[HADOOP] 수출 오류를 Sqoop을 - 원인 : org.apache.hadoop.mapreduce.lib.input.InvalidInputException : 입력 경로가 존재하지 않습니다 (0) | 2019.10.10 |
[HADOOP] 하둡의 블록 크기 (0) | 2019.10.10 |
[HADOOP] 잘못된 FS 오류에 Sqoop을 + S3 + 마루 결과 (0) | 2019.10.10 |
[HADOOP] 페도라 15 Sqoop을 설치 오류 (0) | 2019.10.10 |