Growth Hoon

20230827_TIL_SQLD공부 ( ~24p) 본문

TIL_Today I Learned

20230827_TIL_SQLD공부 ( ~24p)

sayhoon 2023. 8. 27. 23:55

오늘의 한 줄 TIL : SQLD 1과목은 개념적인 부분을 공부하는 과목


모델링의 정의란?

복잡한 현실세계를 일정한 표기법에 의해 표현하는 일 

 

모델링의 특징

- 다양한 현상을 일정한 양식인 표기법에 의해 표현하는 추상화

- 제한된 표기법이나 언어로 표현하여 쉽게 이해할 수 있는 단순화

- 애매모호함을 제거하고 정확하게 현상을 기술하는 명확화

 

데이터 모델링의 중요성

- 데이터 모델링을 한번 잘못하면 전체 시스템에 영향이 가는 파급효과(Leverage) 

- 수 많은 페이지의 기능적인 요구사항을 간결하게 표현하는 (Conciseness)

- 기업의 자산이 되는 데이터의 활용가치를 높이기 위한 데이터 품질(Data Quality)

 

데이터 모델링의 유의점
- 정보(Data)의 중복을 막아야 한다.

- 데이터 혹은 프로세스의 작은 변화가 App과 DB에 변화 가능성을 줄여야 하는 비유연성(Inflexibility)
- 데이터와 데이터간의 상호 관계를 명확하게 하는 비일관성 (Inconsistency)

 

데이터 모델링에는 개념적, 논리적, 물리적 데이터 모델링이 존재한다.

일반적으로 개념적, 논리적 데이터 모델링이 동시에 수행되고, 이를 바탕으로

물리적 데이터 모델링이 수행된다.


데이터 모델링에서의 데이터 독립성

데이터 독립성을 알기 위해서는 데이터 종속성을 알아야한다고 한다.

데이터 종속성은 Application에 종속되어있음을 말한다.

 

데이터가 독립성이 필요한 이유는 지속적으로 증가하는 유지보수 비용이랑, 

Application에 의해 종속되는 데이터간의 중복을 방지하기 위함이다.


데이터 모델링의 중요한 3가지 개념

 

데이터 모델링의 3가지 요소

1. 업무가 관여하는 어떤 것 ( Things) - Entity

2. 어떤 것이 가지는 성격 - Attributes

3. 업무가 관여하는 어떤 것 간의 관계 - Relationships

 

어떤 것에서 Entity가 복수 개념이 될 수 있고, 단수 개념이 될 수 있음 

복수인 경우는 자동차, 단수인 경우는 제네지스 G80이라고 생각하면 됨

-> 공부하고 있는 서적에서는 단수의 경우를 Instance라고 지칭하여 혼용을 방지함.


데이터 모델의 표기법 ERD (Entity Relationship Diagrame)

다양한 표기법이 있지만, IE/Crow's Foot 표기법이랑 Barker 표기법이 유명함.

유사개발자의 velog


좋은 데이터 모델의 요소

1. 업무에서 필요로 하는 모든 데이터가 데이터 모델에 정의 되어있는 완전성

2. 하나의 DB내 동일한 데이터 즉, 중복이 없어야 하는 중복배제  

3. 수 많은 업무규칙이 표현되어있는 데이터 모델

4. 데이터의 통합성과 독립성에 대해서 충분히 고려되어 데이터 재사용성을 높인 모델

5. 업무규칙이 잘 표현된 모델로 인해 데이터 모델은 의사소통의 도구가 된다.

6. 각 부서마다 관리하던 데이터를 동일한 성격의 데이터로 묶어 관리하는 통합성


내일은 엔터티, 속성, 관계, 식별자 까지 공부하고 정리

 

Image Reference site:

- IE/Barker 표기법 이미지