Entity-Relationship Model

ERM(Entity-Relationship Model)

  • 데이터 λͺ¨λΈλ§ 방법이닀.

  • Entity와 Entity μ‚¬μ΄μ˜ Relationship을 μ‹œκ°μ μœΌλ‘œ ν‘œν˜„ν•˜λŠ” 방식이닀.

  • ER λͺ¨λΈμ€ Entity, Relationship, Attribute둜 κ΅¬μ„±λœλ‹€.

    • Entity : μœ μΌν•˜κ²Œ 식별 κ°€λŠ₯ν•œ 무언가

    • Relationship : 두 Entity κ°„μ˜ μ—°κ²°

    • Attribute : Entity에 λŒ€ν•œ 속성(정보)

  • OOP, DDD의 Entity와 ERM의 EntityλŠ” μ˜λ―Έκ°€ λ‹€λ₯΄λ‹€.

    • ERM의 EntityλŠ” ν–‰μœ„κ°€ μ—†λ‹€. λ°μ΄ν„°μ΄λ‹ˆ λ‹Ήμ—°ν•˜λ‹€.

ERD(Entity-Relationship Diagram)

  • ERM을 μ‹œκ°μ μœΌλ‘œ ν‘œν˜„ν•œ 그림이닀.

  • μ‚¬κ°ν˜•, λ§ˆλ¦„λͺ¨, 원, μ„  λ“±μ˜ 기호둜 ν‘œν˜„ν•œλ‹€.

  • ν‘œν˜„ λŒ€μƒμ€ Entity(μ‚¬κ°ν˜•), Relationship(λ§ˆλ¦„λͺ¨), Attribute(원), κ΄€κ³„μœ ν˜•(μ‹€μ„ , 점선) 등이닀.

  • Entity와 Attribute만 그리지 말고 RelationshipκΉŒμ§€ ν‘œν˜„ν•˜λŠ”κ²Œ μ’‹λ‹€. (λ§ˆλ¦„λͺ¨)

  • ν‘œν˜„μ— 얽맀이지 말고 말이 λ˜λ„λ‘ νŽΈν•˜κ²Œ κ·Έλ €λ³΄λŠ” 게 정말 μ€‘μš”ν•˜λ‹€.

  • λ‹€λ§Œ, ERD에 λ„ˆλ¬΄ λŒλ €κ°€μ§€ μ•Šκ³  객체지ν–₯적으둜 μ„€κ³„ν•˜λŠ” 것을 μ§€ν–₯ν•΄μ•Ό ν•œλ‹€.

λ°μ΄ν„°λ² μ΄μŠ€ μ •κ·œν™”

  • μ •κ·œν™”λŠ” 데이터 λͺ¨λΈλ§μ—μ„œ 쀑볡 데이터λ₯Ό μ œκ±°ν•˜κ³  λ°μ΄ν„°μ˜ 일관성과 무결성을 μœ μ§€ν•˜κΈ° μœ„ν•œ 것이닀.

  • 1μ°¨μ—μ„œ 5μ°¨κΉŒμ§€ μžˆλ‹€.

    • 1μ°¨ μ •κ·œν™” : 각 μ»¬λŸΌμ— 쀑볡데이터가 없도둝 ν•œλ‹€. (각 컬럼이 μ›μžκ°’μ„ 갖도둝 ν•œλ‹€.)

    • 2μ°¨ μ •κ·œν™”

      • 제 1μ •κ·œν™”λ₯Ό μ§„ν–‰ν•œ ν…Œμ΄λΈ”μ— λŒ€ν•΄ μ™„μ „ ν•¨μˆ˜ 쒅속을 λ§Œμ‘±ν•˜λ„λ‘ ν…Œμ΄λΈ”μ„ λΆ„ν•΄ν•˜λŠ” 것이닀.(이게 무슨뜻?), ν•¨μˆ˜μ’…μ†μ΄λž€ κΈ°λ³Έν‚€μ˜ 뢀뢄집합이 κ²°μ •μžκ°€ λ˜μ–΄μ„  μ•ˆλœλ‹€λŠ” 것이닀.

      • 예λ₯Ό λ“€μ–΄

        ν•™μƒλ²ˆν˜Έ
        κ°•μ’Œμ΄λ¦„
        κ°•μ˜μ‹€
        성적

        11

        λ°μ΄ν„°λ² μ΄μŠ€

        곡학관 110

        3.5

        12

        λ°μ΄ν„°λ² μ΄μŠ€

        곡학관 110

        4.0

        13

        슀포츠경영

        곡학관 103

        3.5

        14

        자료ꡬ쑰

        곡학관 111

        4.0

        15

        자료ꡬ쑰

        곡학관 111

        3.5

      • 이 ν…Œμ΄λΈ”μ—μ„œ κΈ°λ³Έν‚€λŠ” (ν•™μƒλ²ˆν˜Έ, κ°•μ’Œμ΄λ¦„)으둜 볡합킀닀. 그리고 이 λ³΅ν•©ν‚€λŠ” 성적을 νŠΉμ •(κ²°μ •)ν•˜κ³  μžˆλ‹€. 그런데 μ—¬κΈ°μ„œ κ°•μ˜μ‹€μ΄λΌλŠ” μ»¬λŸΌμ€ κΈ°λ³Έν‚€μ˜ 뢀뢄집합인 κ°•μ’Œμ΄λ¦„μ»¬λŸΌμ— μ˜ν•΄ νŠΉμ •(κ²°μ •)될 수 μžˆλ‹€.

      • 즉, κΈ°λ³Έν‚€μ˜ 뢀뢄인 κ°•μ’Œμ΄λ¦„μ»¬λŸΌμ΄ κ²°μ •μžμ΄κΈ° λ•Œλ¬Έμ— 이 ν…Œμ΄λΈ”μ—μ„œ λΆ„ν•΄ν•˜μ—¬ λ³„λ„μ˜ ν…Œμ΄λΈ”λ‘œ κ΄€λ¦¬ν•˜λŠ” 것이 제 2μ •κ·œν™”μ΄λ‹€. κ²°κ³ΌλŠ” μ•„λž˜μ™€ κ°™λ‹€.

      • ν•™μƒλ²ˆν˜Έ
        κ°•μ’Œμ΄λ¦„
        성적

        11

        λ°μ΄ν„°λ² μ΄μŠ€

        3.5

        12

        λ°μ΄ν„°λ² μ΄μŠ€

        4.0

        13

        슀포츠경영

        3.5

        14

        자료ꡬ쑰

        4.0

        15

        자료ꡬ쑰

        3.5

        κ°•μ’Œμ΄λ¦„
        κ°•μ˜μ‹€

        λ°μ΄ν„°λ² μ΄μŠ€

        곡학관 110

        μŠ€ν¬μΈ κ²½μ˜ν•™

        μ²΄μœ‘κ΄€ 103

        자료ꡬ쑰

        곡학관 111

    • 3μ°¨ μ •κ·œν™”

      • 제 2μ •κ·œν™”λ₯Ό μ§„ν–‰ν•œ ν…Œμ΄λΈ”μ— λŒ€ν•΄μ„œ 이행적 쒅속을 없애도둝 ν…Œμ΄λΈ”μ„ λΆ„ν•΄ν•˜λŠ” 것이닀.

      • μ—¬κΈ°μ„œ 이행적 μ’…μ†μ΄λž€ A -> B, B -> Cκ°€ 성립할 λ•Œ A -> Cκ°€ μ„±λ¦½λ˜λŠ” 것이닀.

      • μžμ„Έν•œ μ˜ˆλŠ” https://mangkyu.tistory.com/110λ₯Ό μ°Έκ³ ν•˜μž..

    • 4μ°¨ μ •κ·œν™”

      • 4μ°¨ μ •κ·œν™”μ—μ„œλŠ” 닀쀑 κ°’ 쒅속성을 ν•΄κ²°ν•˜κΈ° μœ„ν•΄ ν…Œμ΄λΈ”μ„ λΆ„ν•΄ν•©λ‹ˆλ‹€.

    • 5μ°¨ μ •κ·œν™”

      • 5μ°¨ μ •κ·œν™”μ—μ„œλŠ” 쑰인 쒅속성을 μ œκ±°ν•˜κ³  ν…Œμ΄λΈ”μ„ λΆ„ν•΄ν•©λ‹ˆλ‹€.

    • BCNF μ •κ·œν™”

      • 제3 μ •κ·œν™”λ₯Ό μ§„ν–‰ν•œ ν…Œμ΄λΈ”μ— λŒ€ν•΄ λͺ¨λ“  κ²°μ •μžκ°€ 후보킀가 λ˜λ„λ‘ ν…Œμ΄λΈ”μ„ λΆ„ν•΄ν•˜λŠ” 것이닀.

      • μžμ„Έν•œ μ˜ˆλŠ” https://mangkyu.tistory.com/110λ₯Ό μ°Έκ³ ν•˜μž

Last updated