Search

데이터 λͺ¨λΈλ§μ˜ 이해

데이터 λͺ¨λΈλ§

β€’
β€’

데이터 λͺ¨λΈλ§

데이터λ₯Ό κ΅¬μ‘°ν™”ν•˜κ³  ν‘œν˜„ν•˜λŠ” κ³Όμ •
λͺ¨λΈ : κ΅¬μ²΄μ μ΄κ±°λ‚˜ λ³΅μž‘ν•œ 것을 λ‹¨μˆœν•˜κ²Œ ν‘œν˜„ν•˜λŠ” 것

데이터 λͺ¨λΈλ§μ΄λž€?

: μ–΄λ–€ μ†Œν”„νŠΈμ›¨μ–΄, 정보 μ‹œμŠ€ν…œμ— ν•„μš”ν•œ 데이터 베이슀의 μƒμ„Έν•œ ꡬ쑰와 ν˜•νƒœλ₯Ό μ„€κ³„ν•˜λŠ” κ³Όμ •μ—μ„œ μ•Œμ•„λ³΄κΈ° 쉽도둝 λ‹¨μˆœν•˜κ²Œ ν‘œν˜„ν•΄λ‚˜κ°€λŠ” 과정을 λ§ν•œλ‹€.

데이터 λͺ¨λΈλ§ νŠΉμ§•

νŠΉμ§•
μ„€λͺ…
좔상화
ν˜„μ‹€ μ„Έκ³„μ˜ λ³΅μž‘ν•œ 데이터λ₯Ό κ°„κ²°ν•˜κ³  μΆ”μƒμ μœΌλ‘œ ν‘œν˜„ν•¨
λ‹¨μˆœν™”
λ³΅μž‘ν•œ 데이터λ₯Ό κ°„μ†Œν™”ν•˜μ—¬ μ΄ν•΄ν•˜κΈ° μ‰½κ²Œ λ§Œλ“¦
λͺ…ν™•μ„±
데이터 λͺ¨λΈλ§μ„ 톡해 λ°μ΄ν„°λ² μ΄μŠ€μ˜ ꡬ쑰와 관계가 λͺ…ν™•ν•˜κ²Œ μ΄ν•΄λ˜λ„λ‘ 함

데이터 λͺ¨λΈλ§ 단계

단계
μ„€λͺ…
μ‚°μΆœλ¬Ό
μš”κ΅¬μ‚¬ν•­ 뢄석
μ‚¬μš©μž 및 μ‹œμŠ€ν…œ μš”κ΅¬μ‚¬ν•­μ„ μˆ˜μ§‘ν•˜κ³  λΆ„μ„ν•˜μ—¬ 데이터 λͺ¨λΈλ§μ˜ λͺ©ν‘œμ™€ λ²”μœ„λ₯Ό μ„€μ •ν•©λ‹ˆλ‹€.
μš”κ΅¬μ‚¬ν•­μ •μ˜μ„œ
κ°œλ…μ  λͺ¨λΈλ§
업무 ν”„λ‘œμ„ΈμŠ€μ™€ 데이터 κ°„μ˜ 관계λ₯Ό λͺ¨λΈλ§ν•˜κ³  κ°œλ…μ  데이터 λͺ¨λΈμ„ λ§Œλ“­λ‹ˆλ‹€. 주둜 개체-관계(ER) λ‹€μ΄μ–΄κ·Έλž¨μ„ μ‚¬μš©ν•©λ‹ˆλ‹€.
ERD
논리적 λͺ¨λΈλ§
κ°œλ…μ  λͺ¨λΈμ„ 기반으둜 μ‹€μ œ λ°μ΄ν„°λ² μ΄μŠ€ ꡬ쑰λ₯Ό μ„€κ³„ν•©λ‹ˆλ‹€. ν…Œμ΄λΈ”, μ—΄, 관계 λ“±μ˜ μš”μ†Œλ₯Ό μ •μ˜ν•˜κ³ , μ •κ·œν™”λ₯Ό μˆ˜ν–‰ν•˜μ—¬ 쀑볡을 μ΅œμ†Œν™”ν•˜κ³  일관성을 μœ μ§€ν•©λ‹ˆλ‹€.
λ¦΄λ ˆμ΄μ…˜ μŠ€ν‚€λ§ˆ
물리적 λͺ¨λΈλ§
논리적 λͺ¨λΈμ„ νŠΉμ • λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œ(DBMS)에 λ§žμΆ”μ–΄ λ³€ν™˜ν•©λ‹ˆλ‹€. ν…Œμ΄λΈ”μŠ€νŽ˜μ΄μŠ€, 인덱슀, νŒŒν‹°μ…˜ λ“± 물리적 μ €μž₯ ꡬ쑰λ₯Ό μ„€κ³„ν•˜μ—¬ μ„±λŠ₯을 μ΅œμ ν™”ν•©λ‹ˆλ‹€.
물리적 μŠ€ν‚€λ§ˆ
κ΅¬ν˜„
λͺ¨λΈλ§λœ λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•˜κ³  μš΄μ˜ν•©λ‹ˆλ‹€. λ°μ΄ν„°μ˜ μž…λ ₯, μˆ˜μ •, μ‚­μ œλ₯Ό κ΄€λ¦¬ν•˜κ³  λ°μ΄ν„°λ² μ΄μŠ€μ˜ μœ μ§€λ³΄μˆ˜λ₯Ό μˆ˜ν–‰ν•˜μ—¬ μ‹œμŠ€ν…œμ΄ μ›ν™œν•˜κ²Œ λ™μž‘ν•˜λ„λ‘ ν•©λ‹ˆλ‹€.
DB

데이터 λͺ¨λΈλ§ 관점

관점
μ„€λͺ…
데이터
μ‹œμŠ€ν…œμ΄ λ‹€λ£¨λŠ” μ‹€μ œ 데이터λ₯Ό μ€‘μ‹¬μœΌλ‘œ ν•©λ‹ˆλ‹€. ”업무가 μ–΄λ–€ 데이터와 관련이 μžˆλŠ”μ§€ λ˜λŠ” 데이터 κ°„μ˜ κ΄€κ³„λŠ” 무엇인지에 λŒ€ν•΄μ„œ λͺ¨λΈλ§ ν•˜λŠ” 방법” What, Data
ν”„λ‘œμ„ΈμŠ€
μ‹œμŠ€ν…œ λ‚΄μ—μ„œ 데이터가 μ²˜λ¦¬λ˜λŠ” 과정을 λ‚˜νƒ€λƒ…λ‹ˆλ‹€. ”업무가 μ‹€μ œλ‘œ ν•˜κ³  μžˆλŠ” 일이 무엇인지 λ˜λŠ” 무엇을 ν•΄μ•Ό ν•˜λŠ”μ§€λ₯Ό λͺ¨λΈλ§ ν•˜λŠ” 방법” How, Process
데이터와 ν”„λ‘œμ„ΈμŠ€
데이터와 ν”„λ‘œμ„ΈμŠ€λ₯Ό λͺ¨λ‘ κ³ λ €ν•˜μ—¬ μ‹œμŠ€ν…œμ˜ 데이터 ꡬ쑰와 처리 과정을 λͺ¨λΈλ§ν•©λ‹ˆλ‹€. ”업무가 μ²˜λ¦¬ν•˜λŠ” 일의 방법에 따라 λ°μ΄ν„°λŠ” μ–΄λ–»κ²Œ 영ν–₯을 λ°›κ³  μžˆλŠ”μ§€ λͺ¨λΈλ§ν•˜λŠ” 방법” Procees Data

데이터 λͺ¨λΈλ§ ν•΅μ‹¬μš”μ†Œ

핡심 μš”μ†Œ
μ„€λͺ…
Things(개체)
데이터 λͺ¨λΈλ§μ—μ„œ μ‹€μ œλ‘œ μ €μž₯λ˜λŠ” 사물, μ‚¬λžŒ, μž₯μ†Œ λ˜λŠ” 사건 λ“±μ˜ 개체λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
Attributes(속성)
각 개체λ₯Ό μ„€λͺ…ν•˜κ±°λ‚˜ κ΅¬μ„±ν•˜λŠ” νŠΉμ„±μ΄λ‚˜ λ°μ΄ν„°μ˜ 속성을 λ‚˜νƒ€λƒ…λ‹ˆλ‹€.
Relationship(관계)
각 개체 κ°„μ˜ 연결을 λ‚˜νƒ€λƒ…λ‹ˆλ‹€.

ERD (Entity-Relationship Diagram)

개체, 관계, 속성을 μš”μ†Œλ‘œ λ°μ΄ν„°λ² μ΄μŠ€ ꡬ쑰λ₯Ό ν‘œν˜„ν•œ κ·Έλ¦Ό

ERD μž‘μ„±μ ˆμ°¨

1.
μ—”ν„°ν‹° λ„μΆœ
2.
μ—”ν„°ν‹° 배치
3.
μ—”ν„°ν‹° κ°„ 관계 μ„€μ •
4.
관계 이름 μž‘μ„±
5.
관계 참여도 μž‘μ„±
6.
관계 ν•„μˆ˜ μ—¬λΆ€ μž‘μ„±

(ERD μ˜ˆμ‹œ κ·Έλ¦Ό1) - 고객 관리 μ‹œμŠ€ν…œ ERD

(ERD μ˜ˆμ‹œ κ·Έλ¦Ό1) - 고객 관리 μ‹œμŠ€ν…œ ERD

(ERD μ˜ˆμ‹œ κ·Έλ¦Ό2) - μˆ˜κ°•μ‹ μ²­ μ‹œμŠ€ν…œ ERD

(ERD μ˜ˆμ‹œ κ·Έλ¦Ό2) - μˆ˜κ°•μ‹ μ²­ μ‹œμŠ€ν…œ ERD

3μΈ΅ μŠ€ν‚€λ§ˆ (3-Level Schema)

μ‚¬μš©μž, DBA(μ„€κ³„μž), 개발자 각각의 κ΄€μ μ—μ„œμ˜ λ°μ΄ν„°λ² μ΄μŠ€μ— λŒ€ν•˜μ—¬ μ„€λͺ…ν•œ κ°œλ…
μŠ€ν‚€λ§ˆ
μ„€λͺ…
관점
μ™ΈλΆ€ μŠ€ν‚€λ§ˆ
μ΅œμ’… μ‚¬μš©μžλ‚˜ μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ μ ‘κ·Όν•˜λŠ” λ°μ΄ν„°μ˜ 논리적 ꡬ쑰λ₯Ό μ •μ˜ν•¨
μ‚¬μš©μž
κ°œλ…μ  μŠ€ν‚€λ§ˆ
전체적인 λ°μ΄ν„°λ² μ΄μŠ€μ˜ 논리적 ꡬ쑰λ₯Ό μ •μ˜ν•˜λ©°, λ°μ΄ν„°μ˜ μ „λ°˜μ μΈ ꡬ쑰와 관계λ₯Ό λ‚˜νƒ€λƒ„
DBA
λ‚΄λΆ€ μŠ€ν‚€λ§ˆ
λ°μ΄ν„°λ² μ΄μŠ€μ˜ 물리적 ꡬ쑰λ₯Ό μ •μ˜ν•˜λ©°, λ°μ΄ν„°μ˜ μ €μž₯ 방식, 색인 ꡬ쑰, μ €μž₯ μœ„μΉ˜ 등을 포함함
개발자

μŠ€ν‚€λ§ˆ ꡬ쑰

(μŠ€ν‚€λ§ˆ ꡬ쑰 κ·Έλ¦Ό)

μ—”ν„°ν‹° (Entity)

λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ κ΄€λ¦¬ν•˜λ €λŠ” μ‹€μ œ μ„Έκ³„μ˜ κ°œμ²΄λ‚˜ κ°œλ…
νšŒμ›, μƒν’ˆ, μ œμ‘°μ—…μ²΄ λ“±
Plain Text
볡사

μ—”ν„°ν‹°μ˜ νŠΉμ§•

νŠΉμ§•
μ„€λͺ…
μ‹λ³„μž
- μ—”ν„°ν‹°μ˜ 데이터λ₯Ό 고유(유일)ν•˜κ²Œ μ‹λ³„ν•˜λŠ” 속성이 μžˆμ–΄μ•Όν•œλ‹€. - ex) ID, 주민번호, μ‚¬μ›λ²ˆν˜Έ, κ³„μ’Œλ²ˆν˜Έ, μƒν’ˆμ½”λ“œ λ“±
μΈμŠ€ν„΄μŠ€ 집합
- 2개 μ΄μƒμ˜ μΈμŠ€ν„΄μŠ€κ°€ μžˆμ–΄μ•Όν•œλ‹€. - ex) νšŒμ› 정보, 고객 정보 λ“±μ˜ μ—”ν„°ν‹°λŠ” 2κ°œμ΄μƒ μ‘΄μž¬ν•΄μ•Ό μ—”ν„°ν‹°λ‘œμ¨ μœ μ˜λ―Έν•œ 의미λ₯Ό 가진닀.
속성
- μ—”ν„°ν‹°λŠ” λ°˜λ“œμ‹œ 속성을 κ°–λŠ”λ‹€. - ex) [νšŒμ›] - ID, PW, 이름, 이메일, [고객] - ID, 이름, μ£Όμ†Œ, μ „ν™”λ²ˆν˜Έ
관계
- μ—”ν„°ν‹° κ°„ μ΅œμ†Œν•œ 1개 μ΄μƒμ˜ 관계가 μžˆμ–΄μ•Όν•œλ‹€. - ex) νšŒμ›μ€ μƒν’ˆμ„ μ£Όλ¬Έν•œλ‹€. / 고객은 κ³„μ’Œλ₯Ό κ°œμ„€ν•œλ‹€.
업무
- μ—”ν„°ν‹°λŠ” μ—…λ¬΄μ μœΌλ‘œ κ΄€λ¦¬ν•˜λŠ” λŒ€μƒμ΄μ–΄μ•Ό ν•œλ‹€. - ex) 고객, κ³„μ’Œ, μ£Όλ¬Έ, κ°œμ„€ λ“±

μ—”ν„°ν‹° μ’…λ₯˜(μœ ν˜•)

β€’
λΆ„λ₯˜ κΈ°μ€€
β—¦
μœ ν˜•κ³Ό λ¬΄ν˜•
β–ͺ
μœ ν˜• μ—”ν„°ν‹°
β–ͺ
κ°œλ… μ—”ν„°ν‹°
β–ͺ
사건 μ—”ν„°ν‹°
β—¦
λ°œμƒ μ‹œμ 
β–ͺ
κΈ°λ³Έ μ—”ν„°ν‹°
β–ͺ
쀑심 μ—”ν„°ν‹°
β–ͺ
ν–‰μœ„ μ—”ν„°ν‹°

μœ ν˜•κ³Ό λ¬΄ν˜•μ— λ”°λ₯Έ μ—”ν„°ν‹°

μ—”ν„°ν‹°
μ„€λͺ…
μœ ν˜• μ—”ν„°ν‹°
- 물리적인 ν˜•νƒœλ‘œ μ‘΄μž¬ν•˜λ©° ꡬ체적인 μ‚¬λ¬Όμ΄λ‚˜ λŒ€μƒμ„ λ‚˜νƒ€λƒ…λ‹ˆλ‹€. - μ—…λ¬΄μ—μ„œ λ„μΆœλ˜κ³  μ§€μ†μ μœΌλ‘œ μ‚¬μš©λ©λ‹ˆλ‹€. - ex) μ‚¬λžŒ, μ œν’ˆ, μž₯μ†Œ λ“±
κ°œλ… μ—”ν„°ν‹°
- κ°œλ…μ΄λ‚˜ 아이디어와 같은 좔상적인 개체λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€. - 물리적인 ν˜•νƒœμ—†μ΄ - ex) 고객 λ“±κΈ‰, μ£Όλ¬Έ μƒνƒœ λ“±
사건 μ—”ν„°ν‹°
νŠΉμ •ν•œ μ‹œκ°„ λ˜λŠ” μž₯μ†Œμ—μ„œ λ°œμƒν•˜λŠ” μ‚¬κ±΄μ΄λ‚˜ ν–‰μœ„λ₯Ό λ‚˜νƒ€λƒ…λ‹ˆλ‹€. μ£Όλ¬Έ, μ˜ˆμ•½, 결제 등이 사건 엔터티에 ν•΄λ‹Ήν•  수 μžˆμŠ΅λ‹ˆλ‹€.

λ°œμƒ μ‹œμ μ— λ”°λ₯Έ μ—”ν„°ν‹°

μ—”ν„°ν‹°
μ„€λͺ…
κΈ°λ³Έ μ—”ν„°ν‹°
- μ‹œμŠ€ν…œμ˜ κΈ°λ³Έ 데이터가가 λ˜λŠ” ν‚€ μ—”ν„°ν‹°μž…λ‹ˆλ‹€. - λ‹€λ₯Έ μ—”ν„°ν‹°μ˜ μ’…μ†λ˜μ§€ μ•Šκ³  λ…λ¦½μ μœΌλ‘œ μƒμ„±λ˜λŠ” μ—”ν„°ν‹°μž…λ‹ˆλ‹€. ex) 고객, μƒν’ˆ, λΆ€μ„œ λ“±
쀑심 μ—”ν„°ν‹°
- κΈ°λ³Έ 엔터티와 ν–‰μœ„ μ—”ν„°ν‹° 쀑간에 μžˆλŠ” μ—”ν„°ν‹°μž…λ‹ˆλ‹€. - μ—¬λŸ¬ λ‹€λ₯Έ μ—”ν„°ν‹°λ“€ κ°„μ˜ 관계λ₯Ό μ‘°μ •ν•˜κ³  μ€‘μž¬ν•˜λŠ” 역할을 ν•©λ‹ˆλ‹€. ex) μ£Όλ¬Έ, μ·¨μ†Œ, 체결 λ“±
ν–‰μœ„ μ—”ν„°ν‹°
- μ‹œμŠ€ν…œμ—μ„œ λ°œμƒν•˜λŠ” νŠΉμ •ν•œ ν–‰μœ„λ‚˜ 사건을 λ‚˜νƒ€λ‚΄λŠ” μ—”ν„°ν‹°μž…λ‹ˆλ‹€. - 2개 μ΄μƒμ˜ μ—”ν„°ν‹°λ‘œ λΆ€ν„° λ°œμƒλ˜λ©°, μ‹œκ°„μ— 따라 λ³€ν™”ν•  수 μžˆμŠ΅λ‹ˆλ‹€. ex) μ£Όλ¬Έ 이λ ₯, 체결 이λ ₯ λ“±

속성 (Attribute)

μ—”ν„°ν‹°μ˜ νŠΉμ„±μ΄λ‚˜ 속성
νšŒμ› - νšŒμ›μ•„μ΄λ””, λΉ„λ°€λ²ˆν˜Έ, 이름, λ‚˜μ΄ λ“± μƒν’ˆ - μƒν’ˆλ²ˆν˜Έ, μƒν’ˆλͺ…, μž¬κ³ μˆ˜λŸ‰, 단가 λ“± μ œμ‘°μ—…μ²΄ - μ œμ‘°μ—…μ²΄λ²ˆν˜Έ, 업체λͺ…, μ „ν™”λ²ˆν˜Έ, λ‹΄λ‹Ήμž λ“±
Plain Text
볡사

μ†μ„±μ˜ μ’…λ₯˜

β€’
λΆ„λ₯˜ κΈ°μ€€
β—¦
λΆ„ν•΄ μ—¬λΆ€
β–ͺ
단일 속성
β–ͺ
볡합 속성
β–ͺ
닀쀑값 속성
β—¦
νŠΉμ„±
β–ͺ
κΈ°λ³Έ 속성
β–ͺ
섀계 속성
β–ͺ
νŒŒμƒ 속성

λΆ„ν•΄ 여뢀에 λ”°λ₯Έ 속성

속성
μ„€λͺ…
단일 속성
- 속성이 μ›μžκ°’μœΌλ‘œ 이루어져 있고, 더 이상 λΆ„ν•΄ν•  수 μ—†λŠ” μ†μ„±μž…λ‹ˆλ‹€. - ν•˜λ‚˜μ˜ 의미둜 κ΅¬μ„±λœ 속성 - ex) 주문번호, 고객이름, μ œν’ˆκ°€κ²© λ“±
볡합 속성
- μ—¬λŸ¬ 개의 속성이 합쳐져 ν•˜λ‚˜μ˜ 속성을 μ΄λ£¨λŠ” ν˜•νƒœμ˜ μ†μ„±μž…λ‹ˆλ‹€. - 뢄해될 수 μžˆλŠ” μ—¬λŸ¬ 개의 의미λ₯Ό κ°–λŠ” μ†μ„±μž…λ‹ˆλ‹€. - ex) μ£Όμ†Œ(λ„μ‹œ, λ„λ‘œλͺ…, 우편번호 λ“±), 이름(μ„±, 이름) λ“±
닀쀑값 속성
- ν•˜λ‚˜μ˜ μ—”ν„°ν‹°κ°€ μ—¬λŸ¬ 개의 값을 κ°€μ§ˆ 수 μžˆλŠ” 속성 - μ—¬λŸ¬ 개의 λ™μΌν•œ 속성 값을 κ°€μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€. - 닀쀑값 속성은 μ—”ν„°ν‹°λ‘œ 뢄해될 수 μžˆλ‹€. - ex) μ „ν™”λ²ˆν˜Έ, 이메일 μ£Όμ†Œ λ“±

νŠΉμ„±μ— λ”°λ₯Έ 속성

속성
μ„€λͺ…
κΈ°λ³Έ 속성
- μ—”ν„°ν‹°μ˜ 업무 ν”„λ‘œμ„ΈμŠ€μ—μ„œ λ„μΆœλ˜λŠ” μ§μ ‘μ μœΌλ‘œ 엔터티와 κ΄€λ ¨λœ μ†μ„±μž…λ‹ˆλ‹€. - ex) νšŒμ›ID, 이름, κ³„μ’Œλ²ˆν˜Έ λ“±
섀계 속성
- 섀계 κ³Όμ •(데이터 λͺ¨λΈλ§)μ—μ„œ μœ λ„λ˜κ±°λ‚˜ μΆ”κ°€λœ μ†μ„±μž…λ‹ˆλ‹€. - μ—”ν„°ν‹° κ°„μ˜ 관계λ₯Ό λͺ…ν™•νžˆν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ©λ‹ˆλ‹€. - ex) μƒν’ˆμ½”λ“œ, 지점 μ½”λ“œ, OOμ½”λ“œ, OO번호 λ“±
νŒŒμƒ 속성
- λ‹€λ₯Έ 속성에 μ˜ν•΄ κ³„μ‚°λ˜κ±°λ‚˜ μœ λ„λœ μ†μ„±μž…λ‹ˆλ‹€. - 이미 μ‘΄μž¬ν•˜λŠ” 속성에 κΈ°λ°˜ν•˜μ—¬ κ³„μ‚°λ˜λŠ” μ†μ„±μž…λ‹ˆλ‹€. - ex) 합계, 평균 λ“±

관계 (Relationship)

μ—”ν„°ν‹° κ°„μ˜ μƒν˜Έ μž‘μš©
μ£Όλ¬Έ : νšŒμ›-μƒν’ˆ μ—”ν„°ν‹°μ˜ κ΄€κ³„λ‘œ, "μ—¬λŸ¬ νšŒμ›μ΄ μ—¬λŸ¬ μƒν’ˆμ„ μ£Όλ¬Έν•  수 μžˆλ‹€."(N:M) 곡급 : μƒν’ˆ-μ œμ‘°μ—…μ²΄ μ—”ν„°ν‹°μ˜ κ΄€κ³„λ‘œ, "ν•˜λ‚˜μ˜ μ œμ‘°μ—…μ²΄κ°€ μ—¬λŸ¬ μƒν’ˆμ„ 곡급할 수 μžˆλ‹€."(1:N)
Plain Text
볡사
κ΄€κ³„μ˜ κΈ°μˆ˜μ„±μ΄λž€? κΈ°μˆ˜μ„±(Cardinality) - μ§‘ν•©μ˜ 크기λ₯Ό λ‚˜νƒ€λ‚΄λŠ” κ°œλ… κ΄€κ³„μ˜ κΈ°μˆ˜μ„± 관계에 μ°Έμ—¬ν•˜λŠ” μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€μ˜ 수λ₯Ό λ‚˜νƒ€λ‚΄λŠ” 것
관계
μ„€λͺ…
μΌλŒ€μΌ (One-to-One)
ν•œ μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€κ°€ λ‹€λ₯Έ μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€μ™€ ν•˜λ‚˜μ˜ κ΄€κ³„λ§Œμ„ 맺을 수 μžˆλŠ” κ²½μš°μž…λ‹ˆλ‹€.
μΌλŒ€λ‹€ (One-to-Many)
ν•œ μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€κ°€ λ‹€λ₯Έ μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€μ™€ μ—¬λŸ¬ 개의 관계λ₯Ό 맺을 수 μžˆλŠ” κ²½μš°μž…λ‹ˆλ‹€.
λ‹€λŒ€μΌ (Many-to-One)
μ—¬λŸ¬ 개의 μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€κ°€ ν•˜λ‚˜μ˜ μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€μ™€ 관계λ₯Ό 맺을 수 μžˆλŠ” κ²½μš°μž…λ‹ˆλ‹€.
λ‹€λŒ€λ‹€ (Many-to-Many)
μ—¬λŸ¬ 개의 μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€κ°€ λ‹€λ₯Έ μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€μ™€ μ—¬λŸ¬ 개의 관계λ₯Ό 맺을 수 μžˆλŠ” κ²½μš°μž…λ‹ˆλ‹€.

관계 차수(Relation Cardinality)

두 μ—”ν„°ν‹° κ°„μ˜ κ΄€κ³„μ—μ„œ μ°Έμ—¬ν•˜λŠ” μ—”ν„°ν‹°μ˜ 수

관계 차수의 μ’…λ₯˜

β€’
1:1 (μΌλŒ€μΌ 관계)
β€’
M:N (λ‹€λŒ€λ‹€ 관계)
β€’
1:N (μΌλŒ€λ‹€ 관계)
β€’
ν•„μˆ˜:선택

1:1 (μΌλŒ€μΌ 관계)

ν•˜λ‚˜μ˜ μ—”ν„°ν‹°λŠ” ν•˜λ‚˜μ˜ λ‹€λ₯Έ μ—”ν„°ν‹° 값을 κ°–λŠ”λ‹€.

M:N (λ‹€λŒ€λ‹€ 관계)

두 개의 μ—”ν„°ν‹°κ°€ μ„œλ‘œ μ—¬λŸ¬ 개의 관계λ₯Ό κ°–λŠ”λ‹€.

1:N (μΌλŒ€λ‹€ 관계)

ν•˜λ‚˜μ˜ μ—”ν„°ν‹°λŠ” λ‹€λ₯Έ μ—”ν„°ν‹°μ˜ 값을 μ—¬λŸ¬ 개 κ°–λŠ”λ‹€.

ν•„μˆ˜:선택

β€’
ν•„μˆ˜μ  관계
ν•˜λ‚˜μ˜ μ—”ν„°ν‹°λŠ” λ°˜λ“œμ‹œ κ΄€κ³„λœ μ—”ν„°ν‹°μ˜ 값을 κ°–μ–΄μ•Όν•œλ‹€.
β€’
선택적 관계
ν•˜λ‚˜μ˜ 엔터티에 κ΄€κ³„λœ λ‹€λ₯Έ μ—”ν„°ν‹°μ˜ 값이 μžˆμ„ μˆ˜λ„ 있고 없을 μˆ˜λ„ μžˆλ‹€.

μ‹λ³„μž 관계 vs λΉ„μ‹λ³„μž 관계

식별 관계 : μ‹€μ„ μœΌλ‘œ λ‚˜νƒ€λ‚Έλ‹€.
비식별 관계 : μ μ„ μœΌλ‘œ λ‚˜νƒ€λ‚Έλ‹€.

μ‹λ³„μž 관계

λΆ€λͺ¨ μ—”ν„°ν‹°μ˜ κΈ°λ³Έ ν‚€κ°€ μžμ‹ μ—”ν„°ν‹°μ˜ κ³ μœ ν‚€(μ£Ό μ‹λ³„μž)둜 μ‚¬μš©λ˜λŠ” 관계

λΉ„μ‹λ³„μž 관계

λΆ€λͺ¨ μ—”ν„°ν‹°μ˜ κΈ°λ³Έ ν‚€κ°€ μžμ‹ μ—”ν„°ν‹°μ˜ κ³ μœ ν‚€(μ£Ό μ‹λ³„μž)둜 μ‚¬μš©λ˜μ§€ μ•ŠλŠ” 관계

μ‹λ³„μž (Entity Identifier)

μ—”ν„°ν‹°λ₯Ό κ³ μœ ν•˜κ²Œ μ‹λ³„ν•˜λŠ” 속성 λ˜λŠ” 속성 집합

μ£Ό μ‹λ³„μž

νŠΉμ„±
μ„€λͺ…
μ΅œμ†Œμ„±
μ£Όμ‹λ³„μžλŠ” κ°€λŠ₯ν•œ ν•œ μ΅œμ†Œν•œμ˜ 속성(μ—΄)으둜 κ΅¬μ„±λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€. 즉, 쀑볡을 ν—ˆμš©ν•˜μ§€ μ•Šμ•„μ•Ό ν•©λ‹ˆλ‹€.
λŒ€ν‘œμ„±
μ£Όμ‹λ³„μžλŠ” ν•΄λ‹Ή μ—”ν„°ν‹°λ₯Ό λŒ€ν‘œν•˜λŠ” 속성이어야 ν•©λ‹ˆλ‹€. μ—”ν„°ν‹°μ˜ 본질적인 νŠΉμ„±μ„ 잘 λ°˜μ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€.
μœ μΌμ„±
μ£Όμ‹λ³„μžλŠ” 각 λ ˆμ½”λ“œλ‚˜ νŠœν”Œμ— λŒ€ν•΄ μœ μΌν•΄μ•Ό ν•©λ‹ˆλ‹€. 즉, λ™μΌν•œ 값이 두 번 이상 λ‚˜νƒ€λ‚˜μ„œλŠ” μ•ˆ λ©λ‹ˆλ‹€.
λΆˆλ³€μ„±
μ£Όμ‹λ³„μžλŠ” λ³€κ²½λ˜μ§€ μ•Šμ•„μ•Ό ν•©λ‹ˆλ‹€. μ—”ν„°ν‹°μ˜ 핡심 μ†μ„±μœΌλ‘œμ„œ λ³€ν•˜μ§€ μ•ŠλŠ” 값을 κ°€μ Έμ•Ό ν•©λ‹ˆλ‹€.
μ‘΄μž¬μ„±
μ£Όμ‹λ³„μžλŠ” λͺ¨λ“  λ ˆμ½”λ“œμ— λŒ€ν•΄ λ°˜λ“œμ‹œ μ‘΄μž¬ν•΄μ•Ό ν•©λ‹ˆλ‹€. λˆ„λ½λ˜μ–΄μ„œλŠ” μ•ˆ λ©λ‹ˆλ‹€.

μ‹λ³„μžμ˜ μ’…λ₯˜

μ‹λ³„μžλŠ” λŒ€ν‘œμ„±, 생성 μ—¬λΆ€, μ†μ„±μ˜ 수, λŒ€μ²΄ μ—¬λΆ€λ₯Ό κΈ°μ€€μœΌλ‘œ λΆ„λ₯˜ν•  수 μžˆλ‹€.

λΆ„λ₯˜κΈ°μ€€

β€’
λŒ€ν‘œμ„±
β€’
생성 μ—¬λΆ€
β€’
μ†μ„±μ˜ 수
β€’
λŒ€μ²΄ μ—¬λΆ€
β€’
λŒ€ν‘œμ„±μ— λ”°λ₯Έ μ‹λ³„μž μ’…λ₯˜
μ’…λ₯˜
μ„€λͺ…
μ£Ό μ‹λ³„μž
- μœ μΌμ„±κ³Ό μ΅œμ†Œμ„±μ„ λ§Œμ‘±ν•˜λŠ” μ‹λ³„μž (κΈ°λ³Έν‚€) - λ‹€λ₯Έ μ—”ν„°ν‹°κ°€ μ°Έμ‘°ν•˜λŠ” μ†μ„±μœΌλ‘œ μ‚¬μš©
보쑰 μ‹λ³„μž
μœ μΌμ„±κ³Ό μ΅œμ†Œμ„±μ€ λ§Œμ‘±ν•˜μ§€λ§Œ λŒ€ν‘œμ„±μ΄ μ—†λŠ” μ‹λ³„μž
β€’
생성 여뢀에 λ”°λ₯Έ μ‹λ³„μž μ’…λ₯˜
μ’…λ₯˜
μ„€λͺ…
λ‚΄λΆ€ μ‹λ³„μž
- μ—”ν„°ν‹° λ‚΄λΆ€μ—μ„œ μƒμ„±λ˜λŠ” μ‹λ³„μž - μƒν’ˆλ²ˆν˜Έ, μ‚¬μ›λ²ˆν˜Έ, 일련번호, λΆ€μ„œμ½”λ“œ λ“±
μ™ΈλΆ€ μ‹λ³„μž
λ‹€λ₯Έ μ—”ν„°ν‹°μ™€μ˜ 관계λ₯Ό 톡해 λ§Œλ“€μ–΄μ§€λŠ” μ‹λ³„μž
β€’
μ†μ„±μ˜ μˆ˜μ— λ”°λ₯Έ μ‹λ³„μž μ’…λ₯˜
μ’…λ₯˜
μ„€λͺ…
단일 μ‹λ³„μž
ν•˜λ‚˜μ˜ μ†μ„±μœΌλ‘œ κ΅¬μ„±λ˜λŠ” μ‹λ³„μž
볡합 μ‹λ³„μž
2개 μ΄μƒμ˜ μ†μ„±μœΌλ‘œ κ΅¬μ„±λ˜λŠ” μ‹λ³„μž
β€’
λŒ€μ²΄ 여뢀에 λ”°λ₯Έ μ‹λ³„μž μ’…λ₯˜
μ’…λ₯˜
μ„€λͺ…
본질 μ‹λ³„μž
업무 ν”„λ‘œμ„ΈμŠ€μ—μ„œ λ§Œλ“€μ–΄μ§„ μ‹λ³„μž
인쑰 μ‹λ³„μž
- κΈ°λŠ₯ κ΅¬ν˜„μ„ μœ„ν•΄, μΈμœ„μ μœΌλ‘œ λ§Œλ“€μ–΄μ§„ μ‹λ³„μž - μˆœμ„œλ²ˆν˜Έ(μ‹œν€€μŠ€), AUTO INCREMENT

μ‹λ³„μž vs ν‚€

β€’
μ‹λ³„μž : μ—”ν„°ν‹°λ₯Ό μ‹λ³„ν•˜λŠ” κ³ μœ ν•œ 속성을 κ°€λ¦¬ν‚€λŠ” κ°œλ…
β€’
ν‚€ : μ‹€μ œ λ°μ΄ν„°λ² μ΄μŠ€μ˜ 데이터λ₯Ό μ‹λ³„ν•˜λŠ” μ œμ•½μ‘°κ±΄

ν‚€ (Key)

λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ λ ˆμ½”λ“œλ₯Ό κ³ μœ ν•˜κ²Œ μ‹λ³„ν•˜λŠ” 데 μ‚¬μš©λ˜λŠ” μ—΄ λ˜λŠ” μ—΄μ˜ 집합
μ’…λ₯˜
μ„€λͺ…
κΈ°λ³Έν‚€
νŠΉμ • λ ˆμ½”λ“œλ₯Ό μ‹λ³„ν•˜λŠ” 데 μ‚¬μš©λ˜λŠ” μ£Όμš”ν•œ ν‚€λ‘œ, μ€‘λ³΅λ˜μ§€ μ•Šκ³  NULL 값을 κ°€μ§ˆ 수 μ—†μŠ΅λ‹ˆλ‹€.
후보킀
κΈ°λ³Έν‚€κ°€ 될 수 μžˆλŠ” ν‚€λ‘œ, μ€‘λ³΅λ˜μ§€ μ•Šκ³  NULL 값을 κ°€μ§ˆ 수 μ—†μŠ΅λ‹ˆλ‹€.
μŠˆνΌν‚€
λ¦΄λ ˆμ΄μ…˜ λ‚΄μ˜ μ†μ„±λ“€μ˜ μ§‘ν•©μœΌλ‘œ, νŠΉμ • λ ˆμ½”λ“œλ₯Ό μœ μΌν•˜κ²Œ μ‹λ³„ν•˜κΈ° μœ„ν•œ ν‚€μ˜ μ‘°ν•©μž…λ‹ˆλ‹€.
λŒ€μ²΄ν‚€
후보킀와 λΉ„μŠ·ν•˜μ§€λ§Œ, μ‹€μ œλ‘œ κΈ°λ³Έν‚€κ°€ λ˜μ§€λŠ” μ•ŠλŠ” ν‚€μž…λ‹ˆλ‹€.
μ™Έλž˜ν‚€
λ‹€λ₯Έ ν…Œμ΄λΈ”μ˜ κΈ°λ³Έν‚€λ₯Ό μ°Έμ‘°ν•˜λŠ” ν‚€λ‘œ, λ°μ΄ν„°μ˜ 무결성과 μ°Έμ‘° 무결성을 μœ μ§€ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ©λ‹ˆλ‹€.

무결성 (Integrity)

λ°μ΄ν„°μ˜ μ •ν™•μ„±, 일관성 및 μœ νš¨μ„±μ„ 보μž₯ν•˜κΈ° μœ„ν•œ κ·œμΉ™ λ˜λŠ” μ œμ•½ 쑰건

무결성 μ’…λ₯˜

μ’…λ₯˜
μ„€λͺ…
개체 무결성(Entity Integrity)
κΈ°λ³Έν‚€λŠ” NULL이 μ•„λ‹ˆλ©°, λͺ¨λ“  λ ˆμ½”λ“œμ— λŒ€ν•΄ κ³ μœ ν•΄μ•Ό ν•©λ‹ˆλ‹€.
μ°Έμ‘° 무결성(Referential Integrity)
μ™Έλž˜ν‚€λŠ” μ°Έμ‘°ν•˜λŠ” ν…Œμ΄λΈ”μ˜ κΈ°λ³Έν‚€ 값을 κ°€μ§€κ±°λ‚˜ NULL이어야 ν•©λ‹ˆλ‹€.
도메인 무결성(Domain Integrity)
각 속성은 ν—ˆμš©λœ 도메인 λ‚΄μ—μ„œλ§Œ 값을 κ°€μ Έμ•Ό ν•©λ‹ˆλ‹€.