리ν¬μ§ν 리
μννΈμ¨μ΄λ‘ λλ©μΈ κ°λ
μ νννλ€κ³ ν΄μ μ ν리μΌμ΄μ
μ΄ λλ κ²μ μλλ€. νλ‘κ·Έλ¨μ μ€ννλ©° λ©λͺ¨λ¦¬μ λ‘λλ λ°μ΄ν°λ νλ‘κ·Έλ¨μ΄ μ’
λ£λλ©΄ μ¬λΌμ§λλ°, κ·Έλμ νλ‘κ·Έλ¨μ΄ μ’
λ£λλλΌλ κ°μ²΄κ° μ¬λΌμ§μ§ μλλ‘ μ μ₯νκ³ λ³΅μν μ μλλ‘ μμν(νΌμμ€ν΄μ, Persistency)κ° νμνλ€.
μ ν리μΌμ΄μ
μ λμμ μν΄ κ°μ²΄λ₯Ό μ μ₯νκ³ λ³΅μνλ νμλ λλ©μΈ κ°λ
κ³Ό κ±°λ¦¬κ° λ©λ€κ³ μκ°ν μ μμΌλ μμ μ£ΌκΈ°λ₯Ό κ°λ μν°ν° κ°μ κ°μ²΄μ κ²½μ° λλ©μΈ κ·μΉμ μν΄ μμ μ£ΌκΈ°κ° μ΄λ£¨μ΄μ ΈμΌ νλλ° νλ‘κ·Έλ¨μ΄ μ’
λ£λλ κ²μΌλ‘ μΈν΄ κ°μ λ‘ μν°ν°μ μμ μ£ΌκΈ°κ° κ²°μ λλ€λ©΄ λλ©μΈ κ·μΉμ μ¬λ°λ₯΄κ² μ μ§νκ³ κ΅¬νν μ μκ² λλ λ¬Έμ κ° μλ€.
κ·Έλμ νΌμμ€ν΄μμ μν κ³Ό μ±
μμ μ§κ² νλ κ°μ²΄κ° λ°λ‘ βμ μ₯μβλΌλ μλ―Έλ₯Ό μ§λκ³ μλ 리ν¬μ§ν 리λ€.
리ν¬μ§ν 리μ μ± μ
μμ λλ©μΈ μλΉμ€μ λν λ¨μμμ βνμμ 보 μ€λ³΅κ²μ¬β κ°μ΄ κ° κ°μ²΄λ μν°ν°μ νλμΌλ‘ μ μνκΈ° λΆμμ°μ€λ¬μ΄ κΈ°λ₯μ λλ©μΈ μλΉμ€λ‘ ꡬννλ κ²μ΄ μ μ νλ€λ κ²μ 곡λΆνμλ€.
βνμμ 보 μ€λ³΅κ²μ¬βλ₯Ό ꡬννλ €λ©΄ κΈ°μ‘΄ νμ λͺ©λ‘μ κ°μ νμλͺ
λλ μλ³μλ₯Ό κ°μ§ νμ μν°ν°κ° μλμ§λ₯Ό νμΈν μ μμ΄μΌ νκ³ , κ·Έλ¬λ €λ©΄ μ€λ³΅λ νμ μν°ν°κ° μ‘΄μ¬νλμ§λ₯Ό μ΄λκ°μμ μ‘°νν μ μμ΄μΌ νλ€.
μΌλ°μ μΌλ‘λ λ°μ΄ν°μ μ μ₯, μ‘°ν, μ
λ°μ΄νΈ, μμ (CRUD)λ₯Ό μν΄ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ¬μ©νλλ°, νμ λ°μ΄ν°λ₯Ό μ‘°ννλ μ½λκ° λλ©μΈ μλΉμ€ λ΄μ ꡬνλ κ²½μ° λλ©μΈ λ‘μ§μ νμ
νκΈ° μ΄λ €μμ§λΏλλ¬ νμ μ 보λ₯Ό μ‘°ννλ λ‘μ§μ΄ λΆνμνκ² λ
ΈμΆλκ² λλ€.
κ·Έλμ 리ν¬μ§ν 리 κ°μ²΄λ₯Ό λ§λ€μ΄ λ°μ΄ν°λ² μ΄μ€μ λν μ κ·Ό μ±
μμ λΆμ¬νκ³ CRUDμ κ°μ νλμ 리ν¬μ§ν 리μ μ μνκ² λλ€.
리ν¬μ§ν 리μ νν
λ°μ΄ν°λ₯Ό μ‘°νν μ μλ βμ΄λκ°βλ‘ κ΄κ³ν λ°μ΄ν°λ² μ΄μ€λ NoSQL λ°μ΄ν°λ² μ΄μ€ λ±μ΄ μΌλ°μ μΌλ‘ μ¬μ©λκΈ°λ νμ§λ§ 리ν¬μ§ν λ¦¬κ° λ°λμ λ°μ΄ν°λ² μ΄μ€μ μ°κ΄λ μμ±κ³Ό νλλ§ μ μλμ΄μΌ νλ κ²μ μλλ€. λ°μ΄ν°λ νμΌλ‘ μ μ₯μ ν μλ μκ³ ν
μ€νΈ νκ²½μ²λΌ λ°μ΄ν°μ μ μ§κ° μ€μνμ§ μλ€λ©΄ μΈ λ©λͺ¨λ¦¬ μ μ₯μλ₯Ό ꡬνν΄μ μ¬μ©ν μλ μλ€.
μ€μν κ²μ λ°μ΄ν°λ₯Ό μ μ₯νκ³ μ‘°ννλ λ±μ κ·μΉμ΄ μ μλλ κ°μ²΄κ° 리ν¬μ§ν λ¦¬κ³ μ΄λ€ μ’
λ₯μ DBλ₯Ό μ°κ±°λ μ΄λ€ λ°©μμΌλ‘ λ°μ΄ν°λ₯Ό λ€λ£¨λμ§μ λν΄μλ 리ν¬μ§ν 리 λ°μμ λ
ΈμΆλμ§ μμμΌ νλ€λ κ²μ΄λ€.
리ν¬μ§ν 리μ μ μνκΈ° λΆμ μ ν λ©μλ
βνμμ 보 μ€λ³΅κ²μ¬βλ₯Ό ꡬνν λ νμμ μ‘°ννκΈ° μν λ©μλ
find()λ μ΄λ―Έ λμΌν νμμ΄ μ‘΄μ¬νλμ§ νμΈνλ exists() λ©μλλ₯Ό ꡬνν μ μμ κ²μ΄λ€. μ΄ λ exists()λ μ΄λμ μ μνλ κ²μ΄ μ’μκΉ?μ μ₯μμ νμμ λ³΄κ° μ‘΄μ¬νλμ§ νμΈνλ κ²μ΄κΈ° λλ¬Έμ 리ν¬μ§ν 리μ μ μνλ κ²μ΄ μ μ νλ€κ³ μκ°νκΈ° μ½μ§λ§ βλμΌν νμβμ΄λΌλ 쑰건μ μΈλΆ κ·μΉμ λλ©μΈ κ·μΉμ ν΄λΉνκΈ° λλ¬Έμ μ΄λ₯Ό 리ν¬μ§ν 리μ ꡬννλ κ²μ 리ν¬μ§ν 리μ μ±
μμ λ²μ΄λκ² λλ―λ‘ λλ©μΈ μλΉμ€μ ꡬννλ κ²μ΄ μ μ νλ€.
λ€λ§, μ΄λ»κ² ꡬννλλμ λ°λΌ μ°¨μ΄λ μμ μ μλλ° λ§μ½
exists() λ©μλμ User κ°μ²΄ λμ user_idλ user_name κ°μ ꡬ체μ μΈ μΈμλ₯Ό μ£Όμ΄ βλμΌν νμβμ μ‘°ννλ κ²μ΄ μλλΌ βκ°μ id μ‘°νβ λλ βκ°μ μ΄λ¦ μ‘°νβ κ°μ μ±
μμ λΆμ¬νλ€λ©΄ λλ©μΈ κ·μΉμ λλ¬λ΄μ§ μκ³ λ¦¬ν¬μ§ν 리μ μ΄μΈλ¦¬λ λ©μλλ₯Ό μ μν μ μλ€.리ν¬μ§ν 리 ꡬνμ μ μν μ
- κ°μ²΄λ₯Ό μ μ₯νκ±°λ μ λ°μ΄νΈ νλ λ©μλλ₯Ό μ μν λλ κ°μ²΄ μ체λ₯Ό μΈμλ‘ λ°λλ‘ νλ κ²μ΄ μ’λ€. κ·Έλ μ§ μμΌλ©΄ κ°μ²΄μ μμ± λ³λ‘ μ μ₯/μμ λ©μλλ₯Ό μ μν΄μΌ νκ² λ μ μμΌλ©° κ°μ²΄μ μμ μ μ μ΄μ κ°μ²΄ μμ μκ² λ§‘κΈ°λ κ²μ΄ μ³λ€.
- μ μ₯λ λͺ¨λ κ°μ²΄λ₯Ό 볡μνλ λ©μλλ μ»΄ν¨ν°μ 리μμ€λ₯Ό μλͺ¨μν€κΈ° μ½λ€. μ±λ₯μμ κΈ°μνλ λ¬Έμ λ₯Ό ννΌνκΈ° μν΄ μ 체 볡μ보λ€λ νμμ λ°λΌ λ μ ν©ν λ©μλλ₯Ό μ μνλ κ²μ΄ μ’λ€.
- μΈ λ©λͺ¨λ¦¬ 리ν¬μ§ν 리λ₯Ό ꡬννλ κ²½μ° κ°μ²΄ μ‘°ν μ μ°Ύμ κ°μ²΄λ₯Ό κ·Έλλ‘ λ°ννμ§ λ§κ³ κΉμ 볡μ¬λ₯Ό ν΅ν΄ λ§λ μλ‘μ΄ κ°μ²΄λ₯Ό λ°ννλ κ²μ΄ μ€μνλ€. μμΉ«νλ©΄ 볡μλ μΈμ€ν΄μ€λ₯Ό μ‘°μνμ λ 리ν¬μ§ν 리μ μ μ₯λ κ°μ²΄μ μν₯μ λ―ΈμΉ μ μκΈ° λλ¬Έμ΄λ€.
Β