Background Image

FORUM

조회 수 16844 추천 수 0 댓글 4
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
안녕하세요.
늘 정성스런 답변 감사드립니다.

CUBRID의 복재 기능에 대해서 한가지 더 질문드릴 점이 있어서 문의 드립니다.

예를 들어 시스템을 구성하여

(1) CUBRID A - MASTER
(2) CUBRID B - SLAVE

와 구성했다고 가정하였을 때, 효율적인 쿼리 분산에 대해 질문 드립니다.
(1) 의 경우 INSERT, UPDATE, (+ SELECT)를 사용하고
(2) 의 경우 SELECT
를 사용한다고 가정합니다.
고객 데이터의 경우 번호가 키로 쓰인다고 가정하겠습니다.
즉 (앞번호가 0-5, 6-10 으로 2집단이 있다고 가정합니다. 쿼리는 단순 SELECT 쿼리입니다)

질문은 다음과 같습니다.

-- 첫번쨰 질문
이 경우 DB의 캐쉬에 대한 성능이 크게 좌우할 수 있으므로,
각 Transaction시 SELECT연산에 대하여 RR(Round-Robin) 로 (1), (2)을 돌아가면서 SELECT 쿼리할경우 Cache-Hit ratio가 떨어질 수 있으므로,
0-5 인 사용자는 큐브리드 (1) 에서 쿼리,6-10인 사용자는 큐브리드 (2)에서 쿼리와 같이 Routing Rule을 정하여 쿼리해야 하는 방식이 필요하다고 판단하고 있습니다. 즉 이와 같은 방식으로 구현하여야 cache-hit ratio에 의한 성능향상을 기대할 수 있을것 같습니다.
이러한 고민에 대해서 확인 부탁드립니다. ^^
(RR 과 같이 구성할 경우와 Cubrid (1), (2), (3) 에 대해서 Rule-Base로 분산하여 Select 연산의 성능 차이가 나는지요? 난다면 크게 나는지요?)

- 두번째 질문
큐브리드 (1) 에는 WRITE 연산만 (Insert, Update) 연산만 사용하고,
(2)에는 Select 연산만 사용할 경우 이러한 구성이 권장할만한 (?) 구성일지 궁금합니다.
생각에는 (1)에서 Write에 의한 연산이 발생한다면 (2)에도 DB Write에 의한 부하가 많이 발생할 것 같아 조금 우려스럽습니다.
이러한 경우 복제에 의한 일반적인 구성은 어떤 구성이 일반적인지 알 수 있을런지요.
쿼리의 빈도수는 예상하건데 (SELECT 5, INSERT 3, DELETE 3) 정도로 발생할 것으로 예상합니다.

감사드립니다.
좋은 주말 보내세요
  • ?
    정만영 2009.02.23 20:29
    먼저 답변이 늦어 죄송합니다.
    첫번째 질문 사항,
    큐브리드 복제는 하나의 데이터베이스 서버로 응용의 성능 요구 사항을 만족하기 힘들 때, 특히, 읽기 연산을 여러 데이터베이스 서버에 분산시킴으로써 전체 시스템의 성능을 향상시키는 데 활용할 수 있습니다. 큐브리드 복제의 경우, 마스터는 읽기/쓰기 연산을 모두 허용하나, 슬레이브는 읽기 연산만 허용하기 때문에, 큐브리드 복제를 이용한 성능 향상 효과는 쓰기 연산은 제한적이고 읽기 연산이 많은 응용에서 탁월하다고 할 수 있고, 성능 문제는 읽기 연산이 많을 수록 효과를 볼 수 있지 않을까 생각 됩니다.
    두번째 질문 사항.
    큐브리드의 복제는 단방향 복제만을 지원합니다, 즉, 마스터 데이터베이스의 경우에는 읽기/쓰기 연산이 모두 가능하나 슬레이브 데이터베이스에는 읽기 연산만을 허용 합니다.. 단방향 복제 방식을 이용한 1:N 구성이 가능하기 때문에 여러개의 슬레이브 DB를 사용할 수 있습니다. 만약 insert, delete가 많을 경우는 복제의 효과를 크게 볼 수 없겠지만, 조회하는 select 질의가 많은 곳에 적용하신면 1개의 데이터베이스를 운용하는 것보다 좋은 성능을 볼 수 있을 것입니다.
     
  • ?
    kkckc 2009.02.23 21:24
    안녕하세요.
    먼저 답변에 감사드립니다.

    질문사항들에 대해서 제가 적절하게 질문하지 못한 것 같아 다시 설명드리겠습니다.
    즉, 질문의 요지는 다음과 같습니다. 질문을 조금 바꾸겠습니다. ^^;

    첫째 질문 =
    (A) CUBRID - MASTER
    (B) CUBRID - SLAVE
    (C) CUBRID - SLAVE

    에를 들어 그룹1의 사용자를 (B) 에서만 질의하고,그룹2의 사용자를 (C) 에서만 질의할 경우 캐쉬에 의한 성능 향상을 기대할 수 있는지에 대한 질문입니다. 만약 있다면 어느정도 예상할 수 있는지, 없다면 그냥 그룹1, 그룹2를 상관하지 않고 RR로 질의를 해도 될지 알고 싶습니다.

    둘째 질문 =
    질문의 요지는 MASTER에서는 INSERT, UPDATE 연산만 하고 SLAVE에서는 SELECT 연산만 수행할 경우 이러한 구성이 복재에서 권장하는 구성인지가 질문의 요지입니다.

    =================
    감사합니다 ^^
    좋은하루 보내세요.
  • ?
    정만영 2009.02.23 23:03

    첫번째 질문 사항
    슬레이브 데이터베이스 머신이 각각 다르다면  말씀하신 캐쉬 성능 향상을 기대할 수 있습니다. 그리고 Round-Robin(연속)되는 사용자 그룹을 나눈다면의 어느 사용자 그룹이 더 많은 요청을 할 것이가?.. 이 부분을 더 중점을 두셔야 할 것으로 보입니다. 여러가지 환경적인 상황에 따라 편차가 많이 있기 때문에 정확한 성능 정보(데이터)를 말씀 드릴수 없지만 앞서 말씀드린 1개의 DB 서버 보다는 좋은 성능을 볼 수 있을 것입니다.

    두번째 질문 사항.
    현재 두번째 문의 사항처럼 사용하고 있는 고객 사이트가 있으며, 문제 없이 운영되고 있습니다.
    원하시는 답변인지 모르 겠지만, 큐브리드 복재는 조회하는 질의의 분산 효과를 보기 위한 기능과 운영 중인 데이터베이스 서버에 장애가 발생했을 경우 복제 데이터베이스 서버로 신속하게 대체함으로써 장애 발생시 긴급하게 대처할 수도 있는 그 효용성이 매우 크다고 할 수 있습니다.


     

  • ?
    kkckc 2009.02.24 00:03
    감사합니다 ^^

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID를 사용해 보시기 바랍니다!!! file admin 2019.07.31 233
112 Java Heap Space 에러가 납니다 2 file 유니콘 2009.03.04 18005
111 자동증가 필드 질문합니다 1 유니콘 2009.03.04 15907
110 FreeBSD port 지원 가능한가요? 1 자유연애 2009.03.03 14418
109 오라클에서 큐브리드로 마이그레이션 방법이 있나요? 1 삽질쟁이 2009.03.03 15925
108 서브쿼리에서 두개 이상의 데이터를 참조하려면. 2 안지민 2009.03.03 21985
107 리눅스에서 큐브리드 설치시 문제입니다 2 file 유니콘 2009.02.27 13523
106 큐브리드 잠금정보 관련 질문 드립니다. 5 kkckc 2009.02.27 12704
105 procedure 내 내부 커넥션 4 벅지 2009.02.27 23570
104 VARCHAR 타입에 관한 질문. 2 김우람 2009.02.26 25479
103 java proc 1 벅지 2009.02.26 16452
102 select하여, 일부만 변수값으로 넣으려고 합니다... 1 안지민 2009.02.26 13371
101 큐브리드 2008 R1.3 버전 설치 질문 3 김우람 2009.02.25 13558
100 cci 관련 질문 드립니다. 2 kkckc 2009.02.25 13123
99 DB 자동 시작 다시 한번더 질문 드립니다. 6 file 이석희 2009.02.25 13883
98 JAVA 프로시져 4 벅지 2009.02.24 15783
97 php 모듈 5 sakang 2009.02.24 16810
96 프로세스 점유에 대해 질문 드립니다. 1 file 이석희 2009.02.24 13358
95 service tray 실행 안됨 3 file 바부대왕 2009.02.24 17426
94 윈도우 구동시 데이터베이스 구동 관련 문의 2 3 file 이석희 2009.02.24 12746
93 보관로그 관련 2 벅지 2009.02.23 13351
Board Pagination Prev 1 ... 143 144 145 146 147 148 149 150 151 152 153 Next
/ 153

Contact Cubrid

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