Background Image
조회 수 24535 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

     1.    테스트 배경

장비 이전 또는 엔진 버전 업그레이드할 때스키마와 데이터를 마이그레이션 하여야 한다이를 위해 큐브리드는

관리자 유틸리티인 cubrid unloaddb/cubrid loaddb를 지원하고, CM에서도 이와 동일한 데이터베이스

언로드/로드 기능을 지원한다운영자는 환경에 따라 다양한 옵션을 적용하여 작업 시간을 단축할 수 있다.

아래테스트는 cubrid unloaddb/loaddb 유틸리티가 지원하는 옵션을 적용하면서 작업 시간을테스트한 결과이다.

 

2.    테스트 환경 및 시나리오 소개/결과

 * 테스트 환경

    -   테스트장비 스펙 : SONY VAIO PCG시리즈 

                                   Intel® Core™ i5-2520M CPU@ 2.50GHz / RAM 4.00GB

    -   OS : Windows7 Enderprise K 32bit

    -   CUBRID : 2008 R4.0(8.4.0.1008)

    -   CUBRIDManager : 2008 R4.0 (8.4.0.2014)   

    -   데이터베이스크기 : 5.03GB (1,320,690page)

    -   테이블 : 129

    -   Object(Data): 13369902 objects

 

    -   Index: 263 (PK제외)

 

 

 * 시나리오 소개

l  콘솔창에서 직접 유틸리티를 실행하고, CM의 언로드/로드기능을 실행하여 작업 시간 비교

l  cubrid unloaddbloaddb 유틸리티가 지원하는 옵션을 추가하면서 작업 시간 비교

 

CM에서 데이터베이스 로드 옵션을 아래와 같이 제공한다.

운영자가 적절하게 옵션을 선택하여 작업시간을 단축할 수 있다.

1.JPG

 

<< CM의 로드 옵션 화면 >>

 

CMT에서도 타겟 DB가 오프라인일 때 내부적으로 cubrid loaddb를 사용하는데,

이 경우도 마찬가지로 아래 이미지와 같이 옵션을 모두 적용하면 더욱 빠르게 작업을 수행할 수 있다.

2.JPG

 

<<CMT의 마이그레이션 마법사 6단계 : loaddb 옵션화면 >>

 

 

3.    테스트 결과

OPTION이름
(
명령어)

스키마+데이터+인덱스
언로드/로드

스키마+데이터
언로드/로드

CM을 이용한 
언로드/로드

내보내기
(unload)

DB정지상태에서 언로드( -S )

01 15

-

02 11

DB구동 중일 때 언로드 ( -C )

01 30

-

02 21

가져오기
(load)

문법검사하지 않고 데이터 로드
( --load-only )

19 19

09 29

23 10

OID 사용 안함
( --no-oid )

18 40

12 00

29 10

통계 정보 갱신 사용 안함
( --no-statistics )

17 35

13 41

23 01

로드 중에 로그를 남기지 않음
( --no-logging)

14 13

5 20

-

로드 커밋 주기 ( -c 500)

20 29

10 35

21 55

로드 커밋 주기 ( -c 5000)

21 15

10 00

22 18

로드 커밋 주기 ( -c 10000)

19 59

10 31

19 45

FullOption (--load_only -c10000 --no-oid --no-statistics –no—logging)

13 22

03 42

18 38

 NoOption(Default)

20 01

10 11

20 05

<<데이터베이스내보내기/가져오기(unload/load) 옵션/수행방법에 따른 테스트 결과>>

 

l  요약 1> 

이터베이스 언로드는 온라인 vs 오프라인에 따른 작업 시간 차이가 없다.

다만콘솔 유틸리티를 실행하는 경우가 CM 실행 시간보다 더 빠르다.

l  요약 2>

데이터베이스 로드는 콘솔 유틸리티 실행이 CM 실행보다 더 빠르다.

CM 클라이언트- CM 서버를 거치면서 성능을 감소시키는 것으로추정되며

도구 개발팀에서 원인 분석 중이다.

l  요약 3>

커밋 단위(-c 옵션)는 본 테스트에서는 10000일 때 가장 빨랐다.

레코드 크기에 따라 5,000~10,000 수준으로 조정할 수 있다.

l  요약 4>

로깅 옵션(--no-logging)을 추가하면 데이터 입력 도중 로깅을 하지 않을므로

성능이 훨씬 향상되고 작업 시간을 크게 단축시킬 수 있다.

작업 도중 장애가 발생하는 경우 복구가 불가능하므로,

처음부터 다시마이그레이션을 수행하여야 한다이 옵션은 빈 DB에 데이터를 이전하는 경우

유용하다.

l  요약 5>

통계 정보 갱신 옵션(--no statistics)을 추가하면 데이터를 입력하면서 DB의 통계정보를 갱신하지  

않으므로성능이 향상된다주의할 점은운영자가 반드시 이전 작업 후에 수동으로 통계정보를 

갱신해주어야 정상적인 조회 결과를 얻을 수 있다 

cubrid optimizedb <db_name> 유틸리티 또는 UPDATE STATISTICS ON문을 실행 하여야 한다 

l  요약 6>

cubrid loaddb 유틸리티는 [스키마 로드à 데이터로드à 인덱스 로드]순으로 동작하는데 

테이블 크기 및 정의된 인덱스에 따라 인덱스 로드 시간이 오래 걸릴 수 있음을 감안하고  

마이그레이션 작업 시간을 예측하여야 한다.

 

 

 

4.    결론

빈 데이터베이스에 대량 데이터를 옮기는 경우작업 시간 단축을 위해서는 CM 또는 cubrid loaddb

유틸리티의 옵션으로 --no-statistics 옵션 또는/및 --no-logging옵션을 적용할 수 있다.

다만마이그레이션작업 완료 후 cubrid optimizedb 를 실행하여 통계 정보 및 최적화를 반드시 수행

하여야 한다.

 

데이터베이스 마이그레이션 관련 매뉴얼 바로가기

cubridunloaddb,loaddb 리티 / CUBRIDManager 로드 , 언로드 / CUBRIDMigration Toolkit

 출처: http://cafe.naver.com/studycubrid/866


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
199 질의작성 join update 처리방법입니다.(연관성 있는 테이블을 조인하여 처리하는 UPDATE 구문) 권호일 2012.11.30 20383
198 마이그레이션 MySQL+XE를 CUBRID+XE로 운영하기 – mysqldump파일과 CMT사용 file cubebridge 2012.11.13 23069
197 CUBRID 매니저 CUBRID와 CUBRID Web Manager설치, 그리고 XE의설치 및 연동까지 file cubebridge 2012.11.13 18097
196 응용개발 CUBRID-PHP-Driver 연동가이드 file cubebridge 2012.11.13 17135
195 마이그레이션 MySQL에서 CUBRID로 갈아탈 때 알아야 할 것 cubebridge 2012.11.13 22594
194 응용개발 오라클 to CUBRID로 마이그레이션 수행 시 주의사항 cubebridge 2012.11.12 16636
193 마이그레이션 오라클의 order by 시 first와 last 대체 사용법 file cubebridge 2012.11.12 20564
192 운영관리 CUBRID에서의 BLOB/CLOB 사용시 백업 및 복구에 대한 주의 점 cubebridge 2012.09.18 33156
191 기타 전자정부 표준프레임워크 CUBRID 사용 방법 문의 참조 cubebridge 2012.09.17 20588
190 운영관리 Windows 서버에서 [장치에 쓰기 캐싱 사용] 설정/해제에 따른 성능 차이 이용미 2012.06.30 20231
189 운영관리 데이터 입력 중 디스크 공간 부족 오류가 발생하였을 때, 복구 방법 이용미 2012.06.30 14329
188 질의작성 게시판 응용 중 조회수로 정렬하는 경우 인덱스 생성 방법 1 손승일 2012.06.23 13897
187 질의작성 문자(char, varchar)로 설계한 날짜데이타 검증하기 권호일 2012.04.27 17822
186 CUBRID 매니저 CUBRIDManager의 접속 정보 이관 file cubebridge 2012.04.14 12380
185 마이그레이션 CUBRID Migration Tookit 8.4.1 file cubebridge 2012.04.14 11079
184 운영관리 CUBRID 에서의 사용자 권한관리 방법 file cubebridge 2012.04.14 23640
» 마이그레이션 데이터베이스 마이그레이션(unloaddb & loaddb) 의 효과적인 수행방법 file cubebridge 2012.04.14 24535
182 질의작성 세부내역과 소계를 한개의 쿼리문장으로 수행하는 SQL 권호일 2012.03.31 14086
181 질의작성 한건의 데이타를 여러건으로 조회하는 쿼리입니다. 권호일 2012.03.30 9410
180 질의작성 여러건의 코드명을 한건으로 조회하는 쿼리입니다. 1 권호일 2012.03.30 10750
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 14 Next
/ 14

Contact Cubrid

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