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
운영게시판
최근게시물
Cache Q&A 158 게시물 읽기
No. 158
[참고] Global 설계
작성자
박지훈
작성일
2002-02-02 02:10
조회수
8,767

데이터 입출력 보다는 안정성에 대해서 이야기하고자 합니다.

데이터 입출력을 어떤 방법으로 하시는지요?

RDBMS 를 언급하셨는데 혹시 SQL을 사용하시는지요?

아니면 Cache script를 사용하시는지요?

아니면 M 루틴만 사용하시는지요?

M루틴만 사용할 때는 문제가 안되지만

스크립트나 SQL문을 사용하시고자 한다면

두개의 테이블을 하나의 글로벌에 저장하는 두번째 방법은

문제 발생 여지가 있다고 보여집니다.

 

^User(ID,Level)="Memo"

이 먼저 저장되어 있을 때

 

^User(ID)="Name,Address,Telephone,EMail"

는 저장이 불가능합니다.

 

^User(ID

부분이 Unique 충돌이 나기 때문이죠.

단순 글로벌이 아닌 클래스 형태로 Unique Key속성을 가지고 있는 것은

스크립트나 SQL로 저장이 불가능합니다.

물론 User 먼저 등록하고 삭제할 일이 없다면 문제가 없겠지만

예외 상황은 언제나 한 번은 발생하고 마는 것이니까요.

(얘 왜? 발생하는지....)

그렇게 저장 불가능한 상황이 발생했을 때

M 루틴으로 입력하거나

하위 노드를 모두 백업한 후에 모두 삭제하고서야

상위 노드가 새로 등록이 가능하고 그 이후에

하위노드의 데이터를 다시 복구해주어야 합니다.

 

M루틴만 사용하는 것이 아니라면 그리고 클래스를 사용하신다면

두 개의 클래스를 하나의 글로벌에 저장하는 것은 피하시라고 말씀드리고 싶습니다.

 

제 생각에는 만약 두개의 정보가 1:1 관계라면

 

^User(ID)="Name,Address,Telephone,EMail,Level,Memo"

 

구분하지 말고 모두 한꺼번에 넣는 것이 좋을 것이라고 생각되네요.

(1:1이면 하위노드를 만들 필요가 없는 것인가? 긁적...

한 사람이 여러 권한을 가질 수도 있는 구조이신지....?)

 

M 루틴 이외에 아무것도 안 쓴다면,

그리고 클래스 구조로 되어 있는 것이 아니라면,

두 번째 방법대로 하시는 것이 좋겠죠.

 

 

-- 김종현 님이 쓰신 글:

>> User Global

>> Global 구조 :

>> ^User(ID,Key)="Name,Address,Telephone,EMail"

>> -----------------------------------------------------------

>>

>> UserLevel Global

>> Global 구조 :

>> ^UserLevel(Key)="Level,Memo"

>> -----------------------------------------------------------

>>

>> RDBMS의 PK,FK의 형태로 SubScript를 만드는 것과

>>

>>

>>

>> User Global

>> Global 구조 :

>> ^User(ID)="Name,Address,Telephone,EMail"

>> ^User(ID,Level)="Memo"

>> -----------------------------------------------------------

>>

>> UserLevel Global 없이 User Global의 SubScript로 Level을 넣는것중

>>

>> 규모가 어느정도 커저서 Global간의 관계성이 많아질경우 어떤것이 더

>> 효율적인지 조언을 부탁드립니다.

[Top]
No.
제목
작성자
작성일
조회
164cache db 다른 db로 conversion 방법
김정철
2002-02-14
8031
166┕>Re: cache db 다른 db로 conversion 방법 [2]
어떤이
2002-02-14 13:51:52
8259
163[질문]JDBC 커넥션에서 에러입니다..
이문준
2002-02-09
7824
165┕>Re: [질문]JDBC 커넥션에서 에러입니다..
어떤이
2002-02-14 13:46:30
7805
160DSM에서두 java와 연동이 가능합니까? [1]
이문준
2002-02-05
7660
161┕>Re: DSM에서두 java와 연동이 가능합니까?
이창용
2002-02-07 09:57:04
7831
162 ┕>Re: Re: 그렇군요...답변 감사합니다
이문준
2002-02-07 10:07:03
7509
156[질문] Global 설계
김종현
2002-01-31
8292
157┕>Re: [질문] Global 설계
이창용
2002-02-01 15:21:01
8557
158┕>[참고] Global 설계
박지훈
2002-02-02 02:10:37
8767
159┕>두분 답변 감사합니다...^^
김종현
2002-02-04 09:14:37
8518
151data Export에 대해서 질문임다.
강유
2002-01-26
8030
152┕>Re: data Export에 대해서 질문임다.
이창용
2002-01-28 16:07:24
8531
147케쉐에서 데이타 추출방법좀... 부탁해여...
박경화
2002-01-14
8666
149┕>Re: 케쉐에서 데이타 추출방법좀... 부탁해여...
고생한 사람
2002-01-17 21:52:48
9028
143[질문]Cache에서 롤백기능을 사용하려면...?
김종현
2002-01-11
8496
144┕>Re: [질문]Cache에서 롤백기능을 사용하려면...?
박지훈
2002-01-13 11:47:16
9048
145 ┕>한가지만 더 질문...^^;
김종현
2002-01-14 12:56:06
8911
146  ┕>Re: 한가지만 더 질문...^^;
박지훈
2002-01-14 16:17:00
8878
148   ┕>답변감사합니다...^^
Cache
2002-01-16 13:29:14
8471
150   ┕>답변 감사합니당...^^ (내용 무)
김종현
2002-01-21 09:00:54
8631
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.020초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다