λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
Computer Science/Database

2 Data Model

by Dowon Kang 2023. 12. 22.

데이터 λͺ¨λΈμ€ 데이터듀을 μ²΄κ³„μ μœΌλ‘œ μ •μ˜ν•˜κ³  κ΅¬μ‘°ν™”ν•˜μ—¬ ν‘œν˜„ν•˜κΈ° μœ„ν•΄μ„œ λ§Œλ“€μ–΄μ§„ κ°œλ…μž…λ‹ˆλ‹€. 

μ—¬λŸ¬ 가지 λͺ©μ μ— 따라 λ‹€μ–‘ν•œ ν˜•νƒœμ˜ 데이터 λͺ¨λΈμ΄ μ‚¬μš©λ˜λ©°, μ΄λŸ¬ν•œ λͺ¨λΈμ€ λ°μ΄ν„° 관리와 ν™œμš©μ˜ νš¨μœ¨μ„±μ„ μ¦μ§„μ‹œν‚€λ©°, 정보 μ‹œμŠ€ν…œμ„ μ„€κ³„ν•˜κ³  μš΄μ˜ν•˜λŠ” 데 ν•„μˆ˜μ μΈ λ„κ΅¬λ‘œ μ‚¬μš©λ©λ‹ˆλ‹€.

 

 

1) Conceptual Data Model (Entity-Relationship Model)

Conceptual Data Model은 λΉ„μ¦ˆλ‹ˆμŠ€ μš”κ΅¬μ‚¬ν•­μ„ λ‚˜νƒ€λ‚΄κΈ° μœ„ν•œ κ³ μˆ˜μ€€μ˜ 데이터 ν‘œν˜„μœΌλ‘œ, 업무 ν”„λ‘œμ„ΈμŠ€μ™€ μ—”ν„°ν‹° κ°„μ˜ 관계λ₯Ό μ€‘μ‹¬μœΌλ‘œ μ„€κ³„λœ λͺ¨λΈμž…λ‹ˆλ‹€. 이 λͺ¨λΈμ€ λΉ„μ¦ˆλ‹ˆμŠ€ μš©μ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ λ°μ΄ν„°μ˜ μ˜λ―Έμ™€ 관계λ₯Ό μΆ”μƒμ μœΌλ‘œ ν‘œν˜„ν•˜λ©°, ꡬ체적인 λ°μ΄ν„°λ² μ΄μŠ€ 섀계에 μ§μ ‘μ μœΌλ‘œ μ˜μ‘΄ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

Conceptual Data Model은 λΉ„μ¦ˆλ‹ˆμŠ€ μ΄ν•΄λ₯Ό λ•κ³ , λ‹€μ–‘ν•œ μ΄ν•΄κ΄€κ³„μž κ°„μ˜ μ˜μ‚¬μ†Œν†΅μ„ μ΄‰μ§„ν•˜λŠ”λ° μ‚¬μš©

  • 일반 μ‚¬μš©μžλ“€μ΄ μ‰½κ²Œ 이해할 수 μžˆλŠ” κ°œλ…λ“€λ‘œ 이루어진 λͺ¨λΈ
  • 좔상화 μˆ˜μ€€μ΄ κ°€μž₯ λ†’μŒ
  • ER Diagram μ‚¬μš© 

 


 

 

2) Logical Data Model (논리적 데이터 λͺ¨λΈ)

논리적 데이터 λͺ¨λΈμ€ Conceptual Data Modelμ—μ„œ 얻은 λΉ„μ¦ˆλ‹ˆμŠ€ μš”κ΅¬μ‚¬ν•­μ„ λ°”νƒ•μœΌλ‘œ μ‹€μ œ λ°μ΄ν„°λ² μ΄μŠ€ μ‹œμŠ€ν…œμ„ κ΅¬ν˜„ν•˜κΈ° μœ„ν•œ 쀑간 λ‹¨κ³„μ˜ λͺ¨λΈμž…λ‹ˆλ‹€. 이 λͺ¨λΈμ€ 데이터λ₯Ό ꡬ체적으둜 μ •μ˜ν•˜κ³  ν‘œν˜„ν•˜μ—¬ λ°μ΄ν„°λ² μ΄μŠ€ λ‚΄μ˜ ν…Œμ΄λΈ”, μ—΄, 관계 등을 μ •μ˜ν•©λ‹ˆλ‹€.

 

λ‹€μ–‘ν•œ 논리적 데이터 λͺ¨λΈλ“€μ΄ μžˆμ§€λ§Œ κ°€μž₯ 유λͺ…ν•œκ±΄ κ΄€κ³„ν˜• 데이터 λͺ¨λΈ (Relational Data Model)μž…λ‹ˆλ‹€. κ΄€κ³„ν˜• λ°μ΄ν„° λͺ¨λΈμ€ λ°μ΄ν„°λ₯Ό ν…Œμ΄λΈ”μ΄λΌλŠ” μ΄μ°¨μ› κ΅¬μ‘°λ‘œ ν‘œν˜„ν•˜κ³ , ν…Œμ΄λΈ” κ°„μ˜ κ΄€κ³„λ₯Ό μ •μ˜ν•˜λŠ” λ°μ΄ν„° λͺ¨λΈμž…λ‹ˆλ‹€. 

 

κ΄€κ³„ν˜• 데이터 λͺ¨λΈ(RDBMS)의 κΈ°λ³Έ ꡬ성 μš”μ†Œ

1) ν…Œμ΄λΈ”(Table): 데이터λ₯Ό ν–‰κ³Ό μ—΄μ˜ ν˜•νƒœλ‘œ ν‘œν˜„ν•˜λŠ” κ°€μž₯ 기본적인 λ‹¨μœ„
2) ν–‰(Row): ν…Œμ΄λΈ” λ‚΄μ˜ 각 λ ˆμ½”λ“œ λ˜λŠ” 데이터 ν•­λͺ©.
3) μ—΄(Column): ν…Œμ΄λΈ” λ‚΄μ˜ 각 속성(Attribute)
4) ν‚€(Key): 데이터λ₯Ό κ³ μœ ν•˜κ²Œ μ‹λ³„ν•˜λŠ” 데 μ‚¬μš©λ˜λŠ” μ—΄ λ˜λŠ” μ—΄μ˜ 집합 (ex. primary key)
5) 관계(Relationship): ν…Œμ΄λΈ” κ°„μ˜ 연결을 λ‚˜νƒ€λ‚΄λ©°, 이것이 κ΄€κ³„ν˜• 데이터 λͺ¨λΈμ˜ 핡심
6) μ •κ·œν™”(Normalization): 데이터 쀑볡을 μ΅œμ†Œν™”ν•˜κ³  λ°μ΄ν„°μ˜ 일관성을 μœ μ§€ν•˜κΈ° μœ„ν•΄ ν…Œμ΄λΈ”μ„ κ΅¬μ‘°ν™”ν•˜λŠ” κ³Όμ • (제1 μ •κ·œν™”, 제2 μ •κ·œν™”, 제3 μ •κ·œν™”)

κ΄€κ³„ν˜• λ°μ΄ν„° λͺ¨λΈμ€ μ§κ΄€μ μ΄λ©° ν‘œμ€€ν™”λœ μ§ˆμ˜ μ–Έμ–΄μΈ SQL(Structured Query Language)을 μ‚¬μš©ν•˜μ—¬ λ°μ΄ν„°λ₯Ό μ‘°μž‘ν•  μˆ˜ μžˆλŠ” μž₯점이 μžˆμŠ΅λ‹ˆλ‹€. μ΄λ‘œ μΈν•΄ λ°μ΄ν„°μ˜ κ΅¬μ‘°ν™”와 κ²€μƒ‰μ΄ νš¨μœ¨μ μœΌλ‘œ μ΄λ£¨μ–΄μ§‘λ‹ˆλ‹€.

 

 

 


 

 

3) Physical Data Model (물리적 데이터 λͺ¨λΈ)

물리적 λ°μ΄ν„° λͺ¨λΈμ€ λ…Όλ¦¬μ  λ°μ΄ν„° λͺ¨λΈμ—μ„œ μ •μ˜λœ ν…Œμ΄λΈ”, κ΄€κ³„, μΈλ±μŠ€ λ“±μ„ μ‹€μ œ λ°μ΄ν„°λ² μ΄μŠ€ μ‹œμŠ€ν…œμ— κ΅¬ν˜„ν•˜κΈ° μœ„ν•œ λͺ¨λΈμž…λ‹ˆλ‹€. μ΄ λͺ¨λΈμ€ λ°μ΄ν„°μ˜ μ €μž₯ λ° μ ‘κ·Ό λ°©μ‹, μΈλ±μ‹±, νŒŒν‹°μ…”닝, μ„±λŠ₯ μ΅œμ ν™” λ“±κ³Ό κ°™μ€ λ¬Όλ¦¬μ  μ„ΈλΆ€ μ‚¬ν•­μ„ λ‹€λ£Ήλ‹ˆλ‹€. 

 

이 λͺ¨λΈμ€ λ…Όλ¦¬μ  λ°μ΄ν„° λͺ¨λΈμ—μ„œ μΆ”상적인 ν‘œν˜„을 μ‹€μ œλ‘œ κ΅¬ν˜„ν•˜λŠ” λ‹¨κ³„λ‘œ, λ°μ΄ν„°λ² μ΄μŠ€ μ‹œμŠ€ν…œμ˜ μ„±λŠ₯κ³Ό μ•ˆμ •μ„±μ„ λ³΄μž₯ν•˜κΈ° μœ„ν•΄ μ€‘μš”ν•œ μ—­ν• μ„ ν•©λ‹ˆλ‹€.

 

 

 


Data Model: An abstract representation of how data is structured and organized, serving as a blueprint for designing databases or information systems.

 

Conceptual Data Model: A high-level representation focused on capturing business concepts and relationships between data entities, without delving into technical details.

 

Logical Data Model: An intermediate-level representation translating the conceptual model into a format understandable by the technical team, defining the structure of the data without specifying physical implementation details.

 

Physical Data Model: A detailed representation specifying how the logical model will be implemented in a specific database management system, considering technical aspects such as storage structures and indexing.

 

 

'Computer Science > Database' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

6 Create(Insert), Update, Delete  (1) 2024.01.11
5 CRUD (Create, Read, Update and Delete) + Practice tables  (0) 2024.01.08
4 Database Languages - DDL, DML, SQL  (0) 2024.01.08
3 Relational Database (feat. key, constraints)  (1) 2023.12.23
1 Data, Database, DBMS  (0) 2023.12.22

λŒ“κΈ€