* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
|
CentOS Linux 7.8 |
|
10.2 |
|
10.2 |
|
java, php, odbc 등 입력 |
* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 | 재현 가능한 Source와 SQL |
관련 테이블(인덱스, 키정보 포함) 정보 | CUBRID 홈 디렉토리 아래 log 디렉토리 압축 |
-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
안녕하세요.
Pentaho Data Intrgration(PDI) BI 툴을 사용하여 ETL을 통해 큐브리드 DB에 데이터를 적재하고 있는 과정에서 오류가 발생하여 문의드립니다.
현재 CentOS에서 크론탭으로 스케줄링을 지정하여 데이터를 적재하고 있습니다.
다음은 해당 오류 내용입니다.
Unable to get value 'String(1)' from database resultset, index 0
Cannot communicate with the broker[CAS INFO-192.168.3.55:30000,6,32653],[SESSION-356911],[URL-jdbc:cubrid:192.168.3.55:30000:naapddm:statolap:********:?charset=utf-8].
이러한 오류가 빈번하게 발생하여 10000건 이상 적재되어야 할 데이터들이 몇백건씩 쌓이다가 해당 오류가 발생하며, 데이터 적재가 원활히 되고 있지 않습니다. 테이블 구조에도 문제가 없는 것 확인했으며 큐브리드에서 해당 쿼리를 입력하면 정상적으로 실행됩니다.
또한 QnA 에 비슷한 질문이 있어서 커밋 사이즈를 기존 1000에서 100으로 줄이며 실행해도 오류가 발생합니다.
답변 부탁드리겠습니다. 감사합니다.
"Cannot communicate with the broker" 는 작업 도중 broker연결이 끊어진 것으로 여겨집니다.
동일환 환경은 아니지만 내부 테스트 시 대량의 bulkinsert수행(JDBC,ODBC) 테스트시 100만이상 건도 무리 없이 수행한 적이 있습니다
다른 요인이거나 설정 문제이지 않을까 생각듭니다.
1.내부네트워크상에서 단절현상이 발생하는 요인이 있을까요? 즉 ETL로 수행하면서 사용되는 네트워크 , 포트 등에서 보안정책에 따라 네트워크 단절이 발생할 요잉이 있다면 이를 확인하여 제거 해보세요
2. cubrid_broker.conf (https://www.cubrid.org/manual/ko/11.0/admin/config.html?highlight=cubrid_broker%20conf#broker-configuration ) 에서 session_timeout 등을 변경하면서 테스트가 필요할 것 같습니다.
3. 커밋주기를 100으로 하셔서 1만건목표가 아닌 500, 1천, 5천단위로 증가하면서 테스트해보세요. 어떠한 값에 에러가 발생하는지에 따라 변경하면서 수정되어야 할 것 같습니다.
qna로 답변드리긴 다소 무리가 있을 것 같고 계약사이트라면 담당자에게 연락하여 같이 테스트를 진행하시기를 권고드립니다
감사합니다.