Background Image

FORUM

조회 수 14208 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
1. 사용환경
    - HW : Xeon E5530@2.40GHz Quad x 4 = 16Core
    - RAM : 36GB
    - Storage : Hitachi 12TB SAN (DF600F Multipath)
    - OS : Windows Server 2003, x64 Edition 

    - Cubrid 설정
        data_buffer_pages : 1500000
        broker : sql_log : off
        media_failure_support : no

2. 작업 
    - 알려주신대로 DB를 생성하였습니다.
    - 해당 DB에 MSSQL의 특정 테이블 하나에서 1000만건정도- 순수 데이터 크기 약 30GB정도 - 를 SSIS (SQL Server Integration Services)를 이용하여 마이그레이션 하기로 해보았습니다. (500만건은 25분 정도에 이상없이 들어갔습니다.)

3. 결과
   - 작업이 진행되는 중에 , 첨부의 "큐브리드힙고갈" 사진의 메시지가 나타나며,
   - cub_cas.exe 가 "큐브리드메모리점유율"에 표시된 만큼의 메모리를 사용하고
   - "큐브리드로그증가"와 같은 임시적 Log 파일이 90GB에 달하는 만큼 생성되었습니다. (media_failure_support = no옵션사용)

4. 조치
   - SSIS 서비스를 종료하였지만, 큐브리드 서비스가 정상작동 하지 않는것 같아 (적어도 24시간이상 기다림)
   - 큐브리드 서비스를 중지한후, 재시작 하였습니다만, 해당 DB가 첨부의 "큐브리드 재시작오류"와 같은 standalone mode라는 메시지를 표시하고 복구가 되질 않더군요.

해당 내역에 대한 도움말씀 좀 부탁드립니다.
  • ?
    cubebridge 2010.01.19 02:59
    현재 작업 시 발생된 문제에 대해서 설명 드리도록 하겠습니다.
    첨부하신 이미지파일로 보아 데이터를 받아 입력하는 작업은 하나의 트랜잭션으로 진행된 것으로 보여집니다. 정확히 말씀드리면 하나의 트랜잭션이 끝나기 전에 "Too many heap sections"의 메시지를 보셨을 것이고, 이에 따라 SSIS를 종료 시켰으며, 이로 인해 DB는 rollback작업에 들어간 것으로 보입니다. 트랜잭션에 대한 처리가 없었기 때문에 초기 상태로 돌아갈 것이고 변경된 내용인 90G의 로그를 읽어서 rollback을 할 것입니다. 따라서 DB를 중지 시킨다고 하더라도 자체적인 복구작업을 위해 제대로 중지되지 않을 것이며, 현재의 DB로의 접속도 불가능할 것입니다. 각각의 원인에 대해 설명하면 아래와 같습니다.

    1. cub_cas.exe가 10G가 넘는 메모리를 사용하게된 이유를 말씀드리면, CUBRID는 3tier구조로 DB와 프로그램 중간에 broker가 있으며, broker가 cub_cas.exe를 관리합니다. cub_cas.exe는 트랜잭선이 종료될 때마다 일정한 크기의 메모리 사용을 넘으면 자동으로 재시작되어 관리되도록 되어 있습니다. 단, 트랜잭션 종료 시에만 재시작되어 관리가 되므로 트랜잭션 처리가 없는 이번 작업에서는 재시작될 수 없어 계속 메모리 사용량을 늘여가게 됩니다.
    2. 임시적 로그파일(lgar)이 90G까지 생성된 이유도 트랜잭션 종료가 없이 작업이 진행되었기 때문입니다. 트랜잭션 처리가 없다는 것은 입력된 데이터를 rollback할 경우 사용할 수 있다는 이야기이며, 이를 대비하기 위한 로그는 남아있어야 하기 때문입니다. 이는 media_failure_support옵션과는 무관합니다. 트랜잭션 처리를 했을 경우 media_failure_support옵션이 no라면 트랜잭션 이전의 로그는 삭제될 것입니다. yes라면 그대로 남아 있게 됩니다.

    해결방법은 주기적으로 트랜잭션 처리를 하도록 프로그램을 설정 또는 수정해 주는 것입니다. 5만~10만건 정도로 트랜잭션 정리를 하도록 수정한다면, 임시로그도 크게 생성되지 않을 것이며, cub_cas.exe의 메모리 사용도 크지 않을 것입니다. 

    추가적인 질문이 있으시면 덧글 주시기 바랍니다.
  • ?
    쭈난 2010.01.19 18:38
    감사합니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4442
507 큐브리드 방금 깔았는데요. 패스워드가 1 이종옥 2010.01.25 12187
506 설치시 cubrid manager server start: fail 오류 3 럭키늘보 2010.01.24 16955
505 데이터베이스 정지후 시작하니 로그파일이 사이즈가 0로 되며 시작이 안되는데? 3 secret 사람들 2010.01.24 18
504 asp 레퍼런스가 있나요? 1 바다왕자님 2010.01.21 10357
» 큐브리드 OLEDB 성능 문제 및 오류 2 file 쭈난 2010.01.18 14208
502 MySQL을 대체 할만한가요...? 2 호비스 2010.01.17 12503
501 엄청난 DB 생성 소요 시간 4 쭈난 2010.01.16 10070
500 패키지 분화가 가능할까요? 1 ienfant 2010.01.15 9565
499 JDBC ResultSet에 대한 문의 2 강우 2010.01.15 22135
498 LOWER 오류가 왜 날까요? 4 초보 2010.01.15 10391
497 mysql의 rand() 함수 대체 문의 1 초보 2010.01.14 16017
496 DBCP사용중 CUBRID** 계열 클래스를 사용하려면? 1 안지민 2010.01.14 10270
495 mssql2005 --> cubrid 로 마이그레이션 오류 답변 부탁 드립니다. 2 Philip Park 2010.01.14 24788
494 set type 에 빈값넣기 1 초보 2010.01.14 11840
493 ODBC 로 insert 가 안되네요 ㅠㅠ... 3 JinSniper 2010.01.13 11500
492 리눅스서버상에 존재하는 CUBRID 데이터베이스를 CUBRID메니져클라이언트로 접속 3 김대진 2010.01.13 10581
491 CSQL 에서 CREATE USER로 계정 생성시 문의 점 1 김대진 2010.01.13 15619
490 Java sp에서 Sybase DB연결시 오류. 2 young 2010.01.12 26592
489 CUBRID 시작후 csql로 시작할 때 에러가 발생합니다. 2 file 김대진 2010.01.11 9467
488 php, cubrid에서 그림, 동영상파일업로드코딩중인데요. 1 난꼭한다 2010.01.11 15937
Board Pagination Prev 1 ... 170 171 172 173 174 175 176 177 178 179 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales