DataBaseπŸ’Ύ

μ—”ν„°ν‹°μ˜ κ°œλ… 및 νŠΉμ§•

hae02y 2022. 8. 24. 14:14
λ°˜μ‘ν˜•

1. μ—”ν„°ν‹°μ˜ κ°œλ…

 μ •μ˜

 – 업무에 ν•„μš”ν•˜κ³  μœ μš©ν•œ 정보λ₯Ό μ €μž₯ν•˜κ³  κ΄€λ¦¬ν•˜κΈ° μœ„ν•œ 집합적인 것(Thing)

 – 업무 ν™œλ™μƒ 지속적인 관심을 가지고 μžˆμ–΄μ•Ό ν•˜λŠ” λŒ€μƒμœΌλ‘œμ„œ κ·Έ λŒ€μƒλ“€ 간에 λ™μ§ˆμ„±μ„ μ§€λ‹Œ μΈμŠ€ν„΄μŠ€λ“€μ΄λ‚˜ 그듀이 ν–‰ν•˜λŠ” ν–‰μœ„μ˜ 집합

1) μ—”ν„°ν‹°λŠ” μ‚¬λžŒ, μž₯μ†Œ, 물건, 사건, κ°œλ… λ“±μ˜ λͺ…사에 ν•΄λ‹Ήν•œλ‹€.

2) μ—”ν„°ν‹°λŠ” 업무상 관리가 ν•„μš”ν•œ 관심사에 ν•΄λ‹Ήν•œλ‹€.

3) μ—”ν„°ν‹°λŠ” μ €μž₯이 되기 μœ„ν•œ μ–΄λ–€ 것(Thing)이닀.

2. 엔터티와 μΈμŠ€ν„΄μŠ€μ— λŒ€ν•œ λ‚΄μš©κ³Ό ν‘œκΈ°λ²•

μœ„μ˜ μ˜ˆμ—μ„œ 

1) μ—”ν‹°ν‹° : κ³Όλͺ©, 강사, 사건

2) 각 μ—”ν„°ν‹°μ˜ μΈμŠ€ν„΄μŠ€ 

 – κ³Όλͺ© μ—”ν„°ν‹°μ˜ μΈμŠ€ν„΄μŠ€ : μˆ˜ν•™, μ˜μ–΄

 – 강사 μ—”ν„°ν‹°μ˜ μΈμŠ€ν„΄μŠ€ : μ΄μΆ˜μ‹, μ‘°μ‹œν˜•

이λ₯Ό IE ν‘œκΈ°λ²•, Barker ν‘œκΈ°λ²•μœΌλ‘œ ν‘œν˜„ ν•˜λ©΄ λ‹€μŒκ³Ό κ°™λ‹€.

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

1) λ°˜λ“œμ‹œ ν•΄λ‹Ή μ—…λ¬΄μ—μ„œ ν•„μš”ν•˜κ³  κ΄€λ¦¬ν•˜κ³ μž ν•˜λŠ” 정보이어야 ν•œλ‹€.(ex, ν™˜μž, 토읡 μ‘μ‹œ 횟수)

2) μœ μΌν•œ μ‹λ³„μžμ— μ˜ν•΄ 식별 κ°€λŠ₯ν•΄μ•Ό 함.

3) μ˜μ†μ μœΌλ‘œ μ‘΄μž¬ν•˜λŠ” μΈμŠ€ν„΄μŠ€μ˜ 집합이어야 ν•œλ‹€. (‘ν•œ 개’ κ°€ μ•„λ‹ˆλΌ ‘두 개 이상’)

4) 업무 ν”„λ‘œμ„ΈμŠ€μ— μ˜ν•΄ 이용 λ˜μ–΄μ•Ό ν•œλ‹€.

5) λ°˜λ“œμ‹œ 속성이 μžˆμ–΄μ•Ό 함.

6) λ‹€λ₯Έ 엔터티와 μ΅œμ†Œ ν•œ 개 μ΄μƒμ˜ 관계가 μžˆμ–΄μ•Ό 함.

1) μ—…λ¬΄μ—μ„œ ν•„μš”ν•˜κ³  κ΄€λ¦¬ν•˜κ³ μž ν•˜λŠ” 정보

ex) ν™˜μžλΌλŠ” μ—”ν„°ν‹°

 – λ³‘원 => μ˜λ£Œ μ‹œμŠ€ν…œμ„ κ°œλ°œμ‹œ λ°˜λ“œμ‹œ ν•„μš”ν•œ μ—”ν„°ν‹°

 – νšŒμ‚¬ => νšŒμ‚¬μ˜ μ •λ³΄λ‘œ ν™œμš©ν•  ν•„μš”κ°€ μ—†μŒ.

2) 식별 κ°€λŠ₯

 – μ‹λ³„μž(Unique Identifier)에 μ˜ν•΄ 식별 κ°€λŠ₯ν•΄μ•Ό ν•œλ‹€.

 – 유일 μ‹λ³„μž : ν•΄λ‹Ή μ—”ν„°ν‹° μΈμŠ€ν„΄μŠ€λ§Œμ˜ κ³ μœ ν•œ 이름

 – 두 개 μ΄μƒμ˜ μ—”ν„°ν‹°λ₯Ό λŒ€λ³€ν•˜λ©΄ 잘λͺ»λœ 섀계이닀.

ex) ν™˜μž μ—”ν„°ν‹°

 – μ‹λ³„μž : 이름 => 동λͺ…이인이 λ°œμƒν•  수 μžˆμœΌλ―€λ‘œ 유일 μ‹λ³„μžκ°€ μ•„λ‹ˆλ‹€.

 – μ‹λ³„μž : μ€‘λ³΅λ˜μ§€ μ•ŠλŠ” 고유 μ‚¬λ²ˆ => μ˜¬λ°”λ₯Έ μ‹λ³„μž.

3) μΈμŠ€ν„΄μŠ€ 집합

 – “두 개 이상”

 – ν•˜λ‚˜μ˜ μ—”ν„°νŒ‰λŠ” μ—¬λŸ¬ 개의 μΈμŠ€ν„΄μŠ€λ₯Ό 포함 ν•œλ‹€.

4) μ—…λ¬΄ν”„λ‘œμ„ΈμŠ€μ— μ˜ν•΄ 이용

 – λ°˜λ“œμ‹œ ν•„μš”ν•œ μ—”ν„°ν‹°λ‘œ μ„ μ • ν•˜μ˜€λŠ”λ° μ—…λ¬΄ν”„λ‘œμ„ΈμŠ€μ— μ˜ν•΄ μ΄μš©λ˜μ§€ μ•ŠλŠ”λ‹€λ©΄ 잘λͺ» μ„ μ •λœ μΌ€μ΄μŠ€

5) 속성(Attribute)을 포함

 – 속성을 ν¬ν•¨ν•˜μ§€ μ•Šκ³  μ—”ν„°ν‹°μ˜ μ΄λ¦„λ§Œ 가지고 μžˆλŠ” 경우 관계가 μƒλž΅λ˜μ–΄ μžˆκ±°λ‚˜ 업무 뢄석이 λ―Έμ§„ν•˜μ—¬ 속성정보가 λˆ„λ½λœ 경우

 – μ£Όμ‹λ³„μžλ§Œ μ‘΄μž¬ν•˜κ³  일반 속성은 μ „ν˜€ μ—†λŠ” κ²½μš°λ„ μ˜¬λ°”λ₯΄μ§€ μ•Šμ€ μΌ€μ΄μŠ€.

   (But, μ˜ˆμ™Έμ μœΌλ‘œ 관계엔터티(Associative Entity)의 경우 μ£Όμ‹λ³„μž μ†μ„±λ§Œ κ°–κ³  μžˆμ–΄λ„ μ—”ν„°ν‹°λ‘œ 인정)

ν™˜μž

 ν™˜μž 번호
 

=> μœ„μ™€ 같이 속성이 μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” 경우 μ—”ν„°ν‹°κ°€ μ•„λ‹ˆλ‹€. (관계엔터티 μ˜ˆμ™Έ)

6) κ΄€κ³„μ˜ 쑴재

 – μ—”ν„°ν‹°λŠ” λ‹€λ₯Έ 엔터티와 μ΅œμ†Œ ν•œ 개 μ΄μƒμ˜ 관계가 μ‘΄μž¬ν•΄μ•Ό ν•œλ‹€.

 – μ—”ν„°ν‹°κ°€ λ„μΆœλ˜μ—ˆλ‹€λŠ” 것은 해당업무내 연관성을 κ°–κ³  λ‹€λ₯Έ 엔터티와 관계λ₯Ό λ§Ίκ³  μžˆμŒμ„ λ‚˜νƒ€λƒ„

단, 톡계성 μ—”ν„°ν‹° λ„μΆœ, μ½”λ“œμ„± μ—”ν„°ν‹° λ„μΆœ, μ‹œμŠ€ν…œ μ²˜λ¦¬μ‹œ λ‚΄λΆ€ ν•„μš”μ— μ˜ν•œ μ—”ν„°ν‹° λ„μΆœκ³Ό 같은 경우 관계 ν‘œν˜„ μƒλž΅ ν•œλ‹€.

6.1 톡계

 – 업무진행 μ—”ν„°ν‹°λ‘œλΆ€ν„° ν†΅κ³„μ—…λ¬΄λ§Œ(Read Only)을 μœ„ν•΄ λ³„λ„λ‘œ μ—”ν„°ν‹°λ₯Ό λ‹€μ‹œ μ •μ˜ν•˜κ²Œ 됨.

6.2 μ½”λ“œ

 – λ„ˆλ¬΄ λ§Žμ€ 엔터티와 μ—”ν„°ν‹°κ°„μ˜ 관계 μ„€μ •μœΌλ‘œ 인해 데이터 λͺ¨λΈμ˜ μ½κΈ°νš¨μœ¨μ„±(Readability)이 μ €ν•˜λ˜μ–΄ λͺ¨λΈλ§ μž‘μ—… 진행이 μ–΄λ €μšΈ 수 있게 될 수 μžˆλ‹€.

 – λ˜ν•œ 물리적으둜 ν…Œμ΄λΈ”κ³Ό ν”„λ‘œκ·Έλž¨ κ΅¬ν˜„ 이후에도 외뢀킀에 μ˜ν•œ 참쑰무결성을 μ²΄ν¬ν•˜κΈ° μœ„ν•œ κ·œμΉ™μ„ λ°μ΄ν„°λ² μ΄μŠ€ κΈ°λŠ₯에 맑기지 μ•ŠλŠ” κ²½μš°κ°€ λŒ€λΆ€λΆ„, λ…Όλ¦¬μ μœΌλ‘œλ‚˜ 물리적으둜 관계섀정할 ν•„μš” μ—†λ‹€.

6.3 μ‹œμŠ€ν…œ μ²˜λ¦¬μ‹œ λ‚΄λΆ€ ν•„μš”μ— μ˜ν•œ μ—”ν„°ν‹°

 – ex) νŠΈλžœμž­μ…˜ 둜그 ν…Œμ΄λΈ” λ“±

 – μ‹œμŠ€ν…œ 내뢀적인 ν•„μš”μ— μ˜ν•΄ μƒμ„±λœ μ—”ν„°ν‹°μ΄λ―€λ‘œ 관계 μƒλž΅

4. μ—”ν„°ν‹°μ˜ λΆ„λ₯˜

 μœ λ¬΄ν˜•μ— λ”°λ₯Έ λΆ„λ₯˜

1) μœ ν˜•μ—”ν„°ν‹°(Tangible Entity)

 – 물리적인 ν˜•νƒœκ°€ μžˆλ‹€.

 – μ•ˆμ •μ μ΄λ©° μ§€μ†μ μœΌλ‘œ ν™œμš©λœλ‹€.

 – μ—…λ¬΄λ‘œλΆ€ν„° μ—”ν„°ν‹°λ₯Ό κ΅¬λΆ„ν•˜κΈ° κ°€μž₯ 용이

 – ex) 사원, λ¬Όν’ˆ, 강사 λ“±

2) κ°œλ…μ—”ν„°ν‹°(Conceptual Entity)

 – 물리적인 ν˜•νƒœκ°€ μ—†μŒ

 – 관리해야 ν•  κ°œλ…μ  μ •λ³΄λ‘œ ꡬ뢄됨

 – ex) 쑰직, λ³΄ν—˜μƒν’ˆ λ“±

3) 사건 μ—”ν„°ν‹°(Event Entity)

 – 업무 μˆ˜ν–‰ν•¨μ— 따라 λ°œμƒλ˜λŠ” μ—”ν„°ν‹°

 – λ°œμƒλŸ‰μ΄ λ§Žμ•„ 각쒅 ν†΅κ³„μžλ£Œμ— μ΄μš©λ˜κΈ°λ„ 함

 – ex) μ£Όλ¬Έ, 청ꡬ, λ―Έλ‚© λ“±

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

1) κΈ°λ³Έ/ν‚€ μ—”ν„°ν‹°(Fundamental Entity, Key Entity)

 – κ·Έ 업무에 μ›λž˜ μ‘΄μž¬ν•˜λŠ” 정보.

 – λ‹€λ₯Έ 엔터티와 관계에 μ˜ν•΄ μƒμ„±λ˜μ§€ μ•Šκ³  λ…λ¦½μ μœΌλ‘œ 생성 κ°€λŠ₯, μžμ‹ μ€ 타 μ—”ν„°ν‹°μ˜ λΆ€λͺ¨μ—­ν• μ„ ν•œλ‹€.

 – λ‹€λ₯Έ μ—”ν„°ν‹°λ‘œλΆ€ν„° μ£Όμ‹λ³„μžλ₯Ό 상속받지 μ•Šκ³  μžμ‹ μ˜ κ³ μœ ν•œ μ£Όμ‹λ³„μžλ₯Ό κ°–κ²Œ λœλ‹€.

 – ex) 사원, λΆ€μ„œ, 고객, μƒν’ˆ, 자재 λ“±

2) μ€‘심 μ—”ν„°ν‹°(Main Entity)

 – κΈ°λ³Έ μ—”ν„°ν‹°λ‘œλΆ€ν„° λ°œμƒλ˜κ³  업무에 μžˆμ–΄ 쀑심적인 역할을 ν•œλ‹€.

 – λ°μ΄ν„°μ˜ 양이 많이 λ°œμƒ 되고, λ‹€λ₯Έ μ—”ν„°ν‹°μ™€μ˜ 관계λ₯Ό 톡해 λ§Žμ€ ν–‰μœ„ μ—”ν„°ν‹°λ₯Ό μƒμ„±ν•œλ‹€.

 – ex) μ œμ•½, 사고, μ˜ˆκΈˆμ›μž₯, 청ꡬ, μ£Όλ¬Έ, 맀좜 λ“±

3) ν–‰μœ„ μ—”ν„°ν‹°(Active Entity)

 – 두 개 μ΄μƒμ˜ λΆ€λͺ¨μ—”ν„°ν‹°λ‘œλΆ€ν„° λ°œμƒλ˜κ³ , 자주 λ‚΄μš©μ΄ λ°”λ€Œκ±°λ‚˜ λ°μ΄ν„°λŸ‰μ΄ μ¦κ°€λœλ‹€.

 – λΆ„μ„μ΄ˆκΈ° λ‹¨κ³„μ—μ„œλŠ” 잘 λ‚˜νƒ€λ‚˜μ§€ μ•ŠμœΌλ©° 상세 μ„€κ³„λ‹¨κ³„λ‚˜ ν”„λ‘œμ„ΈμŠ€μ™€ 상관λͺ¨λΈλ§μ„ μ§„ν–‰ν•˜λ©΄μ„œ λ„μΆœ 될 수 μžˆλ‹€.

 – ex) μ£Όλ¬Έλͺ©λ‘, 사원 변경이λ ₯ λ“±

 μ—”ν„°ν‹° λΆ„λ₯˜ λ°©λ²•μ˜ 예

1) μœ λ¬΄ν˜•μ— 따라

 – μœ ν˜• (사원, λ¬Όν’ˆ)

 – 사건 (μ£Όλ¬Έ, 창ꡬ)

 – κ°œλ… (쑰직, μž₯μ†Œ)

2) λ°œμƒμ‹œμ μ— 따라

 – 쀑심 (μ ‘μˆ˜, 계약)

 – κΈ°λ³Έ/ν‚€ (사원, λΆ€μ„œ)

 – ν–‰μœ„ (μ£Όλ¬Έλ‚΄μ—­, 계약진행)

3) 기타

 – 슀슀둜 μƒμ„±λ μˆ˜ μžˆλŠ”μ§€μ— 따라 (독립엔터티, μ˜μ‘΄μ—”ν„°ν‹°)

5. μ—”ν„°ν‹°μ˜ λͺ…λͺ…

1) ν˜„μ—…μ—…λ¬΄μ—μ„œ μ‚¬μš©ν•˜λŠ” μš©μ–΄ μ‚¬μš©

2) κ°€λŠ₯ν•˜λ©΄ μ•½μ–΄λ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ”λ‹€.

3) λ‹¨μˆ˜λͺ…사λ₯Ό μ‚¬μš©ν•œλ‹€.

4) λͺ¨λ“  μ—”ν„°ν‹°μ—μ„œ μœ μΌν•˜κ²Œ 이름이 λΆ€μ—¬ λ˜μ–΄μ•Ό ν•œλ‹€.

5) μ—”ν„°ν‹° μƒμ„±μ˜λ―ΈλŒ€λ‘œ 이름을 λΆ€μ—¬ν•œλ‹€.

λ°˜μ‘ν˜•