πŸ“€ 데이터 베이슀 관리 μ‹œμŠ€ν…œ

νŒ”λ¦¬λ™Β·2021λ…„ 8μ›” 9일
1

데이베이슀 관리 μ‹œμŠ€ν…œμ˜ λ“±μž₯ λ°°κ²½

  • κ³Όκ±°μ—λŠ” 데이터λ₯Ό κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄ 파일 μ‹œμŠ€ν…œμ΄λΌλŠ” μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μ΄μš©ν•˜μ˜€λ‹€. 데이터λ₯Ό 파일둜 관리할 수 μžˆλ„λ‘ νŒŒμΌμ„ 생성, μ‚­μ œ, μˆ˜μ •, κ²€μƒ‰ν•˜λŠ” κΈ°λŠ₯을 μ œκ³΅ν•˜λ©°, μš΄μ˜μ²΄μ œμ™€ ν•¨κ²Œ μ„€μΉ˜λœλ‹€. 파일 μ‹œμŠ€ν…œμ€ μ‘μš© ν”„λ‘œκ·Έλž¨λ³„λ‘œ ν•„μš”ν•œ 데이터λ₯Ό λ³„λ„μ˜ 파일둜 κ΄€λ¦¬ν•œλ‹€.

파일 μ‹œμŠ€ν…œμ˜ 문제점

  • 같은 λ‚΄μš©μ˜ 데이터가 μ—¬λŸ¬ νŒŒμΌμ— 쀑볡 μ €μž₯λœλ‹€.

    • 파일 μ‹œμŠ€ν…œμ—μ„œλŠ” μ‘μš©ν”„λ‘œκ·Έλž¨λ³„λ‘œ νŒŒμΌμ„ μœ μ§€ν•˜λ―€λ‘œ 같은 데이터가 μ—¬λŸ¬ νŒŒμΌμ— μ €μž₯될 수 μžˆλ‹€.
    • 즉, 데이터 쀑볡성(data redundancy)λ¬Έμ œκ°€ λ°œμƒν•œλ‹€.
    • 데이터가 μ€‘λ³΅λ˜λ©΄ μ €μž₯곡간이 낭비될 뿐 μ•„λ‹ˆλΌ 데이터 일관성(data consistency)κ³Ό 데이터 무결성(data integrity)을 μœ μ§€ν•˜κΈ°κ°€ μ–΄λ ΅λ‹€.
  • μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ 데이터 νŒŒμΌμ— 쒅속적이닀.

    • μ‘μš© ν”„λ‘œκ·Έλž¨μ€ νŒŒμΌμ— 직접 μ ‘κ·Όν•˜μ—¬ 데이터λ₯Ό μ²˜λ¦¬ν•΄μ•Ό ν•˜λ―€λ‘œ μ‚¬μš©ν•˜λŠ” 파일의 데이터λ₯Ό κ΅¬μ„±ν•˜λŠ” λ°©λ²•μ΄λ‚˜ 물리적인 μ €μž₯ ꡬ쑰에 맞게 μž‘μ„±λ˜μ–΄μ•Ό ν•œλ‹€. κ·Έλž˜μ„œ μ‚¬μš©ν•˜λŠ” 파일의 κ·Έμ‘°λ₯Ό λ³€κ²½ν•˜λ©΄ μ‘μš© ν”„λ‘œκ·Έλž¨λ„ ν•¨κ»˜ λ³€κ²½λ˜μ•Ό ν•˜λŠ”λ° μ΄λŸ¬ν•œ νŠΉμ§•μ„ 데이터 쒅속성(data dependency)이라 ν•œλ‹€.
  • 데이터 νŒŒμΌμ— λŒ€ν•œ λ™μ‹œκ³΅μœ , λ³΄μ•ˆ, 회볡 κΈ°λŠ₯이 λΆ€μ‘±ν•˜λ‹€.

    • 일반 파일 μ‹œμŠ€ν…œμ—μ„œλŠ” μ‘μš© ν”„λ‘œκ·Έλž¨ ν•˜λ‚˜κ°€ μ‚¬μš© 쀑인 νŒŒμΌμ„ λ‹€λ₯Έ μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ μ ‘κ·Όν•˜μ—¬ μ‚¬μš©ν•  수 μžˆλŠ” λ™μ‹œ 곡유 κΈ°λŠ₯을 μ œκ³΅ν•˜μ§€ μ•ŠλŠ”λ‹€. λ¬Όλ‘  같은 λ‚΄μš©μ˜ νŒŒμΌμ„ μ—¬λŸ¬κ°œ λ§Œλ“€μ–΄ μ‘μš© ν”„λ‘œκ·Έλž¨λ§ˆλ‹€ μ œκ³΅ν•  μˆ˜λ„ μžˆλ‹€. ν•˜μ§€λ§Œ μ΄λ ‡κ²Œ ν•˜λ©΄ κ²°κ΅­ 데이터가 μ€‘λ³΅λ˜κΈ° λ•Œλ¬Έμ— 더 큰 λ¬Έμ œκ°€ λ°œμƒν•  수 μžˆλ‹€.
    • 파일 μ‹œμŠ€ν…œμ—μ„œλŠ” μ‚¬μš©μžμ—κ²Œ 보톡 파일 λ‹¨μœ„λ‘œ 읽기, μˆ˜μ •, μ‹€ν–‰κΆŒν•œμ„ λΆ€μ—¬ν•˜λŠ” λ°©μ‹μœΌλ‘œ 데이터 접근을 ν†΅μ œν•œλ‹€. ν•˜μ§€λ§Œ 데이터 λ³΄μ•ˆμ— λŒ€ν•œ μš”κ΅¬κ°€ λ”μš± μ„ΈλΆ„ν™”λ˜κ³  μžˆμ–΄ 파일 μ•ˆμ˜ λ ˆμ½”λ“œλ‚˜ ν•„λ“œ 같은 더 μž‘μ€ λ‹¨μœ„μ— λŒ€ν•œ μ ‘κ·Ό ν†΅μ œμ™€ 더 ꡬ체적인 κΆŒν•œ λΆ€μ—¬κ°€ κ°€λŠ₯ν•΄μ•Όν•œλ‹€. 그리고 데이터가 μ€‘λ³΅λœ λͺ¨λ“  파일의 λ³΄μ•ˆμ„ 같은 μˆ˜μ€€μœΌλ‘œ μœ μ§€ν•˜κΈ°λ„ μ–΄λ ΅λ‹€.
    • 파일 μ‹œμŠ€ν…œμ—μ„œ μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ νŒŒμΌμ„ μ‚¬μš©ν•˜λŠ” 도쀑에 μž₯μ• κ°€ λ°œμƒν•˜λ©΄ 데이터λ₯Ό μΌκ΄€λœ μƒνƒœλ‘œ νšŒλ³΅ν•™λ”” μ–΄λ ΅λ‹€.
  • μ‘μš© ν”„λ‘œκ·Έλž¨μ„ κ°œλ°œν•˜κΈ°κ°€ 쉽지 μ•Šλ‹€.

    • 파일 μ‹œμŠ€ν…œμ—μ„œλŠ” νŒŒμΌμ— μ ‘κ·Ό ν•˜μ—¬ 데이터λ₯Ό κ΄€λ¦¬ν•˜λŠ” λͺ¨λ“  μž‘μ—…μ„ μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ λ‹΄λ‹Ήν•΄μ•Ό ν•˜κΈ° λ•Œλ¬Έμ— μ‚¬μš©μž μš”κ΅¬μ— λ§žλŠ” μ‘μš© ν”„λ‘œκ·Έλž¨μ„ κ°œλ°œν•˜λŠ” 데 어렀움이 λ§Žλ‹€.

정리

  • νŒ‘λ‹ μ‹œμŠ€ν…œμ΄ μ§€λ‹Œ λͺ¨λ“  문제의 κ·Όλ³Έ 원인은 데이터 쀑볡성과 데이터 μ’…μ†μ„±μœΌλ‘œ μš”μ•½ν•  수 μžˆλ‹€.

λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ˜ μ •μ˜

  • λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œ(DBMS: DataBase Management System)은 파일 μ‹œμŠ€ν…œμ˜ 데이터 쀑볡과 데이터 쒅속 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ μ œμ‹œλœ μ†Œν”„νŠΈμ›¨μ–΄λ‹€.

데이터 베이슀 관리 μ‹œμŠ€ν…œμ˜ μ£Όμš”κΈ°λŠ₯ 3가지

  • μ •μ˜ κΈ°λŠ₯: λ°μ΄ν„°λ² μ΄μŠ€ ꡬ쑰λ₯Ό μ €μœΌμ΄ν•˜κ±°λ‚˜ μˆ˜μ •ν•  수 μžˆλ‹€.

  • μ‘°μž‘ κΈ°λŠ₯: 데이터λ₯Ό μ‚½μž…, μ‚­μ œ, μˆ˜μ •, κ²€μƒ‰ν•˜λŠ” 연산을 ν•  수 μžˆλ‹€.

  • μ œμ–΄ κΈ°λŠ₯: 데이터λ₯Ό 항상 μ •ν™•ν•˜κ³  μ•ˆμ „ν•˜κ²Œ μœ μ§€ν•  수 μžˆλ‹€.

    • λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ€ 데이터λ₯Ό μ—¬λŸ¬μ‚¬μš©μžκ°€ κ³΅μœ ν•΄λ„ 항상 μ •ν™•ν•˜κ³  μ•ˆμ „ν•˜κ²Œ μœ μ§€ν•˜λŠ” κΈ°λŠ₯을 μ œκ³΅ν•œλ‹€. λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ€ 데이터λ₯Ό μ‚½μž…, μ‚­μ œ, μˆ˜μ •ν•˜λŠ” 연산을 ν•œ ν›„ 에도 λ‚΄μš©μ΄ μΌκ΄€λ˜λ©΄μ„œ 무결성을 μœ μ§€ν•˜κ²Œ ν•˜κ³  μž₯μ• κ°€ λ°œμƒν•΄λ„ 회볡이 κ°€λŠ₯ν•˜λ„λ‘ μ œμ–΄ν•œλ‹€. 그리고 κΆŒν•œμ΄ μžˆλŠ” μ‚¬μš©μžμ—κ²Œλ§Œ 데이터 μ ‘κ·Όν•˜μ—¬ λ³΄μ•ˆμ΄ μœ μ§€λ˜λ„λ‘ μ œμ–΄ν•œλ‹€. 특히 μ—¬λŸ¬ μ‚¬μš©μžκ°€ λ°μ΄ν„°λ² μ΄μŠ€μ— λ™μ‹œμ— μ ‘κ·Όν•˜μ—¬ 데이터λ₯Ό μ²˜λ¦¬ν•  수 μžˆλ„λ‘ μ œμ–΄ν•œλ‹€.

λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ˜ μž₯단점

  • 파일 μ‹œμŠ€ν…œκ³Ό 비ꡐ해 λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ€ λ‹€μŒκ³Ό 같은 μž₯점이 μžˆλ‹€.

μž₯점

데이터 쀑볡을 ν†΅μ œν•  수 μžˆλ‹€.

  • λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ€ λ°μ΄ν„°λ² μ΄μŠ€μ— 데이터λ₯Ό ν†΅ν•©ν•˜μ—¬ κ΄€λ¦¬ν•˜λ―€λ‘œ 데이터 쀑볡 문제λ₯Ό ν•΄κ²°ν•  수 μžˆλ‹€. λ˜ν•œ νš¨μœ¨μ„± λ•Œλ¬Έμ— 데이터 쀑볡을 ν—ˆμš©ν•˜λŠ” κ²½μš°μ—λ„ ν†΅μ œκ°€λŠ₯ν•˜λ„λ‘ 쀑볡을 μ΅œμ†Œν™”ν•˜λ―€λ‘œ 데이터 일관성도 μœ μ§€ν•  수 μžˆλ‹€.

λ°μ΄ν„°μ˜ 독립성이 ν™•λ³΄λœλ‹€.

  • λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ€ μ‘μš© ν”„λ‘œκ·Έλž¨μ„ λŒ€μ‹ ν•΄μ„œ λ°μ΄ν„°λ² μ΄μŠ€μ— μ ‘κ·Όν•˜κ³  이λ₯Ό κ΄€λ¦¬ν•˜λŠ” λͺ¨λ“  μ±…μž„μ„ 지기 λ•Œλ¬Έμ— λ°μ΄ν„°λ² μ΄μŠ€ ꡬ쑰가 λ³€κ²½λ˜μ–΄λ„ μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ 영ν–₯을 받지 μ•ŠλŠ”λ‹€. 즉 μ‘μš© ν”„λ‘œκ·Έλž¨λ  λ°μ΄ν„°λ² μ΄μŠ€ 사이에 독립성이 ν™•λ³΄λœλ‹€.

데이터λ₯Ό λ™μ‹œ κ³΅μœ ν•  수 μžˆλ‹€.

  • DBMSλŠ” λ°μ΄ν„°λ² μ΄μŠ€μ— 톡ν™₯된 데이터λ₯Ό μ—¬λŸ¬ μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ 곡유 ν•˜μ—¬ 같은 데이터에 λ™μ‹œ μ ‘κ·Όν•  수 μžˆλ„λ‘ μ§€μ›ν•œλ‹€. μ΄λŠ” λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ΄ λ™μΌν•œ 데이터λ₯Ό 각 μ‘μš©ν”„λ‘œκ·Έλž¨μ˜ μš”κ΅¬μ— 따라 λ‹€μ–‘ν•œ ꡬ쑰둜 μ œκ³΅ν•΄μ€„ 수 있고 λ™μ‹œκ³΅μœ λ₯Ό μ§€μ›ν•˜κΈ° λ•Œλ¬Έμ— λΆˆν•„μš”ν•œ 데이터 쀑볡을 μ œν•œν•  수 μžˆλ‹€.

데이터 λ³΄μ•ˆμ΄ ν–₯μƒλœλ‹€.

  • DBMSλŠ” λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό μ΄μš©ν•΄ 데이터λ₯Ό 쀑앙 μ§‘μ€‘μ‹μœΌλ‘œ κ΄€λ¦¬ν•˜λ―€λ‘œ λ°μ΄ν„°μ—λŒ€ν•œ 효율적인 접근이 κ°€λŠ₯ν•˜λ‹€. κΆŒν•œμ΄ μ—†λŠ” μ‚¬μš©μžμ˜ μ ‘κ·Ό, ν—ˆμš©λ˜μ§€μ•Šμ€ 데이터와 연산에 λŒ€ν•œ μš”μ²­μ„ 사전에 차단할 수 μžˆμ–΄ μ² μ €ν•œ λ³΄μ•ˆμ„ μ œκ³΅ν•œλ‹€. 그리고 μ‚¬μš©μžλ³„λ‘œ λ°μ΄ν„°λ² μ΄μŠ€μ— μ ‘κ·Ό κ°€λŠ₯ν•œ μ˜μ—­μ„ λ‚˜λˆŒ 수 μžˆλ‹€.

데이터 무결성을 μœ μ§€ν•  수 μžˆλ‹€.

  • DBMS은 데이터에 λŒ€ν•œ 관리λ₯Ό μ§‘μ€‘μ μœΌλ‘œ μˆ˜ν–‰ν•˜λ©΄μ„œ 데이터에 λŒ€ν•œ 연산이 μˆ˜ν–‰λ  λ•Œλ§ˆλ‹€ μœ νš¨μ„±μ„ κ²€μ‚¬ν•˜μ—¬ λ°μ΄ν„°μ˜ 무결성을 μœ μ§€ν•  수 있게 ν•΄μ€€λ‹€.
    ex.) ν•„λ“œ μƒμ„±μ‹œ 각 μΉΌλŸΌμ— μ œν•œ 값을 두기 λ•Œλ¬Έ

ν‘œμ€€ν™”ν•  수 μžˆλ‹€.

  • 데이터에 λŒ€ν•œ λͺ¨λ“  접근이 λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ„ 톡해 이루어지기 λ•Œλ¬Έμ— 데이터에 μ ‘κ·Όν•˜λŠ” 방법, 데이터 ν˜•μ‹κ³Ό ꡬ쑰 등을 ν‘œμ€€ν™” ν•˜κΈ° 쉽닀. λͺ¨λ“  μ‘μš© ν”„λ‘œκ·Έλž¨μ€ λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ΄ 미리 μ •ν•œ ν‘œμ€€ν™” 방식을 톡해 λ°μ΄ν„°λ² μ΄μŠ€μ— μ ­κ·Όν•œλ‹€.

μž₯μ•  λ°œμƒ μ‹œ 회볡이 κ°€λŠ₯ν•˜λ‹€.

  • λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ€ μž₯μ• κ°€ λ°œμƒν•΄λ„ 데이터 일관성과 무결성을 μœ μ§€ν•˜λ©΄μ„œ 데이터λ₯Ό μž₯μ• κ°€ λ°œμƒν•˜κΈ° 이전 μƒνƒœλ‘œ λ³΅κ΅¬ν•˜λŠ” 회볡 κΈ°λŠ₯을 μ§€μ›ν•œλ‹€.

μ‘μš©ν”„λ‘œκ·Έλž¨ 개발 λΉ„μš©μ΄ 쀄어든닀.

  • 데이터에 λŒ€ν•œ λͺ¨λ“  관리λ₯Ό μ‘μš© ν”„λ‘œκ·Έλž¨ λŒ“γ„΄ λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ΄ λ‹΄λ‹Ήν•˜κΈ° λ•Œλ¬Έμ— 파일 μ‹œμŠ€ν…œμ„ μ‚¬μš©ν•  λ•Œλ³΄λ‹€ μ‘μš© ν”„λ‘œκ·Έλž¨ 개발 λΉ„μš©μ΄ 적게 λ“ λ‹€. 그리고 데이터 베이슀의 ꡬ쑰가 λ³€κ²½λ˜μ–΄λ„ μ‘μš© ν”„λ‘œκ·Έλž¨μ€ λ³€κ²½ν•  γ… γ…£γ„Ήμš”κ°€ μ—†μ–΄ μœ μ§€ 보수 λΉ„μš©μ΄ 파일 μ‹œμŠ€ν…œμ„ μ‚¬μš©ν•  λ•Œ 보닀 쀄어든닀.

단점

λΉ„μš©μ΄ 많이 λ“ λ‹€.

  • λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ€ λ”°λ‘œ μ„€μΉ˜ν•΄μ•Ό ν•˜λ―€λ‘œ κ΅¬λ§€λΉ„μš©μ΄ 많이 λ“ λ‹€. 특히 λ™μ‹œ μ‚¬μš©μ΄ ν—ˆμš©λ˜λŠ” μ‚¬μš©μž μˆ˜μ— 따라 μ œν’ˆ 가격도 μ¦κ°€ν•œλ‹€.

λ°±μ—…κ³Ό 회볡 방법이 λ³΅μž‘ν•˜λ‹€.

  • λ°μ΄ν„°λ² μ΄μŠ€λŠ” ν…Œμ΄ν„° 양이 λ§Žμ•„ ꡬ쑰가 λ³΅μž‘ν•˜κ³ , μ—¬λŸ¬ μ‚¬μš©μžμ˜ λ™μ‹œ 곡유λ₯Ό μ§€μ›ν•˜λ―€λ‘œ μž₯μ• κ°€ λ°œμƒν–ˆμ„ λ•Œ 원인과 μƒνƒœλ₯Ό μ •ν™•νžˆ νŒŒμ•…ν•˜κΈ° μ–΄λ ΅λ‹€. κ·Έλž˜μ„œ μž₯μ•  λ°œμƒ 전에 데이터λ₯Ό 미리 백업해놓고 μž₯μ•  λ°œμƒ ν›„ 데이터λ₯Ό μ›λž˜μ˜ μΌκ΄€λœ μƒνƒœλ‘œ νšŒλ³΅ν•˜λŠ” 방법이 λ³΅μž‘ν•  μˆ˜λ°–μ— μ—†λ‹€.

쀑앙 집쀑 κ΄€λ¦¬λ‘œ μΈν•œ 취약점이 μ‘΄μž¬ν•œλ‹€.

  • 쀑앙 집쀑관리 μ΄λ―€λ‘œ μ‹œμŠ€ν…œμ— μž₯μ• κ°€ λ°œμƒν•˜λ©΄ 전체 μ‹œμŠ€ν…œ 업무 μ²˜λ¦¬κ°€ μ€‘λ‹¨λœλ‹€.

정리

  • μž₯점
    • 데이터 쀑볡을 ν†΅μ œν•  수 μžˆλ‹€.
    • 데이터 독립성이 ν™•λ³΄λœλ‹€.
    • 데이터λ₯Ό λ™μ‹œ κ³΅μœ ν•  수 μžˆλ‹€.
    • 데이터 λ³΄μ•ˆμ΄ ν–₯μƒλœλ‹€.
    • 데이터 무결성을 μœ μ§€ν•  수 μžˆλ‹€.
    • ν‘œμ€€ν™” ν•  수 μžˆλ‹€.
    • μž₯μ•  λ°œμƒ μ‹œ 회볡이 κ°€λŠ₯ν•˜λ‹€.
    • μ‘μš© ν”„λ‘œκ·Έλž¨ 개발 λΉ„μš©μ΄ 쀄어든닀.
  • 단점
    • λΉ„μš©μ΄ 많이 λ“ λ‹€.
    • λ°±μ—…κ³Ό 회볡 방법이 λ³΅μž‘ν•˜λ‹€.
    • 쀑앙 집쀑 κ΄€λ¦¬λ‘œ μΈν•œ 취약점이 μ‘΄μž¬ν•œλ‹€.

λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ˜ λ°œμ „ κ³Όμ •

1. 1μ„ΈλŒ€ 데이터베이 관리 μ‹œμŠ€ν…œ: λ„€νŠΈμ›Œν¬DBMS, 계측 DBMS

λ„€νŠΈμ›Œν¬ DBMS

  • λ„€νŠΈμ›Œν¬ DBMSλŠ” λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό 노도와 간선을 μ΄μš©ν•œ κ·Έλž˜ν”„ ν˜•νƒœλ‘œ κ΅¬μ„±ν•˜λŠ” λ„€νŠΈμ›Œν¬ 데이터 λͺ¨λΈμ„ μ‚¬μš©ν•œλ‹€.
  • λ„€νŠΈμ›Œν¬ DBMSλŠ” 간선을 μ΄μš©ν•΄ 데이터 κ°„μ˜ 관계λ₯Ό ν‘œν˜„ν•˜κΈ° λ•Œλ¬Έμ— λ°μ΄ν„°λ² μ΄μŠ€μ˜ ꡬ쑰가 λ³΅μž‘ν•˜κ³  λ³€κ²½ν•˜κΈ° μ–΄λ ΅λ‹€λŠ” 단점이 μžˆλ‹€. λŒ€ν‘œμ μΈ DBMSλŠ” 1960λ…„λŒ€ μ΄ˆμ— 개발된 IDS(Intergrated Data Store)κ°€ μžˆλ‹€.

계측 DBMS

  • 계측 DBMSλŠ” λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό 트리 ν˜•νƒœλ‘œ κ΅¬μ„±ν•˜λŠ” 계측 데이터 λͺ¨λΈμ„ μ‚¬μš©ν•œλ‹€.
    계측 DBMSλŠ” λ„€νŠΈμ›Œν¬ DBMS보닀 ꡬ쑰가 λ‹¨μˆœν•˜λ‹€.
  • ν•˜μ§€λ§Œ λ³΅μž‘ν•œ ν˜„μ‹€μ„Έκ³„μ˜ λͺ¨μŠ΅μ„ λΆ€λͺ¨ μžμ‹ 관계가 λͺ…ν™•ν•œ 트리 ν˜•νƒœλ‘œ ν‘œν˜„ν•˜κΈ°κ°€ νž˜λ“€κ³ , ꡬ쑰 변경이 μ–΄λ ΅λ‹€λŠ” λ¬Έμ œκ°€ 생긴닀. λŒ€ν‘œμ μΈ 계측 DBMSλ‘œλŠ” 1960λ…„λŒ€ ν›„λ°˜μ— 개봘된 IMS(Information Management System)κ°€ μžˆλ‹€.

2μ„ΈλŒ€ λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œ: 관계 DBMS

  • 1980λ…„λŒ€ μ΄ˆλΆ€ν„° μ‚¬μš©λ˜μ–΄μ™”λ‹€.
  • 관계 DBMSλŠ” 데이터 베이슀λ₯Ό ν…Œμ΄λΈ” ν˜•νƒœλ‘œ κ΅¬μ„±ν•œ 관계 데이터 λͺ¨λΈμ„ μ‚¬μš©ν•œλ‹€.
  • 관계 데이터 λͺ¨λΈμ€ λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό λ‹¨μˆœν•˜κ³  μ΄ν•΄ν•˜κΈ° μ‰¬μš΄ κ΅¬μƒν•œλ‹€λŠ” μž₯점이 μžˆλ‹€.
  • 1980λ…€μ—λŠ” 관꼐 DBMSκ°€ λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œμ˜ μ£Όλ₯˜κ°€ λ˜μ—ˆκ³ , μ§€κΈˆλ„ 널리 μ“°κ³  μžˆλ‹€.
  • λŒ€ν‘œμ μΈ RDBMS: 였라클, MY SQL μ„œλ²„, MY SQL

3μ„ΈλŒ€ λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œ: 객체지ν–₯, 객체관계 DBMS

객체지ν–₯ DBMS

  • 1980λ…„λŒ€ ν›„λ°˜μ— λ“±μž₯ν•œ 객체지ν–₯ DBMSλŠ” 객체지ν–₯ ν”„λ‘œκ·Έλž˜λ°μ—μ„œ λ„μš‰ν•œ κ°μ²΄λΌλŠ” κ°œλ…μ„ μ΄μš©ν•΄ λ°μ΄ν„°λ² μ΄μŠ€λ₯΄ κ΅¬μ„±ν•˜λŠ” 객체지ν–₯ λͺ¨λΈμ„ μ‚¬μš©ν•œλ‹€.
  • 객체지ν–₯ DBMSλŠ” μ € λ³΅μž‘ν•œ μ‘μš© λΆ„μ–‘μ˜ 데이터λ₯Ό κ΄€λ¦¬ν•˜λ €λŠ” μ‚¬μš©μžμ˜ μš”κ΅¬λ₯Ό μΆ©μ‘±μ‹œν‚€κΈ° μœ„ν•΄ μ œμ•ˆλ˜μ—ˆλ‹€.
  • λŒ€ν‘œμ μΈ 객체지ν–₯ DBMS: 였투, 온투슀, μ ¬μŠ€ν†€

객체관계 DBMS

  • 객체관계 DBMSλŠ” 관계 ν…Œμ΄ν„° λͺ¨λΈμ— 객체 지ν–₯ κ°œλ…μ„ λ„μž…ν•œ 객체관꼐 데이터 λͺ¨λΈμ„ μ‚¬μš©ν•œλ‹€.
  • μ‰½κ²Œ 말해 객체DBMS와 관계DBMS의 κ°œλ…μ„ ν†΅ν•©ν•œ 것 이닀.
  • 2μ„ΈλŒ€ 3μ„ΈλŒ€ DBMSκ°€ κ³΅μ‘΄ν•œλ‹€.

4μ„ΈλŒ€ 이후 λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œ: NoSQL, NewSQL DBMS

NoSQL

  • SNSλ₯Ό μˆ˜λ§Žμ€ μ‚¬λžŒλ“€μ΄ 폭발적으둜 μ΄μš©ν•˜λ©΄μ„œ 사진, λ™μ˜μƒ, 검색 λ‘œκ·Έμ™€ 같은 λΉ„μ •ν˜• 데이터가 λŒ€λŸ‰μœΌλ‘œ μƒμ‚°λ˜μ—ˆλ‹€. 관계DBMSλŠ” λΉ λ₯Έ μ†λ„λ‘œ μ¦κ°€ν•˜λŠ” λŒ€λŸ‰μ˜ λΉ„μ •ν˜• 데이터λ₯Ό μ²˜λ¦¬ν•˜λŠ”λ°λŠ” λΉ„νš¨μšΈμ μ΄μ—ˆκ³  이런 흐름에 따라 NoSQL DBMSμ„±μž₯의 발판이 λ˜μ—ˆλ‹€.

  • NoSQLDBMSλŠ” 관계DBMSκ°€ κ°•μ μœΌλ‘œ μ œμ‹œν•˜λ˜ μ•ˆμ •μ„±κ³Ό 일관성 μœ μ§€λ₯Ό μœ„ν•œ λ³΅μž‘ν•œ κΈ°λŠ₯을 ν¬κΈ°ν•˜κ³ , 데이터 ꡬ쑰λ₯Ό 미리 정해두지 μ•ŠκΈ° λ•Œλ¬Έμ— λΉ„μ •ν˜• 데이터λ₯Ό μ €μž₯ν•˜κ³  μ²˜λ¦¬ν•˜λŠ” 데 적합라닀.

  • λ˜ν•œ ν™•μž₯성이 λ›°μ–΄λ‚˜ μ—¬λŸ¬ λŒ€μ˜ μ„œλ²„ 컴퓨터에 데이터λ₯Ό λΆ„μ‚°ν•˜μ—¬ μ €μž₯ν•˜κ³  μ²˜λ¦¬ν•˜λŠ” ν™˜κ²½μ—μ„œ 주둜 μ‚¬μš©ν•œλ‹€.

  • λŒ€ν‘œμ μΈ NoSQL: λͺ½κ³ λ””λΉ„, H베이슀, μΉ΄μ‚°λ“œλΌ, λ ˆλ””μŠ€, λ„€μ˜€ν¬μ œμ΄, μ˜€λ¦¬μ—”νŠΈDB

NewSQL

  • μ •ν˜• 데이터λ₯Ό μ •ν™•ν•˜κ²Œ μ²˜λ¦¬ν•˜κΈ° μœ„ν•΄μ„œλŠ” 기쑴의 관계DBMSλ₯Ό κ·ΈλŒ€λ‘œ μœ μ§€ν•΄μ•Ό ν•˜κ³ , λΉ„μ •ν˜• 데이터λ₯Ό μ²˜λ¦¬ν•˜λ €λ©΄ NoSQL을 μΆ”κ°€λ‘œ λ„μž…ν•΄μ•Ό ν•˜λŠ” 뢀담을 μ–»κ²Œ λœλ‹€. 이 같은 λΆˆνŽΈν•¨μ΄ NewSQLλ“±μž₯을 μ΄λŒμ—ˆλ‹€.
  • NewSQL은 관계DBMS의 μž₯점과 NoSQL의 ν™•μž₯μ„± 및 μœ μ—°μ„±μ„ λͺ¨λ‘ μ§€μ›ν•œλ‹€. λ”°λΌμ„œ μ •ν˜• λΉ„μ •ν˜• 데이터λ₯Ό μ•ˆμ •μ μ΄κ³  λΉ λ₯΄κ²Œ μ²˜λ¦¬ν•  수 μžˆλ‹€.
  • λŒ€ν‘œμ μΈ NewSQl: 볼트DB, λˆ„μ˜€DB
profile
λ°°μ›€μ˜ 기둝

0개의 λŒ“κΈ€