Background Image

FORUM

조회 수 16934 추천 수 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 2020.04.09 4441
3986 tomcat7 + cubrid 1 깽즈야 2012.07.27 91018
3985 원격접속이 안되네요????????? 2 Chris 2013.07.23 89530
3984 현재 연결은 원격 호스트에 의해 강제로 끊겼습니다 1 바람바람 2013.05.29 84883
3983 CUBRID 7.3 + zeroboard XE 관리자 로그인 에러 1 윤희서 2009.01.17 83642
3982 cub_master: Cannot bind local address... aborting.... Address already in use 4 박상현 2008.11.28 83563
3981 큐브리드 다운로더 오류 발생 5 file 차오이 2008.11.22 78483
3980 zeroboard XE 설치시 'database connect fail' error 4 윤희서 2009.01.16 78164
3979 Image 데이터타입 사용방법 3 AD 2008.11.25 73850
3978 clob 문의 1 김해영 2012.11.29 73007
3977 linux server 환경에서 php 버전은 어떤걸로 선택해야하는지. 1 거기 2008.11.30 66366
3976 델파이에서는 어떻게 사용할수 있을까요? 2 이상원 2008.11.29 65566
3975 if exists 조건 처리문? 2 콩이아부지 2013.03.06 63606
3974 update 쿼리를 이용한 시리얼 수정에 관하여 1 인경수 2008.11.27 63453
3973 큐브리드 2008 설치시 윈도우 서비스에 등록되지 않습니다. 3 file 진이 2008.11.22 63170
3972 CUBRID 7.3 + zeroboard XE 관리자 로그인 에러 1 윤희서 2009.01.17 62130
3971 큐브리드 maven repository 관련 문의 3 StoneHouse 2013.04.30 61468
3970 메니저에서 접속 안되는 오류 2 유나인 2013.08.16 61067
3969 .NET DB 제어를 위한 방법. 2 우페 2008.11.23 60878
3968 JDK가 두개 설치된 경우 선택적으로 JDK를 설정 할 수 있는 방법은 없는지요 1 GoFly 2008.11.28 60614
3967 데이터 이관시 소유자 변경 가능한가요??? 1 델몬트 2013.08.08 60066
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 200 Next
/ 200

Contact Cubrid

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