DB, DBMS, database system

hana jeong·2023년 3월 22일
0

유튜브 쉬운코드와 스파르타코딩클럽 db특강을 정리한 내용입니다!
틀린 게 있다면 말씀해주세요


DB란?
전자적으로 저장되고 사용되는, 관련있는 데이터들의 조직화된 모음

왜 조직화 해놓을까?
-> 데이터가 조직화되어있지 않고 흩어져있다면 원하는 데이터를 빠르고 쉽게 찾기 어렵고 중복된 데이터가 있는지, 관련된 데이터가 얼마나 있는 지 등을 관리하기 어려울 것이다
데이터를 조직화함으로써 원하는 데이터를 신속하게 찾을 수 있고 불필요한 데이터가 중복으로 생성되는 것도 막을 수 있음

database system이란?
database + DBMS + 연관된 어플리케이션 -> 줄여서 databse라고 부름
문맥에 따라서 무엇을 의미하는지 잘 보자

DBMS(DataBase Management Systems)란?
사용자에게 DB를 정의하고 만들고 관리하는 기능을 제공하는 소프트웨어 시스템

-> db는 그저 데이터가 나열된 것이기 때문에 이를 제어하거나 백업, 튜닝, 모니터링 등을 하기 위해 프로그램이 필요함. 이 프로그램이 DBMS임(ex: MySQL, Postgre SQL 등)
-> 데이터베이스를 관리하고 저장하는 방식에 따라 유형이 구분됨 -> RDBMS, NoSQL

관계형 데이터 베이스(RDBMS)

  • 데이터가 행과 열로 저장되고 사전에 정의한 관계로 데이터를 구성한 데이터베이스 시스템(엑셀처럼 생김)
  • 테이블에 사전 정의된 내용에 부합하는 형태의 데이터만 삽입가능

장점

  • 직관적
  • 테이블 간의 관계 파악하기 쉬움, 정확함

단점

  • 성능을 향상시키려면 비용이 많이 듦

비관계형 데이터 베이스(NoSQL, Not only SQL)
RDBMS를 제외한 나머지를 비관계형 데이터베이스라고 함
RDBMS보다 유연하게 데이터를 읽고 쓸 수 있음
-> 갑자기 왜 등장?
다양한 데이터를 축적하게 되면서 데이터의 복잡도와 양이 늘어남 -> 기존 RDBMS의 장점인 정확성이 그렇게 중요하지 않게 되었음


정리

SQL(RDBMS)NoSQL
데이터 저장 구조열과 행이 있는 테이블Key-value, document, column, 등 다양
데이터 사전 정의엄격하게 column에 대한 정의 필요SQL보다 유연하다.
확장Scale Up(수직 확장)Scale Out(수평 확장)
profile
https://developer-hh.tistory.com 로 옮깁니다

0개의 댓글