Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다.
문의사항은 gooper@gooper.com로 메일을
보내주세요.
Oracle LOB타입의 데이터는 일반적인 방법으로 import하면 오류가 발생한다.
(오류 내용 : No Java type for SQL type -11 for column 컬럼명)
원인은 Oracle에서는 catalog정보에서 사용자, 테이블명, 컬럼명을 대문자로 관리하기 때문이다.
sqoop문에 옵션을 추가해줘야 하는데 --query다음에 --map-column-java lob컬럼명=String 이라는 옵션을 추가하여 주는것이다.
여기서 lob컬럼명은 LOB타입의 컬럼명으로 반드시 대문자로 써야한다. 그렇지 않으면 컬럼명을 찾을 수 없다는 오류가 발생하면서 sqoop이 실패하게 된다.
또한 LOB타입 컬럼의 가져오는 길이를 제한하려면 --inline-lob-limit 12000와 같이 제한할 길이를 지정하여 옵션을 준다.
select문장에서 LOB타입의 컬럼을 가공하려 하지 말것. 가공하게 되면 sqoop하는 과정에서 다음과 같은 오류를 만나게 된다. sqoop import할때는 있는 그대로 가져와서 필요시 가공할것.
1. substr(cast(lob컬럼명 as varchar2(4000)), 12000) as rst 와 같이 가공한 경우
ORA-22835: Buffer too small for CLOB to CHAR or BLOB to RAW conversion(actual: 35090, maximum:4000) <- 최대 지원 가능한 크기는 4000인데 35090 크기의 데이터가 있어서 오류가 발생하는것임.
2. dbms_lob.substr(lob컬럼명, 5000, 1) as rst와 같이 가공한 경우
ORA-06502: PL/SQL: numeric or value error: character string buffer too small <- 최대 지원 가능한 크기는 4000인데 35090 크기의 데이터가 있어서 오류가 발생하는것임.
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
60 | access=WRITE, inode="staging":ubuntu:supergroup:rwxr-xr-x 오류 | 총관리자 | 2014.07.05 | 1719 |
59 | org.apache.hadoop.security.AccessControlException: Permission denied: user=hadoop, access=WRITE, inode="":root:supergroup:rwxr-xr-x 오류 처리방법 | 총관리자 | 2014.07.05 | 2835 |
58 | banana pi에(lubuntu)에 hadoop설치하고 테스트하기 - 성공 | 총관리자 | 2014.07.05 | 2760 |
57 | 2개 data를 join하고 마지막으로 code정보를 join하여 결과를 얻는 mr 프로그램 | 총관리자 | 2014.06.30 | 408 |
56 | Cannot create /var/run/oozie/oozie.pid: Directory nonexistent오류 | 총관리자 | 2014.06.03 | 479 |
55 | oozie job 구동시 JA009: User: hadoop is not allowed to impersonate hadoop 오류나는 경우 | 총관리자 | 2014.06.02 | 807 |
54 | hadoop및 ecosystem에서 사용되는 명령문 정리 | 총관리자 | 2014.05.28 | 3456 |
53 | hive job실행시 meta정보를 원격의 mysql에 저장하는 경우 설정방법 | 총관리자 | 2014.05.28 | 1088 |
52 | oozie의 meta정보를 mysql에서 관리하기 | 총관리자 | 2014.05.26 | 1466 |
51 | hive query에서 mapreduce돌리지 않고 select하는 방법 | 총관리자 | 2014.05.23 | 811 |
50 | hiverserver2기동시 connection refused가 발생하는 경우 조치방법 | 총관리자 | 2014.05.22 | 1472 |
49 | import 혹은 export할때 hive파일의 default 구분자는 --input-fields-terminated-by " |