Background Image
조회 수 24550 추천 수 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
번호 분류 제목 글쓴이 날짜 조회 수
279 질의작성 한건의 데이타를 여러건으로 조회하는 쿼리입니다. 권호일 2012.03.30 9419
278 운영관리 한 호스트내의 DB경로 변경 방법 janus 2010.02.19 12268
277 CUBRID 매니저 한 개 PC에서 CUBRID7.3과 CUBRID2008R1.4 & R2.0 매니저 사용 방법 1 정만영 2009.12.12 13054
276 응용개발 패키지 형태로 생성된 JAVA class를 JAVA SP에서 사용하기 손승일 2010.02.26 18375
275 기타 테이블에 comment 사용하기 1 남재우 2010.01.01 21051
274 질의작성 테이블 컬럼 변경 및 추가 정만영 2016.02.29 21856
273 질의작성 테이블 용량 산정 쿼리 성진 2015.12.08 7398
272 운영관리 테이블 사용량 확인방법 정만영 2015.02.03 11454
271 CUBRID 매니저 테이블 명세서 한 시트로 합치기 file 성진 2015.12.24 16526
270 질의작성 테이블 명세서 쿼리 1 성진 2017.08.04 3182
269 질의작성 테이블 리스트 취합 SQL 김창휘 2016.03.19 5522
268 질의작성 테이블 데이터 복사 하기 정만영 2009.03.14 22301
267 마이그레이션 타 DBMS를 CUBRID로 마이그레이션 시 varchar,char 컬럼 사이즈 관련 손승일 2010.07.01 38025
266 마이그레이션 타 DB 에서 마이그레이션시 질의 변경 샘플 - CASE 문 웁쓰 2009.12.31 21924
265 운영관리 큐브리드와 hostname 관계 정만영 2009.06.25 18584
264 운영관리 큐브리드매니져를 이용한 데이터베이스 자동 백업 남재우 2009.04.01 19052
263 운영관리 큐브리드 포트 정리 정만영 2016.07.05 6094
262 운영관리 큐브리드 서비스 재구동 시 cubrid manager server start: fail 오류 해결 방법 진우진 2015.12.16 7734
261 운영관리 큐브리드 사용포트 정리 3 정만영 2009.06.19 29776
260 운영관리 큐브리드 복제 구성 시 마스터 데이터베이스 백업 주의사항 정만영 2010.02.11 12591
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