Background Image

FORUM

조회 수 9614 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

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

 

조금 찾아보다 보니 OID나 Collection같은 특성을 사용하기 위해서는 DBCP를 못쓰는거 같네요...

 

보니까 브로커 개념이 있던데. 이녀석도 중간에 자원관리를 해주는 역활을 하나 보네요.

 

어차피 브로커가 있다면 DBCP도 크게 커넥션수같은 DB자원 사용량을 줄이는 정도가 적을거 같기도 한데...

 

 

 

 

OID를 쓰면서 join이나 서브쿼리가 줄어드는 효과와, DBCP를 사용못해서 늘어나는 자원사용량을

 

어떻게 판단하면 좋을지 의견좀 부탁드립니다.

 

 

 

현재 왠만한 DB모델링에서도 OID나 Collection개념을 포함해서 모델링되는 경우가 거의 없어서

 

잘 확신이 들지 않네요.

 

모델링 하면서도, 이렇게 한다고 해서 효율적일까 하는 의문이 계속 들더군요.

 

  • ?
    손승일 2011.03.31 03:08

    DBCP를 사용하는 경우 OID 등의 CUBRID 특성 기능을 사용할 수 없습니다. 따라서 OID 등을 사용하는 경우에는 별도의 Pooling 을 구현하셔야 합니다.


    Broker가 존재하더라도 응용에서 Broker까지 connection을 맺기위한 비용을 생각해볼때 DBCP 등의 connection pool 사용하시길 권장합니다.




  • ?
    cgkang 2011.03.31 11:44

     CUBRID의 object 특성을 사용하는 것과 DBCP는 연관성이 많지 않습니다.

    oid나 collection을 사용한다는 것은 두가지 관점에서 볼 수 있을것 같습니다.

     

    1. 모델링 & 쿼리

    간단히 예를 들어 사원 테이블과 부서 테이블이 있다고 가정할떄,

    관계 모델에서는 사원 테이블에 부서 코드 컬럼을 추가하고, 사원 테이블과 부서 테이블을 조인하여 원하는 결과를 얻는 형태가 될 것입니다.

    object 를 활용할 경우에는 사원 테이블에서 부서에 대한 object를 가지게 되고, 조인없이 path expression을 활용하는 형태가 될 것입니다.

    이 경우는 확장된 SQL을 통해서 object에 대한 접근을 하게 되므로,

    개발 관점에서는 스키마의 변경과 쿼리의 변경이 있게 됩니다.

    JDBC 인터페이스를 그대로 사용하게 되므로 dbcp를 사용하는것과는 연관이 없습니다.

     

    2. 확장 api

    확장된 메소드를 사용하기 위해서는 dbcp가 만든 connection이나 satement 객체 내에서 드라이버가 만든 object를 꺼내기 위해 몇가지 단계를 거쳐야 하는 불편은 있습니다.

    이렇게 OID에 대한 확장된 메소드를 사용하는 경우는 한번 접근한 객체에 대해 반복적인 읽기/쓰기를 직접 수행하는 것이 효율적인 응용의 경우 적합합니다. 웹 서비스의 경우에는 한번 접근한 데이터를 다시 사용하게 되는 경우가 많지 않기 때문에 굳이 사용할 필요가 없다고 보입니다.

     

    두가지 관점으로 볼떄 현재 필요한 부분이 모델링과 확장된 쿼리가 아닌가 생각됩니다.

    이 경우에는 dbcp를 사용하는데는 문제가 없을것으로 생각되지만,

    이렇게 활용된 레퍼런스가 많지 않다는 점은 향후 적용하는데 어려움은 될 수 있을 것 같습니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 104
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4468
899 OleDbCommand 를 사용하는데 다음 같은 에러가 발생합니다. 2 file hades 2008.12.10 22366
898 OUTER JOIN 관련해서 질문 드립니다. 2 이석희 2009.04.14 15978
897 ORDERBY_NUM() 사용시 rownum 번호가 순서대로 출력이 안됩니다. 3 개발장 2014.11.06 19413
896 ORDER BY RANDOM() 1 소라게 2013.07.29 11883
895 ORDER BY ** ASC 조건과 offset 조건이 같이 있을 경우 발생되는 오류 문의 7 file 충이 2019.05.22 298
894 ORACLE의 STRING_AGG와 같은 기능을 하는 함수 구현 관련 2 ihyeon0214 2021.10.14 427
893 ORACLE의 DBMS_XMLGEN.GETXMLTYPE를 CUBRID 변형 방법 요청 1 Rkakrnl 2019.05.16 742
892 ORACLE_STYLE_EMPTY_STRING 설정 값에 의한 TRIM 처리에 대한 문의 1 zeroradish 2020.10.14 102
891 ORACLE DB LINK 문의 1 secret MJHan 2012.10.24 6
890 OPENROWSET 을 사용한 검색결과 문의 5 file idonot 2013.01.17 12772
889 OPENROWSET EXCEL SELECT 문의 2 강창순 2017.05.13 3979
» OODB특성을 사용하기 위해 DBCP를 포기하는게 적당할까요? 2 안지민 2011.03.30 9614
887 ON DUPLICATE KEY UPDATE 사용시 affected rows 에 관한 질문 1 Xenos 2012.05.09 15024
886 OLEDB 이용하여 OUTER JOIN 에러 1 redhope 2010.12.04 8671
885 OLEDB 연결시 에러 db_e_sec_auth_failed ( 0x80040E4D ) 1 BlueHeart 2014.07.07 6231
884 OLEDB 연결 시 에러 발생 4 늘푸른거북이 2009.02.12 22252
883 OLEDB 에서의 DATE_FORMAT 함수 문의에 대한 답변은 언제쯤? 2 유니콘 2010.08.18 9866
882 OLEDB 에서의 DATE_FORMAT 함수 문의 4 유니콘 2010.08.16 11964
881 OLEDB 에서 OID 자동으로 가져오게 하는 방법? 2 서명호 2009.05.01 13374
880 OLEDB 설치시 오류 15 file choiboss 2012.10.20 16042
Board Pagination Prev 1 ... 151 152 153 154 155 156 157 158 159 160 ... 200 Next
/ 200

Contact Cubrid

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