Background Image
조회 수 24720 추천 수 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


  1. join update 처리방법입니다.(연관성 있는 테이블을 조인하여 처리하는 UPDATE 구문)

    Date2012.11.30 Category질의작성 By권호일 Views20565
    Read More
  2. MySQL+XE를 CUBRID+XE로 운영하기 – mysqldump파일과 CMT사용

    Date2012.11.13 Category마이그레이션 Bycubebridge Views23223
    Read More
  3. CUBRID와 CUBRID Web Manager설치, 그리고 XE의설치 및 연동까지

    Date2012.11.13 CategoryCUBRID 매니저 Bycubebridge Views18262
    Read More
  4. CUBRID-PHP-Driver 연동가이드

    Date2012.11.13 Category응용개발 Bycubebridge Views17432
    Read More
  5. MySQL에서 CUBRID로 갈아탈 때 알아야 할 것

    Date2012.11.13 Category마이그레이션 Bycubebridge Views22892
    Read More
  6. 오라클 to CUBRID로 마이그레이션 수행 시 주의사항

    Date2012.11.12 Category응용개발 Bycubebridge Views16848
    Read More
  7. 오라클의 order by 시 first와 last 대체 사용법

    Date2012.11.12 Category마이그레이션 Bycubebridge Views20782
    Read More
  8. CUBRID에서의 BLOB/CLOB 사용시 백업 및 복구에 대한 주의 점

    Date2012.09.18 Category운영관리 Bycubebridge Views33293
    Read More
  9. 전자정부 표준프레임워크 CUBRID 사용 방법 문의 참조

    Date2012.09.17 Category기타 Bycubebridge Views20786
    Read More
  10. Windows 서버에서 [장치에 쓰기 캐싱 사용] 설정/해제에 따른 성능 차이

    Date2012.06.30 Category운영관리 By이용미 Views20355
    Read More
  11. 데이터 입력 중 디스크 공간 부족 오류가 발생하였을 때, 복구 방법

    Date2012.06.30 Category운영관리 By이용미 Views14472
    Read More
  12. 게시판 응용 중 조회수로 정렬하는 경우 인덱스 생성 방법

    Date2012.06.23 Category질의작성 By손승일 Views14032
    Read More
  13. 문자(char, varchar)로 설계한 날짜데이타 검증하기

    Date2012.04.27 Category질의작성 By권호일 Views17973
    Read More
  14. CUBRIDManager의 접속 정보 이관

    Date2012.04.14 CategoryCUBRID 매니저 Bycubebridge Views12565
    Read More
  15. CUBRID Migration Tookit 8.4.1

    Date2012.04.14 Category마이그레이션 Bycubebridge Views11256
    Read More
  16. CUBRID 에서의 사용자 권한관리 방법

    Date2012.04.14 Category운영관리 Bycubebridge Views23861
    Read More
  17. 데이터베이스 마이그레이션(unloaddb & loaddb) 의 효과적인 수행방법

    Date2012.04.14 Category마이그레이션 Bycubebridge Views24720
    Read More
  18. 세부내역과 소계를 한개의 쿼리문장으로 수행하는 SQL

    Date2012.03.31 Category질의작성 By권호일 Views14235
    Read More
  19. 한건의 데이타를 여러건으로 조회하는 쿼리입니다.

    Date2012.03.30 Category질의작성 By권호일 Views9568
    Read More
  20. 여러건의 코드명을 한건으로 조회하는 쿼리입니다.

    Date2012.03.30 Category질의작성 By권호일 Views10947
    Read More
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