728x90
반응형
SMALL

SQLD 6

데이터 모델과 성능 -(3)

* 분산 DB 1. 여러 곳으로 분산되어있는 DB를 하나의 가상시스템으로 사용할 수 있도록 한 DB 2. 논리적으로 동일한 시스템에 속하지만, 컴퓨터 네트워크를 통해 물리적으로 분산되어 있는 데이터 집합 * 분산 DB를 만족하기 위한 6가지 투명성 1. 분할 투명성(단편화) : 하나의 논리적 Relation이 여러 단편으로 분할되어 각 사본이 여러 site에 저장 2. 위치 투명성 : 사용하려는 데이터의 저장 장소명시 불필요, 위치정보가 시스템 카탈로그에 유지 3. 지역사상 투명성 : 지역 DBMS와 물리적 DB사이의 Mapping 보장 4. 중복 투명성 : DB 객체가 여러 site에 중복되어 있는지 알 필요가 없는 성질 5. 장애 투명성 : 구성요소의 장애에 무관한 트랜잭션의 원자성 유지 6. 병행 ..

SQLD 2023.06.07

데이터 모델과 성능 -(2)

* 로우 체이닝 - 로우의 길이가 너무 길어 데이터 블록 하나에 데이터가 모두 저장되지 않고 두 개 이상의 블록에 걸쳐 하나의 로우가 저장되어 있는 형태 * 로우 마이그레이션 - 데이터블록에서 수정이 발생하면 수정된 데이터를 해당 데이터 블록에서 저장하지 못하고 다른 블록의 빈 공간을 찾아 저장하는 방식 - 로우 체이닝과 로우 마이그레이션이 발생하여 많은 블록에 데이터가 저장되면 DB 메모리에서 디스크 I/O가 발생할 때 많은 I/O가 발생하여 성능저하 발생 트랜잭션을 분석하여 적절하게 1:1관계로 분리 함으로써 성능향상이 가능하도록 해야한다. * PK에 의해 테이블을 분할하는 방법(파티셔닝) 1. RANGE PARTITION : 대상 테이블이 날짜 또는 숫자값으로 분리가 가능하고 각 영역별로 트랜잭션이..

SQLD 2023.06.06

데이터 모델과 성능 -(1)

* 성능 데이터 모델링 - DB 성능향상을 목적으로 설계단계의 데이터 모델링 때부터 정규화, 반정규화, 테이블통합, 테이블분할, 조인구조, PK, FK 등 여러가지 성능과 관련된 사항이 데이터 모델링에 반영 될 수 있도록 하는 것 - 분석/설계 단계에서 데이터 모델에 성능을 고려한 데이터 모델링을 수행할 경우 성능저하에 따른 재업무 비용을 최소화 할 수 있음. 데이터의 증가가 빠를수록 성능저하에 따른 성능개선비용은 기하급수적으로 증가하게 된다. * 성능 데이터 모델링 고려사항 순서 1. 데이터 모델링을 할 때 정규화를 정확하게 수행 2. DB 용량산정을 수행한다. 3. DB에 발생되는 트랜잭션의 유형을 파악한다. 4. 용량과 트랜잭션의 유형에 따라 반정규화를 수행 5. 이력모델의 조정, PK/FK조정, ..

SQLD 2023.06.05

데이터 모델링의 이해 - (3)

* 관계 - 엔티티의 인스턴스 사이의 논리적인 연관성으로서 존재의 형태로서나 행위로서 서로에게 연관성이 부여된 상태, 관계 페어링의 집합 ex) 강사 - 가르친다(관계) - 수강생 * 페어링 - 엔티티 안에 인스턴스가 개별적으로 관계를 가지는 것 * UML(통합모델링언어)에서의 관계 - 연관관계(실선) : 항상 이용하는 관계 ex) 소속된다. - 의존관계(점선) : 상대 행위에 의해 발생하는 관계 ex) 주문한다. * 관계의 표기법 - 관계명 : 관계의 이름 - 관계차수 : 1:1, 1:N, M:N - 관계선택성(관계선택사양) : 필수관계, 선택관계 * 관계 체크사항 1. 2개의 엔티티 사이에 관심있는 연관 규칙O? 2. 2개의 엔티티 사이에 정보의 조합 발생O? 3. 업무기술서, 장표에 관계연결에 대한..

데이터 모델링의 이해 - (2)

* ERD 작업순서 1. 엔티티 그림 2. 엔티티 배치 3. 엔티티 관계설정 4. 관계명 기술 5. 관계의 참여도 기술 6. 관계필수여부 * 좋은 데이터 모델의 요소 1. 완전성 : 업무에 필요한 모든 데이터가 모델에 정의 2. 중복배제 : 하나의 DB내에 동일한 사실은 한번만, 3. 업무규칙 : 많은 규칙을 사용자가 공유하도록 제공 4. 데이터 재사용 : 데이터가 독립적으로 설계돼야 함 5. 의사소통 : 업무규칙은 엔티티, 서브타입, 속성, 관계 등의 형태로 최대한 자세히 표현 6. 통합성 : 동일한 데이터는 한번만 정의, 참조 활용 * 엔티티 - 업무에 필요하고 유용한 정보를 저장하고 관리하기 위한 집합적인 것, 보이지 않는 개념 포함 * 엔티티 특징 1. 반드시 해당 업무에서 필요하고 관리하고자 함..

데이터 모델링의 이해 - (1)

* 데이터 모델링의 중요성 및 유의점 - 중복 : 같은 시간 같은 데이터 제공 - 비유연성 : 사소한 업무변화에 데이터 모델이 수시로 변경되면 안됨. 데이터 정의를 사용 프로세스와 분리한다. - 비일관성 : 데이터 간 상호 연관 관계에 대해 명확히 정의해한다. * 데이터 모델링 - 개념적, 논리적, 물리적 데이터 모델링 * 데이터 독립성 요소 - 외부 스키마 : 개개 사용자가 보는 개인적 DB 스키마 - 개념 스키마 : 모든 사용자 관점을 통합한 전체 DB - 내부 스키마 : 물리적 장치에서 데이터가 실제적 저장 * 데이터 독립성 - 논리적 독립성 : 개념스키마 변경, 외부스키마에 영향X - 물리적 독립성 : 내부스키마 변경, 외부/개념스키마에 영향X * Mapping(사상) : 상호 독립적인 개념을 연..

728x90
반응형
LIST