본문 바로가기

CHALLENGE489

[J STORY] SQLP - 데이터베이스 구조와 성능 1. 슈퍼타입/서브타입 모델의 성능고려 방법 가. 슈퍼/서브타입 데이터 모델의 개요 슈퍼/서브타입 모델 업무를 구성하는 데이터의 특징을 공통과 차이점의 특징을 고려하여 효과적으로 표현할 수 있으므로, 자주 쓰이는 모델링의 방법이다. 이 모델은 논리데이터 모델에서 이용되는 형태이고, 물리적인 데이터 모델을 설계하는 단계에서는 일정한 기준에 의해 변환을 해야 한다. 아무런 기준없이 막연히 변환하는 것 자체가 성능 저하의 위험이 있다. 나. 슈퍼/서브타입 데이터 모델의 변환 슈퍼/서브타입에 대한 변환을 잘못하면 성능이 저하되는 이유는 트랜잭션 특성을 고려하지 않고 테이블이 설계되었기 때문이다. 1) 트랜잭션은 항상 일괄로 처리하는데 테이블은 개별로 유지되어 Union연산에 의해 성능저하 2) 트랜잭션은 항상 .. 2021. 4. 10.
[J STORY] SQLP - 대량 데이터에 따른 성능 1. 대량 데이터발생에 따른 테이블 분할 개요 가. 대량 데이터가 발생하는 테이블의 문제점 설계가 잘 되어 있는 데이터 모델이라도 대량의 데이터가 하나의 테이블에 집약되어 있고 하나의 하드웨어 공간에 저장되어 있으면 성능 저하를 피하기 힘들다. 인덱스도 또한 트리가 커지고 깊이가 깊어져, 조회성능에 영향을 미치게 된다. 입력/수정/삭제의 트랜잭션인 경우도 인덱스의 특성상 일량이 증가하여, 더많은 성능저하를 유발하게 된다. 컬럼이 많아지게 되면 물리적인 디스크의 여러 블록에 걸쳐 데이터가 저장되게 되며, 로우 길이가 너무 길어서 로우체이닝과 로우 마이그레이션이 많아지게 되어 성능이 저하된다. 2. 한 테이블에 많은 수의 칼럼을 가지고 있는 경우 200개의 컬럼을 가진 도서정보 테이블이 있다고 가정하고, 하.. 2021. 4. 10.
[J STORY] SQLP - 속성(Attribute) 1. 속성(Attribute)의 개념 가. 속성의 사전적 의미 사물의 성질, 특징, 또는 본질적인 성질, 그것이 없다면 실체를 생각할 수 없는 것 본질적 속성이란 어떤 사물 또는 개념에 없어서는 안될 징표의 전부이다. 징표는 사물이나 개념이 어떤것인지를 나타내고 그것을 다른 것과 구별하는 성질 나. 데이터 모델링 관점에서 속성의 정의 업무에서 필요로 하는 인스턴스로 관리하고자 하는 의미상 더이상 분리되지 않는 최소의 데이터 단위 업무상 관리하기 위한 최소의 의미 단위 속성은 엔터티를 성명하고 속성은 인스턴스의 구성요소 다. 예시 생년월일은 그 자체로 의미가 있으므로 속성이라 할 수 있다. 생년, 생월, 생일 로 분리가 가능하지만 이는 하나의 속성을 관리목적으로 분리한 것일 뿐 각각을 속성이라 할수는 없다.. 2021. 4. 3.
[J STORY] SQLP - 엔티티(Entity) 1. 엔티티(Entity)의 개념 Entity : 실체, 객체 엔터티는 사람, 장소, 물건, 사건, 개념등의 명사에 해당한다. 엔터티는 업무상 관리가 필요한 관심사에 해당한다. 엔터티는 저장이 되기 위한 어떤 것이다. 3. Entity의 특징 가. 업무에서 필요로 하는 정보 반드시 해당 업무에서 필요하고, 관리하고자 하는 정보이어야 한다. 나. 식별이 가능해야함 유일한 식별자에 의해 식별이 가능해야 한다. 다. Instance 의 집합 영속적으로 존재하는 Instance 의 집합 2개 이상의 Instance 의 집합 1개의 Instance 로 이루어진 집합은 Entity 가 아니다. 라. 업무 프로세스에 의해 이용 업무 프로세스가 반드시 그 Entity 를 이용해야 한다. 마. 속성을 포함 Entity .. 2021. 4. 3.
[J STORY] SQLP - 데이터 모델링의 이해2 6. 데이터 모델링에서 데이터 독립성의 이해 가. 데이터 독립성의 필요성 1. 데이터 독립성 필요 - 유지보수 비용 증가 - 데이터 중복성 증가 - 데이터 복잡도 증가 - 요구사항 대응 저하 나. 데이터베이스 3단계 구조 1. 외부스키마 : View 단계, 여러 개의 사용자 관점으로 구성, 즉 개개 사용자 단계로서 개개 사용자가 보는 개인적 DB 스키마 - DB의 개별 사용자나 응용프로그래머가 접근하는 DB정의 2. 개념스키마 : 개념단계, 하나의 개념적 스키마로 구성, 모든 사용자 관점을 통합한 조직 전체의 DB를 구성하는 것 - 모든 응용시스템들이나 사용자들이 필요로 하는 데이터를 통합한 조직 전체의 DB를 기술한 것으로 DB에 저장되는 데이터와 그들간의 관계를 표현한 스키마 3. 내부스키마 : 내부.. 2021. 3. 30.
[J STORY] SQLP - 데이터 모델링의 이해 1. 모델링의 이해 가. 모델링의 정의 - 모델링에 대한 다양한 정의 - Webster 사전(가설적 일정 양식에 맞춘 표현, 어떤 것에 대한 예비표현으로 최종대상이 구축되도록 하는 계획으로 서 기여하는 것) 나. 모델링의 특징 - 추상화 : 현실세계를 일정한 형식에 맞추어 표현을 한다는 의미로 정리할 수 있다. 즉, 다양한 현상을 일정한 양식 인 표기법에 의해 표기한다는 것이다. - 단순화 : 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현하여 쉽게 이해할 수 있도록 하는 개념을 의미한다. - 명확화 : 누구나 이해하기 쉽게 하기 위해 대상에 대한 애매모호함을 제거하고 정확하게 현상을 기술하는 것 * 모델링의 재정의 : 현실세계를 추상화,단순화,명확화하기 위해 일정한 표기법에 의해 표.. 2021. 3. 29.