2016-11-15 1 views
4

나는 reference manual을보고 있는데 비트 연산/함수에 대한 문서를 찾을 수 없습니다.Apache Pig의 비트 연산은 무엇입니까?

돼지 스크립트에서 비트 AND 연산 (Hive의 "& B"와 동일)을 사용할 수 있습니까?

+0

직접 지원이 없다면, DEFINE을 사용하여 perl, bash 등에서 외부 스크립트를 호출 할 수 있습니다. bitwise_or, bitwise_and 등과 같은 간단한 스크립트를 작성하십시오 –

답변

0

사용자 지정 UDF를 제공 할 수 있습니다. 예. 당신이 BinaryAND UDF에 대한

REGISTER myudfs.jar; 

그리고 예를 할 것 돼지 스크립트에서 https://pig.apache.org/docs/r0.7.0/udf.html

를 참조하십시오

package myudfs; 
import java.io.IOException; 
import org.apache.pig.EvalFunc; 
import org.apache.pig.data.Tuple; 
import org.apache.pig.impl.util.WrappedIOException; 

public class BitwiseAND extends EvalFunc (Integer) 
{ 
    public String exec(Tuple input) throws IOException { 
     // check input tuple: 
     if (input == null || input.size() < 2) 
      return null; 
     try{ 
      return (Integer)input.get(0) & (Integer)input.get(1); 
     }catch(Exception e){ 
      throw WrappedIOException.wrap("Caught exception processing input row ", e); 
     } 
    } 
} 

참고 :이 테스트되지 않은 상태입니다, 그것은 바로 돼지 UDF 페이지에서 복사됩니다.

관련 문제