DB/DataBase

DB 기술 λ©΄μ ‘ λŒ€λΉ„(1)

2023. 7. 22. 23:32
λͺ©μ°¨
  1. πŸ’‘ κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ˜ κ΅¬μ„±μš”μ†Œμ— λŒ€ν•΄μ„œ μ„€λͺ…ν•˜μ„Έμš”.
  2. πŸ’‘ Keyλž€? Key의 μ’…λ₯˜μ— λŒ€ν•΄μ„œ μ„€λͺ…ν•˜μ„Έμš”.
  3. << ν‚€μ˜ μ’…λ₯˜ >>
  4. 1. μŠˆνΌν‚€(Super Key)
  5. 2. 후보킀(Candidate Key)
  6. 3. κΈ°λ³Έν‚€(Primary Key)
  7. 4. λŒ€μ²΄ν‚€(Alternative Key)
  8. 5. μ™Έλž˜ν‚€(Foreign Key)
  9. πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€μ˜ νŠΉμ§•μ— λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.
  10. πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€ μ–Έμ–΄(DDL, DML, DCL)에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.
  11. πŸ’‘ Index에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ‹œκ³ , μž₯/단점에 λŒ€ν•΄ μ•„λŠ”λŒ€λ‘œ λ§ν•΄μ£Όμ„Έμš”.
  12. πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€μ˜ νŠΉμ§•μ— λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.
  13. πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€ μ–Έμ–΄(DDL, DML, DCL)에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.
  14. πŸ’‘ Index에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ‹œκ³ , μž₯/단점에 λŒ€ν•΄ μ•„λŠ”λŒ€λ‘œ λ§ν•΄μ£Όμ„Έμš”.

πŸ’‘ κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ˜ κ΅¬μ„±μš”μ†Œμ— λŒ€ν•΄μ„œ μ„€λͺ…ν•˜μ„Έμš”.

  • 데이터가 ν…Œμ΄λΈ”μ— μ €μž₯.
  • κ΅¬μ„±μš”μ†Œ: ν–‰(νŠœν”Œ), μ—΄(속성)
    • 행은 μˆœμ„œκ°€ μ—†μ§€λ§Œ, 열은 μˆœμ„œκ°€ μžˆλ‹€.
  • μŠ€ν‚€λ§ˆ: 이름과 데이터 μœ ν˜•μ„ μ •μ˜
  • ν‚€: ν…Œμ΄λΈ”μ—μ„œ νŠΉμ • 행을 μœ μΌν•˜κ²Œ 식별할 수 있게 ν•˜λŠ” νŠΉμ§•, μ—΄ ν˜Ήμ€ 볡수의 μ—΄ λͺ¨μŒ
    • ν…Œμ΄λΈ”μ˜ 각 ν–‰μ—λŠ” 프라이머리 ν‚€ 값이 λ°˜λ“œμ‹œ μžˆμ–΄μ•Ό ν•œλ‹€.
  • μ™ΈλΆ€ν‚€
    • μ΄μš©ν•˜μ—¬ λ‹€λ₯Έ ν…Œμ΄λΈ”κ³Ό 링크할 수 μžˆλ‹€.
    • κ·Έ 값이 λ‹€λ₯Έ ν…Œμ΄λΈ”μ˜ ν‚€ μ—΄μ˜ κ°’κ³Ό 같은 μ—΄
    • 참쑰무결성: λͺ¨λ“  μ™ΈλΆ€ ν‚€ 값이 μ°Έμ‘°ν•˜λŠ” ν…Œμ΄λΈ”μ˜ κ°’μœΌλ‘œ μ‘΄μž¬ν•˜λŠ” 경우

πŸ’‘ Keyλž€? Key의 μ’…λ₯˜μ— λŒ€ν•΄μ„œ μ„€λͺ…ν•˜μ„Έμš”.

  • λ¦΄λ ˆμ΄μ…˜μ— ν¬ν•¨λœ νŠœν”Œμ„ μœ μΌν•˜κ²Œ κ΅¬λΆ„ν•΄μ£ΌλŠ” 역할을 ν‚€κ°€ ν•©λ‹ˆλ‹€. ν‚€μ˜ μ’…λ₯˜λ‘œλŠ” (1)μŠˆνΌν‚€ (2)후보킀 (3)κΈ°λ³Έν‚€ (4)λŒ€μ²΄ν‚€ (5)μ™Έλž˜ν‚€κ°€ μžˆμŠ΅λ‹ˆλ‹€.

<< ν‚€μ˜ μ’…λ₯˜ >>

고객 아이디 고객λͺ… λ‚˜μ΄ 직업 μ „ν™”λ²ˆν˜Έ

11st 십일리언 22 직μž₯인 010-2222-1111
coupang κΉ€νŒ‘λ§¨ 27 학뢀생 010-2222-3333
ebay 김베이 15 학뢀생 010-3333-44444
tmon ν‹°λͺ¨λ‹ˆμ–Έ 18 λŒ€ν•™μ›μƒ 010-5555-66666

1. μŠˆνΌν‚€(Super Key)

  • μœ μΌμ„±μ˜ νŠΉμ„±μ„ λ§Œμ‘±ν•˜λŠ” 속성 λ˜λŠ” μ†μ„±λ“€μ˜ μ§‘ν•©μž…λ‹ˆλ‹€.
  • 직업은 값이 같은 고객이 μ‘΄μž¬ν•  수 μžˆμœΌλ―€λ‘œ μˆ˜νΌν‚€κ°€ 될 수 μ—†μŠ΅λ‹ˆλ‹€. κ³ κ°λͺ… λ˜ν•œ 동λͺ…이인이 μ‘΄μž¬ν•  수 μžˆμœΌλ―€λ‘œ μŠˆνΌν‚€κ°€ 될 수 μ—†μŠ΅λ‹ˆλ‹€.
  • 쀑볡 아이디 생성을 ν—ˆμš©ν•˜μ§€ μ•ŠλŠ” ν™ˆνŽ˜μ΄μ§€λΌλ©΄ κ³ κ° 아이디 μ†μ„±μ€ μˆ˜νΌν‚€κ°€ 될 수 μžˆμŠ΅λ‹ˆλ‹€.
  • (고객 아이디, 고객λͺ…) μ†μ„± 집합은 μˆ˜νΌν‚€κ°€ 될 수 μžˆμŠ΅λ‹ˆλ‹€.
  • (고객 아이디, 고객λͺ…)κ³Ό 같이 ν•˜λ‚˜μ˜ νŠœν”Œμ„ κ΅¬λ³„ν•˜κΈ° μœ„ν•΄μ„œ λΆˆν•„μš”ν•œ μ†μ„±μ˜ κ°’κΉŒμ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” λΉ„νš¨μœ¨μ μΈ μž‘μ—…μ΄λ―€λ‘œ κΌ­ ν•„μš”ν•œ μ†μ„±μ˜ μ§‘ν•©λ§Œμ„ μœ μΌν•˜κ²Œ ꡬ뢄할 수 μžˆλ„λ‘ ν›„보킀 κ°œλ…μ΄ ν•„μš”ν•©λ‹ˆλ‹€.

2. 후보킀(Candidate Key)

  • μœ μΌμ„±κ³Ό μ΅œμ†Œμ„±μ„ λ§Œμ‘±ν•˜λŠ” 속성 λ˜λŠ” μ†μ„±λ“€μ˜ μ§‘ν•©μž…λ‹ˆλ‹€. μ΅œμ†Œμ„±μ€ ν‚€λ₯Ό κ΅¬μ„±ν•˜λŠ” μ—¬λŸ¬ 속성 쀑에 ν•˜λ‚˜λΌλ„ μ—†μœΌλ©΄ νŠœν”Œμ„ μœ μΌν•˜κ²Œ ꡬ별할 수 μ—†λŠ” κΌ­ ν•„μš”ν•œ μ΅œμ†Œν•œμ˜ μ†μ„±λ“€λ‘œλ§Œ ν‚€λ₯Ό κ΅¬μ„±ν•˜λŠ” νŠΉμ„±μž…λ‹ˆλ‹€.
  • 고객 μ•„μ΄λ””λŠ” 후보킀가 될 수 μžˆμŠ΅λ‹ˆλ‹€.
  • (고객 아이디, 고객이름)은 후보킀가 될 수 μ—†μŠ΅λ‹ˆλ‹€. μ™œλƒν•˜λ©΄ κ³ κ° μ•„μ΄λ””λ§ŒμœΌλ‘œ νŠœν”Œμ„ μœ μΌν•˜κ²Œ ꡬ뢄할 수 있기 λ•Œλ¬Έμž…λ‹ˆλ‹€.

3. κΈ°λ³Έν‚€(Primary Key)

  • λ¦΄λ ˆμ΄μ…˜μ—μ„œ νŠœν”Œμ„ κ΅¬λ³„ν•˜κΈ° μœ„ν•΄ μ—¬λŸ¬ 개의 후보킀λ₯Ό μ‚¬μš©ν•  ν•„μš”λŠ” μ—†μŠ΅λ‹ˆλ‹€. λ°μ΄ν„°λ² μ΄μŠ€ μ„€κ³„μžλŠ” μ—¬λŸ¬ 후보킀 μ€‘μ—μ„œ 기본적으둜 μ‚¬μš©ν•  ν‚€λ₯Ό μ„ νƒν•˜λŠ”λ° 이것이 κΈ°λ³Έν‚€μž…λ‹ˆλ‹€.
  • 후보킀가 μ—¬λŸ¬κ°œλΌλ©΄ λ°μ΄ν„°λ² μ΄μŠ€ μ‚¬μš© ν™˜κ²½μ„ κ³ λ €ν•΄μ„œ μ ν•©ν•œ 것을 ν›„λ³΄ν‚€λ‘œ μ‚¬μš©ν•©λ‹ˆλ‹€.
  • κΈ°λ³Έν‚€λ₯Ό μ •ν•  λ•Œ λ‹€μŒ 두 κ°€μ§€λ₯Ό κ³ λ €ν•΄μ•Όν•©λ‹ˆλ‹€.
    • κΈ°λ³Έν‚€κ°€ 널 값인 νŠœν”Œμ€ λ‹€λ₯Έ νŠœν”Œκ³Ό κ΅¬λ³„ν•˜μ—¬ μ ‘κ·Όν•˜κΈ° μ–΄λ €μš°λ―€λ‘œ λ„ 값을 κ°€μ§ˆ 수 μžˆλŠ” 속성은 κΈ°λ³Έν‚€λ‘œ λΆ€μ μ ˆν•©λ‹ˆλ‹€.
    • 값이 자주 λ³€κ²½λ˜λŠ” μ†μ„±μœΌλ‘œ κ΅¬μ„±λœ 후보킀λ₯Ό κΈ°λ³Έν‚€λ‘œ μ„ νƒν•˜λ©΄ 값이 변경될 λ•Œλ§ˆλ‹€ κΈ°λ³Έν‚€λ‘œ μ ν•©ν•œμ§€ κ²€μ‚¬ν•΄μ•Όν•˜λ―€λ‘œ κ°’이 자주 변경될 수 μžˆλŠ” 속성이 ν¬ν•¨λœ ν›„λ³΄ν‚€λŠ” κΈ°λ³Έν‚€λ‘œ λΆ€μ μ ˆν•©λ‹ˆλ‹€.
    • λ‹¨μˆœν•œ 후보킀λ₯Ό κΈ°λ³Έν‚€λ‘œ μ„ νƒν•˜μ„Έμš”

4. λŒ€μ²΄ν‚€(Alternative Key)

  • κΈ°λ³Έν‚€λ‘œ μ„ νƒλ˜μ§€ λͺ»ν•œ ν›„λ³΄ν‚€λ“€μž…λ‹ˆλ‹€.
  • λŒ€μ²΄ν‚€λŠ” κΈ°λ³Έν‚€λ₯Ό λŒ€μ²΄ν•  수 μžˆμ§€λ§Œ κΈ°λ³Έν‚€κ°€ λ˜μ§€ λͺ»ν•˜κ³  νƒˆλ½ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

5. μ™Έλž˜ν‚€(Foreign Key)

  • μ–΄λ–€ λ¦΄λ ˆμ΄μ…˜μ— μ†Œμ†λœ 속성 λ˜λŠ” 속성 집합이 λ‹€λ₯Έ λ¦΄λ ˆμ΄μ…˜μ˜ κΈ°λ³Έν‚€κ°€ λ˜λŠ” ν‚€μž…λ‹ˆλ‹€.
  • λ‹€λ₯Έ λ¦΄λ ˆμ΄μ…˜μ΄ κΈ°λ³Έν‚€λ₯Ό κ·ΈλŒ€λ‘œ μ°Έμ‘°ν•˜λŠ” μ†μ„±μ˜ 집합이 μ™Έλž˜ν‚€μž…λ‹ˆλ‹€.

πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€μ˜ νŠΉμ§•μ— λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.

  1. μ‹€μ‹œκ°„ μ ‘κ·Όμ„±(Real-Time Accessibility) : λΉ„μ •ν˜•μ μΈ 질의(쑰회)에 λŒ€ν•˜μ—¬ μ‹€μ‹œκ°„ μ²˜λ¦¬μ— μ˜ν•œ 응닡이 κ°€λŠ₯ν•΄μ•Ό ν•˜λ©°,
  2. 지속적인 λ³€ν™”(Continuous Evloution) : λ°μ΄ν„°λ² μ΄μŠ€μ˜ μƒνƒœλŠ” λ™μ μž…λ‹ˆλ‹€. 즉 μƒˆλ‘œμš΄ λ°μ΄ν„°μ˜ μ‚½μž…(Insert), μ‚­μ œ(Delete), κ°±μ‹ (Update)으둜 항상 μ΅œμ‹ μ˜ 데이터λ₯Ό μœ μ§€ν•΄μ•Ό ν•©λ‹ˆλ‹€.
  3. λ™μ‹œ 곡용(Concurrent Sharing) : λ°μ΄ν„°λ² μ΄μŠ€λŠ” μ„œλ‘œ λ‹€λ₯Έ λͺ©μ μ„ κ°€μ§„ μ—¬λŸ¬ μ‘μš©μžλ“€μ„ μœ„ν•œ κ²ƒμ΄λ―€λ‘œ λ‹€μˆ˜μ˜ μ‚¬μš©μžκ°€ λ™μ‹œμ— 같은 λ‚΄μš©μ˜ 데이터λ₯Ό μ΄μš©ν•  수 μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€.
  4. λ‚΄μš©μ— μ˜ν•œ μ°Έμ‘°(Content Reference) : λ°μ΄ν„°λ² μ΄μŠ€μ— μžˆλŠ” 데이터λ₯Ό μ°Έμ‘°ν•  λ•Œ 데이터 λ ˆμ½”λ“œμ˜ μ£Όμ†Œλ‚˜ μœ„μΉ˜μ— μ˜ν•΄μ„œκ°€ μ•„λ‹ˆλΌ μ‚¬μš©μžκ°€ μš”κ΅¬ν•˜λŠ” 데이터 λ‚΄μš©μœΌλ‘œ μ°ΎμŠ΅λ‹ˆλ‹€.

πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€ μ–Έμ–΄(DDL, DML, DCL)에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.

  • DDL (μ •μ˜μ–΄ : Data Definition Language) : λ°μ΄ν„°λ² μ΄μŠ€ ꡬ쑰λ₯Ό μ •μ˜, μˆ˜μ •, μ‚­μ œν•˜λŠ” μ–Έμ–΄ ( alter, create, drop )
  • DML (μ‘°μž‘μ–΄ : Data Manipulation Language) : λ°μ΄ν„°λ² μ΄μŠ€λ‚΄μ˜ 자료 검색, μ‚½μž…, κ°±μ‹ , μ‚­μ œλ₯Ό μœ„ν•œ μ–Έμ–΄ ( select, insert, update, delete )
  • DCL (μ œμ–΄μ–΄ : Data Control Language) : 데이터에 λŒ€ν•΄ 무결성 μœ μ§€, 병행 μˆ˜ν–‰ μ œμ–΄, λ³΄ν˜Έμ™€ 관리λ₯Ό μœ„ν•œ μ–Έμ–΄ ( commit, rollback, grant, revoke )

πŸ’‘ Index에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ‹œκ³ , μž₯/단점에 λŒ€ν•΄ μ•„λŠ”λŒ€λ‘œ λ§ν•΄μ£Όμ„Έμš”.

  • Indexλž€ ν…Œμ΄λΈ”μ„ μ²˜μŒλΆ€ν„° λκΉŒμ§€ κ²€μƒ‰ν•˜λŠ” 방법인 FTS(Full Table Scan)κ³ΌλŠ” 달리 μž…λ‹ˆλ‹€.
    • 예λ₯Όλ“€μ–΄, DBλ₯Ό μ±…μœΌλ‘œ λΉ„μœ ν•˜λ©΄ λ°μ΄ν„°λŠ” μ±…μ˜ λ‚΄μš©μΌ 것이고, 데이터가 μ €μž₯된 λ ˆμ½”λ“œμ˜ μ£Όμ†ŒλŠ” index λͺ©λ‘μ— μžˆλŠ” νŽ˜μ΄μ§€ 번호일 것이닀.
  • 인덱슀λ₯Ό κ²€μƒ‰ν•˜μ—¬ ν•΄λ‹Ή 자료의 ν…Œμ΄λΈ”μ„ μ—‘μ„ΈμŠ€ ν•˜λŠ” 방법
  • μΈλ±μŠ€λŠ” 항상 μ •λ ¬λœ μƒνƒœλ₯Ό μœ μ§€ν•˜κΈ° λ•Œλ¬Έμ— μ›ν•˜λŠ” 값을 κ²€μƒ‰ν•˜λŠ”λ° λΉ λ₯΄μ§€λ§Œ, μƒˆλ‘œμš΄ 값을 μΆ”κ°€ν•˜κ±°λ‚˜ μ‚­μ œ, μˆ˜μ •ν•˜λŠ” κ²½μš°μ—λŠ” 쿼리문 μ‹€ν–‰ 속도가 λŠλ €μ§‘λ‹ˆλ‹€.
  • 즉, μΈλ±μŠ€λŠ” λ°μ΄ν„°μ˜ μ €μž₯ μ„±λŠ₯을 ν¬μƒν•˜κ³  κ·ΈλŒ€μ‹  λ°μ΄ν„°μ˜ 검색 속도λ₯Ό λ†’μ΄λŠ” κΈ°λŠ₯이라 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • 데이터가 ν…Œμ΄λΈ”μ— μ €μž₯.
  • κ΅¬μ„±μš”μ†Œ: ν–‰(νŠœν”Œ), μ—΄(속성)
    • 행은 μˆœμ„œκ°€ μ—†μ§€λ§Œ, 열은 μˆœμ„œκ°€ μžˆλ‹€.
  • μŠ€ν‚€λ§ˆ: 이름과 데이터 μœ ν˜•μ„ μ •μ˜
  • ν‚€: ν…Œμ΄λΈ”μ—μ„œ νŠΉμ • 행을 μœ μΌν•˜κ²Œ 식별할 수 있게 ν•˜λŠ” νŠΉμ§•, μ—΄ ν˜Ήμ€ 볡수의 μ—΄ λͺ¨μŒ
    • ν…Œμ΄λΈ”μ˜ 각 ν–‰μ—λŠ” 프라이머리 ν‚€ 값이 λ°˜λ“œμ‹œ μžˆμ–΄μ•Ό ν•œλ‹€.
  • μ™ΈλΆ€ν‚€
    • μ΄μš©ν•˜μ—¬ λ‹€λ₯Έ ν…Œμ΄λΈ”κ³Ό 링크할 수 μžˆλ‹€.
    • κ·Έ 값이 λ‹€λ₯Έ ν…Œμ΄λΈ”μ˜ ν‚€ μ—΄μ˜ κ°’κ³Ό 같은 μ—΄
    • 참쑰무결성: λͺ¨λ“  μ™ΈλΆ€ ν‚€ 값이 μ°Έμ‘°ν•˜λŠ” ν…Œμ΄λΈ”μ˜ κ°’μœΌλ‘œ μ‘΄μž¬ν•˜λŠ” 경우

πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€μ˜ νŠΉμ§•μ— λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.

  1. μ‹€μ‹œκ°„ μ ‘κ·Όμ„±(Real-Time Accessibility) : λΉ„μ •ν˜•μ μΈ 질의(쑰회)에 λŒ€ν•˜μ—¬ μ‹€μ‹œκ°„ μ²˜λ¦¬μ— μ˜ν•œ 응닡이 κ°€λŠ₯ν•΄μ•Ό ν•˜λ©°,
  2. 지속적인 λ³€ν™”(Continuous Evloution) : λ°μ΄ν„°λ² μ΄μŠ€μ˜ μƒνƒœλŠ” λ™μ μž…λ‹ˆλ‹€. 즉 μƒˆλ‘œμš΄ λ°μ΄ν„°μ˜ μ‚½μž…(Insert), μ‚­μ œ(Delete), κ°±μ‹ (Update)으둜 항상 μ΅œμ‹ μ˜ 데이터λ₯Ό μœ μ§€ν•΄μ•Ό ν•©λ‹ˆλ‹€.
  3. λ™μ‹œ 곡용(Concurrent Sharing) : λ°μ΄ν„°λ² μ΄μŠ€λŠ” μ„œλ‘œ λ‹€λ₯Έ λͺ©μ μ„ κ°€μ§„ μ—¬λŸ¬ μ‘μš©μžλ“€μ„ μœ„ν•œ κ²ƒμ΄λ―€λ‘œ λ‹€μˆ˜μ˜ μ‚¬μš©μžκ°€ λ™μ‹œμ— 같은 λ‚΄μš©μ˜ 데이터λ₯Ό μ΄μš©ν•  수 μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€.
  4. λ‚΄μš©μ— μ˜ν•œ μ°Έμ‘°(Content Reference) : λ°μ΄ν„°λ² μ΄μŠ€μ— μžˆλŠ” 데이터λ₯Ό μ°Έμ‘°ν•  λ•Œ 데이터 λ ˆμ½”λ“œμ˜ μ£Όμ†Œλ‚˜ μœ„μΉ˜μ— μ˜ν•΄μ„œκ°€ μ•„λ‹ˆλΌ μ‚¬μš©μžκ°€ μš”κ΅¬ν•˜λŠ” 데이터 λ‚΄μš©μœΌλ‘œ μ°ΎμŠ΅λ‹ˆλ‹€.

πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€ μ–Έμ–΄(DDL, DML, DCL)에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.

  • DDL (μ •μ˜μ–΄ : Data Definition Language) : λ°μ΄ν„°λ² μ΄μŠ€ ꡬ쑰λ₯Ό μ •μ˜, μˆ˜μ •, μ‚­μ œν•˜λŠ” μ–Έμ–΄ ( alter, create, drop )
  • DML (μ‘°μž‘μ–΄ : Data Manipulation Language) : λ°μ΄ν„°λ² μ΄μŠ€λ‚΄μ˜ 자료 검색, μ‚½μž…, κ°±μ‹ , μ‚­μ œλ₯Ό μœ„ν•œ μ–Έμ–΄ ( select, insert, update, delete )
  • DCL (μ œμ–΄μ–΄ : Data Control Language) : 데이터에 λŒ€ν•΄ 무결성 μœ μ§€, 병행 μˆ˜ν–‰ μ œμ–΄, λ³΄ν˜Έμ™€ 관리λ₯Ό μœ„ν•œ μ–Έμ–΄ ( commit, rollback, grant, revoke )

πŸ’‘ Index에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ‹œκ³ , μž₯/단점에 λŒ€ν•΄ μ•„λŠ”λŒ€λ‘œ λ§ν•΄μ£Όμ„Έμš”.

  • Indexλž€ ν…Œμ΄λΈ”μ„ μ²˜μŒλΆ€ν„° λκΉŒμ§€ κ²€μƒ‰ν•˜λŠ” 방법인 FTS(Full Table Scan)κ³ΌλŠ” 달리 μž…λ‹ˆλ‹€.
    • 예λ₯Όλ“€μ–΄, DBλ₯Ό μ±…μœΌλ‘œ λΉ„μœ ν•˜λ©΄ λ°μ΄ν„°λŠ” μ±…μ˜ λ‚΄μš©μΌ 것이고, 데이터가 μ €μž₯된 λ ˆμ½”λ“œμ˜ μ£Όμ†ŒλŠ” index λͺ©λ‘μ— μžˆλŠ” νŽ˜μ΄μ§€ 번호일 것이닀.
  • 인덱슀λ₯Ό κ²€μƒ‰ν•˜μ—¬ ν•΄λ‹Ή 자료의 ν…Œμ΄λΈ”μ„ μ—‘μ„ΈμŠ€ ν•˜λŠ” 방법
  • μΈλ±μŠ€λŠ” 항상 μ •λ ¬λœ μƒνƒœλ₯Ό μœ μ§€ν•˜κΈ° λ•Œλ¬Έμ— μ›ν•˜λŠ” 값을 κ²€μƒ‰ν•˜λŠ”λ° λΉ λ₯΄μ§€λ§Œ, μƒˆλ‘œμš΄ 값을 μΆ”κ°€ν•˜κ±°λ‚˜ μ‚­μ œ, μˆ˜μ •ν•˜λŠ” κ²½μš°μ—λŠ” 쿼리문 μ‹€ν–‰ 속도가 λŠλ €μ§‘λ‹ˆλ‹€.
  • 즉, μΈλ±μŠ€λŠ” λ°μ΄ν„°μ˜ μ €μž₯ μ„±λŠ₯을 ν¬μƒν•˜κ³  κ·ΈλŒ€μ‹  λ°μ΄ν„°μ˜ 검색 속도λ₯Ό λ†’μ΄λŠ” κΈ°λŠ₯이라 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
μ €μž‘μžν‘œμ‹œ λΉ„μ˜λ¦¬ λ³€κ²½κΈˆμ§€ (μƒˆμ°½μ—΄λ¦Ό)

'DB > DataBase' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

DB 기술 λ©΄μ ‘ λŒ€λΉ„(2)  (0) 2023.07.26
νŠΈλžœμž­μ…˜μ˜ ACID  (0) 2023.06.29
Database Index  (0) 2023.06.20
  1. πŸ’‘ κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ˜ κ΅¬μ„±μš”μ†Œμ— λŒ€ν•΄μ„œ μ„€λͺ…ν•˜μ„Έμš”.
  2. πŸ’‘ Keyλž€? Key의 μ’…λ₯˜μ— λŒ€ν•΄μ„œ μ„€λͺ…ν•˜μ„Έμš”.
  3. << ν‚€μ˜ μ’…λ₯˜ >>
  4. 1. μŠˆνΌν‚€(Super Key)
  5. 2. 후보킀(Candidate Key)
  6. 3. κΈ°λ³Έν‚€(Primary Key)
  7. 4. λŒ€μ²΄ν‚€(Alternative Key)
  8. 5. μ™Έλž˜ν‚€(Foreign Key)
  9. πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€μ˜ νŠΉμ§•μ— λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.
  10. πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€ μ–Έμ–΄(DDL, DML, DCL)에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.
  11. πŸ’‘ Index에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ‹œκ³ , μž₯/단점에 λŒ€ν•΄ μ•„λŠ”λŒ€λ‘œ λ§ν•΄μ£Όμ„Έμš”.
  12. πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€μ˜ νŠΉμ§•μ— λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.
  13. πŸ’‘ λ°μ΄ν„°λ² μ΄μŠ€ μ–Έμ–΄(DDL, DML, DCL)에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ„Έμš”.
  14. πŸ’‘ Index에 λŒ€ν•΄ μ„€λͺ…ν•΄μ£Όμ‹œκ³ , μž₯/단점에 λŒ€ν•΄ μ•„λŠ”λŒ€λ‘œ λ§ν•΄μ£Όμ„Έμš”.
'DB/DataBase' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
  • DB 기술 λ©΄μ ‘ λŒ€λΉ„(2)
  • νŠΈλžœμž­μ…˜μ˜ ACID
  • Database Index
D_Helloper
D_Helloper
μ•ˆλ…•_개발
D_Helloper
Hello_Develop
D_Helloper
전체
였늘
μ–΄μ œ
  • λΆ„λ₯˜ 전체보기 (116) N
    • CS (23)
      • λ„€νŠΈμ›Œν¬ (16)
      • 운영체제 (6)
    • μ•Œκ³ λ¦¬μ¦˜ (48)
      • λ°±μ€€ (39)
      • ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ (7)
      • SWEA (1)
    • DB (6)
      • SQLD (2)
      • DataBase (4)
    • JAVA (13)
    • ETC (16)
    • 일상 (5)
    • Develop (4) N
      • Docker (1)
      • TIL (1) N

λΈ”λ‘œκ·Έ 메뉴

  • ν™ˆ
  • νƒœκ·Έ
  • λ°©λͺ…둝

곡지사항

  • Contact

인기 κΈ€

νƒœκ·Έ

  • REST
  • OSI 계측
  • REST API
  • Internet 5계측
  • λ„€νŠΈμ›Œν¬ 계측
  • HTTP μƒνƒœμ½”λ“œ
  • HTTP
  • TCP/IP 5계측
  • http method
  • CRUD
  • HTTP λ©”μ†Œλ“œ
  • OSI 7계측
  • restful

졜근 λŒ“κΈ€

졜근 κΈ€

hELLO Β· Designed By μ •μƒμš°.
D_Helloper
DB 기술 λ©΄μ ‘ λŒ€λΉ„(1)
μƒλ‹¨μœΌλ‘œ

ν‹°μŠ€ν† λ¦¬νˆ΄λ°”

단좕킀

λ‚΄ λΈ”λ‘œκ·Έ

λ‚΄ λΈ”λ‘œκ·Έ - κ΄€λ¦¬μž ν™ˆ μ „ν™˜
Q
Q
μƒˆ κΈ€ μ“°κΈ°
W
W

λΈ”λ‘œκ·Έ κ²Œμ‹œκΈ€

κΈ€ μˆ˜μ • (κΆŒν•œ μžˆλŠ” 경우)
E
E
λŒ“κΈ€ μ˜μ—­μœΌλ‘œ 이동
C
C

λͺ¨λ“  μ˜μ—­

이 νŽ˜μ΄μ§€μ˜ URL 볡사
S
S
맨 μœ„λ‘œ 이동
T
T
ν‹°μŠ€ν† λ¦¬ ν™ˆ 이동
H
H
단좕킀 μ•ˆλ‚΄
Shift + /
⇧ + /

* λ‹¨μΆ•ν‚€λŠ” ν•œκΈ€/영문 λŒ€μ†Œλ¬Έμžλ‘œ 이용 κ°€λŠ₯ν•˜λ©°, ν‹°μŠ€ν† λ¦¬ κΈ°λ³Έ λ„λ©”μΈμ—μ„œλ§Œ λ™μž‘ν•©λ‹ˆλ‹€.