SEB/TIL

031 | RDBMS, SQL, ACID

kexon 2022. 8. 4. 20:33

πŸ’™ SQL

🀍 λ°μ΄ν„°λ² μ΄μŠ€μ˜ ν•„μš”μ„±

  1. In-Memory
    • 데이터 보호 λΆˆκ°€
    • ν”„λ‘œκ·Έλž¨ μ’…λ£Œ μ‹œ 데이터 λ°›μ•„μ˜¬ 수 μ—†μŒ
  2. File I/O
    • νŒŒμΌμ„ μ½λŠ” λ°©μ‹μœΌλ‘œ μž‘λ™ν•˜λŠ” ν˜•νƒœ
    • 데이터가 ν•„μš”ν•  λ•Œλ§ˆλ‹€ 맀번 전체 νŒŒμΌμ„ 읽어야함. 크기가 컀질수둝 λΉ„νš¨μœ¨μ μΈ 단점이 있음

🀍 SQL(Structed Query Language)

  • λ°μ΄ν„°λ² μ΄μŠ€ μ–Έμ–΄, κ΅¬μ‘°ν™”λœ 쿼리 μ–Έμ–΄
  • κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ—μ„œ μ‚¬μš©
    • μ’…λ₯˜: MySQL, Oracle, SQLite, PostgreSQL

🀍 NoSQL

  • 데이터가 κ΅¬μ‘°ν™”λ˜μ–΄μžˆμ§€ μ•Šμ€ λ°μ΄ν„°λ² μ΄μŠ€
  • 데이터λ₯Ό λ‹€λ₯Έ ν˜•νƒœλ‘œ μ €μž₯
  • μ’…λ₯˜: MongoDB

🀍 μΏΌλ¦¬(Query)

  • 질의문(μ§ˆλ¬Έμ— λŒ€ν•œ λ‹΅)
  • κΈ°μ‘΄ μ‘΄μž¬ν•˜λŠ” 데이터λ₯Ό κ²€μƒ‰μ–΄λ‘œ ν•„ν„°λ§ν•΄μ£ΌλŠ” 것
  • λ°μ΄ν„°λ² μ΄μŠ€μ— 쿼리λ₯Ό 보내 μ›ν•˜λŠ” 데이터λ₯Ό κ°€μ Έμ˜€κ±°λ‚˜ μ‚½μž…ν•  수 있음

πŸ’™ SQL Basics

🀍 SQL κΈ°λ³Έ 쿼리문 μ’…λ₯˜

더보기
  • Select
  • Where
  • And, Or, Not
  • Order By
  • Insert Into
  • Null Values
  • Update
  • Delete
  • Count
  • Like
  • Wildcards
  • Aliases
  • Joins
    • Inner Join
    • Left Join
    • Right Join
  • Group By

🀍 DB λͺ…λ Ήμ–΄

더보기
  • SQL Create DB
  • SQL Drop DB
  • SQL Create Table
  • SQL Drop Table
  • SQL Alter Table
  • SQL Not Null
  • SQL Unique
  • SQL Primary Key
  • SQL Foreign Key
  • SQL Default
  • SQL Auto Increment
  • SQL Dates

πŸ’™ ACID

🀍 νŠΈλžœμž­μ…˜

  • μ—¬λŸ¬ 개의 μž‘μ—…μ„ ν•˜λ‚˜λ‘œ 묢은 μ‹€ν–‰ λ‹¨μœ„

🀍 ACID

  • νŠΈλžœμž­μ…˜μ΄ κ°–κ³  μžˆλŠ” νŠΉμ„±
  • λ°μ΄ν„°λ² μ΄μŠ€ νŠΈλžœμž­μ…˜μ΄ λ°œμƒν•  λ•Œ, κ·Έ μ•ˆμ •μ„±μ„ 보μž₯ν•  수 μžˆλŠ” μ„±μ§ˆ

🀍 Atomicity(μ›μžμ„±)

  • ν•˜λ‚˜μ˜ νŠΈλžœμž­μ…˜ λ‚΄μ—μ„œλŠ” λͺ¨λ“  연산이 μ„±κ³΅ν•˜κ±°λ‚˜ λͺ¨λ‘ μ‹€νŒ¨ν•΄μ•Όλ¨
  • λͺ¨λ‘ μ‹€νŒ¨ μ‹œ μ‹€ν–‰μ·¨μ†Œ: rollback

🀍 Consistency(일관성)

  • ν•˜λ‚˜μ˜ νŠΈλžœμž­μ…˜ 전후에 λ°μ΄ν„°λ² μ΄μŠ€μ˜ μΌκ΄€λœ μƒνƒœκ°€ μœ μ§€λ˜μ–΄μ•Ό 함

🀍 Isolation(독립성)

  • 각각의 νŠΈλžœμž­μ…˜μ€ λ…λ¦½μ μœΌλ‘œ, μ„œλ‘œμ˜ 연산을 ν™•μΈλ°›κ±°λ‚˜ 영ν–₯을 쀄 수 μ—†μŒ
  • 두 λͺ…ν•œν…Œ μ†‘κΈˆμ„ ν•  λ•Œ λ‚΄ κ³„μ’Œμ—μ„œλŠ” λ§Œμ›μ΄ λΉ μ Έλ‚˜κ°€μ§€λ§Œ, 각 ν•œλͺ…μ—κ²ŒλŠ” 5μ²œμ›μ”© λ“€μ–΄κ°€λŠ” 것

🀍 Durability(지속성)

  • ν•˜λ‚˜μ˜ μ„±κ³΅λœ νŠΈλžœμž­μ…˜μ— λŒ€ν•œ λ‘œκ·Έκ°€ 기둝되고 영ꡬ적으둜 λ‚¨μŒ