Skip to content

Latest commit

Β 

History

History
86 lines (62 loc) Β· 3.16 KB

File metadata and controls

86 lines (62 loc) Β· 3.16 KB

κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€ (Relational DataBase)

κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€λŠ” 2차원적인 ν‘œ(Table)λ₯Ό μ΄μš©ν•΄μ„œ 데이터 μƒν˜Έ 관계λ₯Ό μ •μ˜ν•˜λŠ” λ°μ΄ν„°λ² μ΄μŠ€

개체(Entity)와 관계(Relationship)λ₯Ό λͺ¨λ‘ λ¦΄λ ˆμ΄μ…˜(Relation)μ΄λΌλŠ” ν‘œ(Table)둜 ν‘œν˜„ν•˜κΈ° λ•Œλ¬Έμ— 개체 λ¦΄λ ˆμ΄μ…˜κ³Ό 관계 λ¦΄λ ˆμ΄μ…˜μ΄ μ‘΄μž¬ν•©λ‹ˆλ‹€

κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ˜ λ¦΄λ ˆμ΄μ…˜ ꡬ쑰

λ¦΄λ ˆμ΄μ…˜(Relation) : 데이터듀을 ν‘œ(Table) ν˜•νƒœλ‘œ ν‘œν˜„ν•œ 것

λ¦΄λ ˆμ΄μ…˜ μŠ€ν‚€λ§ˆ(Relation Schema) : λ¦΄λ ˆμ΄μ…˜μ˜ 이름, 각 μ†μ„±μ˜ 이름과 νƒ€μž…, 그리고 속성 κ°’μ˜ 도메인을 μ •μ˜ν•˜λŠ”, 즉 λ¦΄λ ˆμ΄μ…˜μ— 데이터λ₯Ό 넣을 수 μžˆλ„λ‘ ν•˜λŠ” λ¦΄λ ˆμ΄μ…˜ ν‹€

λ¦΄λ ˆμ΄μ…˜ μΈμŠ€ν„΄μŠ€(Relation Instance) : λ¦΄λ ˆμ΄μ…˜μ— λ“€μ–΄ μžˆλŠ” νŠœν”Œλ“€μ˜ 집합

image

νŠœν”Œ(Tuple)

  • λ¦΄λ ˆμ΄μ…˜μ„ κ΅¬μ„±ν•˜λŠ” 각각의 ν–‰
  • μ†μ„±μ˜ λͺ¨μž„μœΌλ‘œ ꡬ성됨
  • 파일 κ΅¬μ‘°μ—μ„œ λ ˆμ½”λ“œμ™€ 같은 의미
  • νŠœν”Œμ˜ 수 = 카디널리티(Cardinality) = 기수 = λŒ€μ‘μˆ˜

속성(Attribute)

  • λ¦΄λ ˆμ΄μ…˜μ„ κ΅¬μ„±ν•˜λŠ” 각각의 μ—΄
  • κ°€μž₯ μž‘μ€ 논리적 λ‹¨μœ„
  • 파일 κ΅¬μ‘°μ—μ„œ 데이터 ν•„λ“œμ— ν•΄λ‹Ή
  • 개체의 νŠΉμ„±μ„ 기술
  • μ†μ„±μ˜ 수 = 디그리(Degree) = 차수

도메인(Domain)

  • ν•˜λ‚˜μ˜ 속성이 μ·¨ν•  수 μžˆλŠ” 같은 νƒ€μž…μ˜ μ›μž 수

νŠΉμ§•

- ν•œ λ¦΄λ ˆμ΄μ…˜μ— ν¬ν•¨λœ νŠœν”Œλ“€μ€ λͺ¨λ‘ 상이함

- ν•œ λ¦΄λ ˆμ΄μ…˜μ— ν¬ν•¨λœ νŠœν”Œ μ‚¬μ΄μ—λŠ” μˆœμ„œκ°€ μ—†μŒ

- μ‚½μž…, μ‚­μ œ λ“±μ˜ μž‘μ—…μœΌλ‘œ 인해 λ¦΄λ ˆμ΄μ…˜μ€ μ‹œκ°„μ— 따라 변함

- μ†μ„±λ“€κ°„μ˜ μˆœμ„œλŠ” μ€‘μš”ν•˜μ§€ μ•ŠμŒ

- μ†μ„±μ˜ λͺ…칭은 μœ μΌν•΄μ•Ό ν•˜μ§€λ§Œ, κ΅¬μ„±ν•˜λŠ” 값은 동일할 수 있음

- νŠœν”Œμ„ μœ μΌν•˜κ²Œ μ‹λ³„ν•˜κΈ° μœ„ν•΄ μ†μ„±λ“€μ˜ 뢀뢄집합을 ν‚€λ‘œ 섀정함
  • μž₯점

    • κ°„κ²°ν•˜κ³  보기 편리
    • 데이터 λΆ„λ₯˜, μ •λ ¬, 탐색 속도가 빠름
    • λ°μ΄ν„°μ˜ 무결성과 μ‹ λ’°μ„± 보μž₯
    • λ‹€λ₯Έ λ°μ΄ν„°λ² μ΄μŠ€λ‘œμ˜ λ³€ν™˜ 용이
    • SQLμ΄λΌλŠ” κ΅¬μ‘°ν™”λœ λ°©μ‹μœΌλ‘œ 데이터λ₯Ό λ‹€λ£Έ
  • 단점

    • 데이터 μ²˜λ¦¬μ— λŒ€ν•œ λΆ€ν•˜ λ°œμƒμ‹œ μ²˜λ¦¬κ°€ 어렀움
    • 데이터 베이슀의 λΆ€ν•˜λ₯Ό λΆ„μ„ν•˜κΈ° 어렀움
    • λ°˜λ“œμ‹œ μŠ€ν‚€λ§ˆ κ·œκ²©μ— λ§žμΆ°μ„œ 데이터λ₯Ό 닀뀄야 함
    • μ„±λŠ₯ν–₯상에 높은 λΉ„μš©μ΄ ν•„μš”

λΉ„κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€ (NoSQL)

κ΄€κ³„ν˜• 데이터 베이슀의 단점을 λ³΄μ™„ν•˜κΈ° μœ„ν•΄ λ§Œλ“€μ–΄μ§„ 데이터 베이슀

νŠΉμ§•

- μŠ€ν‚€λ§ˆμ— λŒ€ν•œ μ •μ˜λ₯Ό ν•˜μ§€ μ•ŠμŒ

- λ°μ΄ν„°μ˜ μ €μž₯ 및 검색에 νŠΉν™”

- κ±°λŒ€ν•œ mapμœΌλ‘œμ„œ key-valueλ₯Ό 지원

- PK, FK, JOIN λ“± 관계λ₯Ό μ •μ˜ν•˜μ§€ μ•ŠμŒ

- 데이터 λͺ¨λΈμ΄ μœ μ—°ν•¨

- λ›°μ–΄λ‚œ ν™•μž₯μ„±

단점

  • μœ μ—°μ„± λ•Œλ¬Έμ— 데이터 ꡬ쑰 결정이 μ–΄λ €μšΈ 수 μžˆμŠ΅λ‹ˆλ‹€.
  • 쿼리 μ²˜λ¦¬μ‹œ 데이터λ₯Ό νŒŒμ‹± ν›„ μ—°μ‚°ν•˜λŠ” 과정을 κ±°μΉ©λ‹ˆλ‹€
  • 큰 크기의 documentλ₯Ό λ‹€λ£° λ•ŒλŠ” μ„±λŠ₯이 μ €ν•˜λ©λ‹ˆλ‹€

Reference

https://liveyourit.tistory.com/213