본문 바로가기
반응형

dbms18

물리적 데이터베이스 설계에 대하여(1) 물리적인 설계 단계에서는 논리적인 설계의 데이터 구조를 보조 기억 장치상의 파일(물리적인 데이터 모델)로 사상합니다. 예상 빈도를 포함하여 데이터베이스 질의와 트랜잭션들을 분석합니다. 조인 연산들의 속도를 향상하고, 사장 빈번하게 사용되는 애트리뷰트들에 중점을 둡니다. 데이터에 대한 효율적인 접든을 제공하기 위하여 저장 구조와 접근 방법들을 다룹니다. 물리적인 데이터베이스 설계는 특정 DBMS의 특성을 고려하여 진행됩니다. 대부분의 경우에 논리적인 데이터베이스 설계는 물리적인 데이터베이스 설계로 사상됩니다. 그러나 데이터베이스의 사용 패턴에 관한 정보를 추가로 알게 됨에 따라 시스템 성능을 향상할 수 있습니다. 만일 현재 사용하고 있는 DBMS가 ANSI/SPARC모델을 잘 따른다면 이런 변화로 인해 논.. 2022. 9. 8.
논리적 설계:ER스키마를 관계 모델의 릴레이션들로 사상 04. 데이터베이스 설계 사례 (2) 개념적 설계 단계에서 ER 모델을 사용하여 조직체의 데이터베이스 응용을 위한 개념적 스키마를 생성하였으면, 논리적 설계 단계에서는 ER 스키마를 관계 데이터 모델의 릴레이션들로 사상해야 합니다. ER 데이터 모델의 기반으로 한 상용 DBMS가 없으므로, 또한 대부분의 DBMS는 관계 데이터 모델을 기반으로 하기 때문에 ER 스키마를 관계 데이터 모델로 변환해야 합니다. 또한 ER 스키마에는 엔티티 타입과 관계 타입이 존재하지만 관계 데이터베이스에는 엔티티 타입과 관계 타입을 구분하지 않고 릴레이션들만 들어 있습니다. 릴레이션으로 사상할 대상이 ER 스키마에서 엔티티 타입인지 또는 관계 타입인지, 엔티티 타입이라면 정규 엔티티 타입인지 또는 악한 엔티티 타입인지, 관계.. 2022. 9. 7.
ER 모델의 다른 표기법과 새발 표기법 01. ER 모델의 또 다른 표기법 ER 다이어그램의 표기법의 요약본입니다. 수십 개 이상의 애트리뷰트가 엔티티 타입에 연결된 다이어그램을 나타내려면 매우 불편하고 공간을 많이 차지하게 됩니다 실제 기업의 데이터베이스에는 수십 개 ~ 200개 정도의 애트리뷰트들을 갖는 릴레이션들이 흔히 사용되고 있습니다. 순수한 Chen 스타일의 ER 표기법을 채택한 CASE 도구는 거의 없습니다. ERWin 등의 CASE 도구들에서는 새발(crow-feet) 표기법이 흔히 사용됩니다. 새발 표기법에도 여러 가지 변형들이 존재합니다. 새발 표기법에서도 엔티티 타입은 직사각형으로 나타내지만 관계 타입을 의미하는 다이아몬드는 사용되지 않습니다. 관계의 의미나 제약조건 등은 엔티티 타입들을 연결하는 실선 위에 몇 가지 기호를.. 2022. 9. 6.
ER모델에 대해 알고계신가요? (3) 06. 관계와 관계 타입 (2) ► 1:1 관계 E1의 각 엔티티가 정확하게 E2의 한 엔티티와 연관되고, E2의 각 엔티티가 정확하게 E1의 한 엔티티와 연관되면 이 관계를 1:1 관계라고 합니다. 예를 들어, 각 사원에 대해 최대한 한 개의 PC가 있고 각 PC에 대해 최대한 한 명의 사원이 있다면 사원과 PC의 관계는 1:1 관계입니다. ► 1:N 관계 E1의 각 엔티티가 E2의 임의의 개수의 엔티티와 연관되고, E2의 각 엔티티는 정확하게 E1의 한 엔티티와 연관된다면 이 관계를 1:N 관계라고 합니다. 예를 들어, 각 사원에 대해 최대한 한 대의 PC가 있고 각 PC에 대해 여러 명의 사원들이 있으면 PC와 사원 간의 관계는 1:N 관계입니다. 1:N 관계는 실세계에서 가장 흔히 나타나는 유형입.. 2022. 9. 5.
데이터베이스 설계와 개요에 대하여 01. 데이터베이스 설계 데이터 모델링은 관계 DBMS 세계에서 가장 어렵고 가장 중요한 업무 중 하나입니다. 데이터 모델링을 잘못하면 조직체의 응용은 사용자의 요구를 만족시키지 못할 수 있으며, 신뢰할 수 없고, 데이터베이스에 쓸모없는 데이터를 채우게 됩니다. 매우 단순한 상황을 제외하고는 모델이 완전한 지식을 전달할 것으로 기대해서는 안되지만 훌륭한 모델은 실세계 상황을 합리적으로 이해할 수 있게 합니다. 한 조직체에 가용한 모든 상세한 데이터를 모델에 기록하는 것은 불가능하며, 바람직하지도 않습니다. 데이터베이스 설계는 미리 정의된 응용들의 모임을 위해서 조직체의 사용자들의 정보 요구를 수용하여 하나 이상의 데이터베이스의 논리적인 구조와 물리적인 구조를 설계하는 것입니다. 서로 충돌되는 요구들을 조.. 2022. 8. 31.
트리거(trigger)와 주장(assertion) 그리고 내포된 SQL 저장된 데이터의 의미적 정확성을 보장하기 위해서, 테이블을 정의할 때 데이터베이스 스키마의 한 부분으로서 무결성 제약조건을 명시해야 합니다. 테이블 정의와 별도로 데이터베이스의 무결성을 시행하는 메커니즘인 트리거와 주장을 알아보겠습니다. 제약조건이 트리거보다 성능이 우수하고, 코딩이 불필요하며, 선언하고 수정하기가 용이하므로 가능하다면 제약조건을 사용하는 것이 좋습니다. 01. 트리거(trigger) 트리거는 명시된 이벤트(데이터베이스의 갱신)가 발생할 때마다 DBMS가 자동적으로 수행하는, 사용자가 정의하는 문(프로시저)이다. 트리거는 데이터베이스의 무결성을 유지하기 위한 일반적이고 강력한 도구이며, 테이블 정의 시 표현할 수 없는 기업의 비즈니스 규칙들을 시행하는 역할을 합니다. 무결성 제약조건을 유.. 2022. 8. 30.
반응형