2016-06-02 4 views
0

나는 mysql에서 HDFS로 많은 데이터를 다운로드하는 기술로 SQOOP를 사용하고 있습니다. 때로는 데이터를 다운로드하기 위해 몇 가지 특수 쿼리를 sqoop에 작성해야합니다.단위 테스트 Sqoop 응용 프로그램

sqoop에서 느끼는 문제점 중 하나는 사실상 테스트 할 수 없다는 것입니다. 단위 테스트에는 절대적으로 지침이나 기술이 없습니다.

누구나 데이터 통합에 sqoop을 사용하고있는 경우. 어떻게 sqoop 응용 프로그램을 테스트합니까?

답변

2

Afaif 지금의로 Sqoop을위한 단위 테스트 프레임 워크가 없다, 당신은 소스 테이블의 출력을 표시하는 소스 쿼리를 것, 접근

1) Sqoop을의 평가 작업을 예약 아래에 따를 수 있습니다.

$ sqoop eval --connect jdbc:mysql://db.example.com/corp \ 
     --query "SELECT * FROM employees LIMIT 10" 

2) 해당 하이브 쿼리 또는 hdfs 쉘 명령을 실행하여 sqoop이 완료된 후 데이터 또는 카운트를 가져옵니다.

0

--query을 통해 자유 형식 쿼리를 사용하지 않는 경우 기본 제공 --validate 옵션을 사용하여 원본 테이블과 HDFS의 레코드 수를 일치시킬 수 있습니다. 불행히도 그것은 Sqoop가 count_big()을 인식하지 못하기 때문에 MS SQL (레코드 수> int 용량)의 큰 테이블에서 실패합니다.

관련 문제