database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
ㆍCUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
CUBRID Q&A 1040 게시물 읽기
No. 1040
Q.테이블의 구조에 관한 질문입니다.
작성자
joobile
작성일
2008-04-09 11:08
조회수
7,531

큐브리드 잘 쓰고 있습니다. 감사합니다.

 

예를들어 아래와 같은 간단한 게시판이 있다고 가정하고

 

bbs_page

(

id int,

subject char(255),

content string

)

 

어떤 이유로 content 부분만 다른 클래스로 분리하려고 합니다.

 

첫번째, 관계형 db 의 경우 아래와 같이 분리한다음 조인을 하게 되고

=================================

bbs_page

(

        id int,

        subject char(255),

)

 

bbs_data

(

        id int,

        content string

)

==================================

 

두번째, 큐브리드의 경우 위와같이 해도 되고 아래와 같은 구조도 가능합니다.

==================================

bbs_page

(

        id int,

        subject char(255),

        content bbs_data

)

 

bbs_data

(

        content string

)

===================================

 

맞게 알고 있는건지 모르겠습니다. 대용량을 고려하면 어떤걸 선택해야 하는지요?

어떤 경우에 클래스를 도메인으로 사용하는것이 좋은지 모르겠습니다.

 

메뉴얼에 보면 관계형으로 할수 있는것은 굳이 객체지향형으로 할 필요없다.. 라고

써있는데 demodb 에 보면 저런 간단한 구조를 객체지향 개념을 써서 표현한것 같습니다.

 

단순히 예제를 보여주기 위한 demodb 인가요? 아니면 큐브리드에서는 2번과 같이

테이블을 짜는것이 효율적인가요?

 

검색안해봤습니다. 메뉴얼 보다가 문득 생각난거라서..

참고 자료가 있으면 링크걸어주셔도 됩니다.

이 글에 대한 댓글이 총 1건 있습니다.

안녕하세요.

테이블 설계는 잘하셨읍니다. 어느 방법이던 편하신대로 하시면 됩니다. 다만 2번째 방법이 좀 더 효율적입니다. 이유는 목록을 보고(bbs_page 를 검색하고), 내용을 볼때(bbs_data 검색) 첫번째의 경우 id 를 이용하여 bbs_data 에서 검색해야 하지만 두번째의 경우에는 bbs_page 를 검색시 content 의 값에 이미 bbs_data 에 대한 OID(데이터베이스내 해당 데이터에 대한 위치 정보, Object IDentifier, 데이터를 나타내는 ID) 를 가지고 있으므로 이 값을 이용하여 그냥 bbs_data 에서 가져오면 됩니다. OID 를 이용하는 방법은 JDBC, PHP 에서 편리하게 사용할 수 있으며 관련 자료는 기술문서의 JDBC 부분 자바개발자특성화교육 을 참고하시면 됩니다.

테이블 설계관점에서 bbs_page 와 bbs_data 는 분리하시는 것이 좋습니다. bbs_page 와 bbs_data 의 접근시점이 다르고 구지 같이 있을 필요가 없으며 한번에 접근하는 데이터의 양을 줄일수 있으므로 성능을 위하여 좋은 방법입니다.

 

>큐브리드 잘 쓰고 있습니다. 감사합니다.

>

>예를들어 아래와 같은 간단한 게시판이 있다고 가정하고

>

>bbs_page

>(

>id int,

>subject char(255),

>content string

>)

>

>어떤 이유로 content 부분만 다른 클래스로 분리하려고 합니다.

>

>첫번째, 관계형 db 의 경우 아래와 같이 분리한다음 조인을 하게 되고

>=================================

>bbs_page

>(

>        id int,

>        subject char(255),

>)

>

>bbs_data

>(

>        id int,

>        content string

>)

>==================================

>

>두번째, 큐브리드의 경우 위와같이 해도 되고 아래와 같은 구조도 가능합니다.

>==================================

>bbs_page

>(

>        id int,

>        subject char(255),

>        content bbs_data

>)

>

>bbs_data

>(

>        content string

>)

>===================================

>

>맞게 알고 있는건지 모르겠습니다. 대용량을 고려하면 어떤걸 선택해야 하는지요?

>어떤 경우에 클래스를 도메인으로 사용하는것이 좋은지 모르겠습니다.

>

>메뉴얼에 보면 관계형으로 할수 있는것은 굳이 객체지향형으로 할 필요없다.. 라고

>써있는데 demodb 에 보면 저런 간단한 구조를 객체지향 개념을 써서 표현한것 같습니다.

>

>단순히 예제를 보여주기 위한 demodb 인가요? 아니면 큐브리드에서는 2번과 같이

>테이블을 짜는것이 효율적인가요?

>

>검색안해봤습니다. 메뉴얼 보다가 문득 생각난거라서..

>참고 자료가 있으면 링크걸어주셔도 됩니다.

 

남재우님이 2008-04-09 16:28에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1043table primary key의 생성,삭제 [2]
해달
2008-04-10
8201
1042Q.데이터베이스 서버 구동 오류 관련 질문 [1]
김소영
2008-04-10
8238
1041Q.이클립스 plug-in SQLexplorer... [1]
강신철
2008-04-09
7892
1040Q.테이블의 구조에 관한 질문입니다. [1]
joobile
2008-04-09
7531
1038Q.다음은 리눅스쪽 포트가 막혀진 건가요? [1]
해달
2008-04-08
7188
1037Q.Segmentation fault [1]
장현석
2008-04-08
7163
1036Q.리눅스 서버에 큐브리드 깔지않고 모듈넣을 방법 없나요? [1]
해달
2008-04-08
7393
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.051초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다