DB란?
데이터의 집합.
데이터베이스에는 일상생활 대부분의 정보가 저장되고 관리됩니다. 오늘 보내거나 받은 카카오톡 메시지, 인스타그램에 등록한 사진, 버스/지하철에서 찍은 교통카드, 카페에서 구매한 아이스 아메리카노 등의 정보가 모두 데이터베이스에 기록
DBMS
데이터베이스를 관리하고 운영하는 소프트웨어 DBMS(Database Management System)
다양한 데이터가 저장되어 있는 데이터베이스는 여러 명의 사용자나 응용 프로그램과 공유하고 동시에
접근이 가능해야 함.
예를 들어 여러 명의 예금 계좌 정보를 모아 놓은 것이 데이터베이스입니다.
은행이 가지고있는 예금 계좌 데이터베이스에는 여러 명이 동시에 접근할 수 있습니다.
이러한 것이 가능한 이유가 DBMS때문이다.

출처 - https://hongong.hanbit.co.kr/데이터베이스-이해하기-databasedb-dbms-sql의-개념/
[데이터베이스 이해하기] Database(DB), DBMS, SQL의 개념
데이터베이스(Database, DB)란? : 데이터의 저장소. DBMS(Database Management System, 데이터베이스 관리 시스템)란? 데이터베이스를 운영하고 관리하는 소프트웨어. 계층형, 망형, 관계형 DBMS 중 대부분의 DBM
hongong.hanbit.co.kr

출처 - https://hongong.hanbit.co.kr/데이터베이스-이해하기-databasedb-dbms-sql의-개념/
[데이터베이스 이해하기] Database(DB), DBMS, SQL의 개념
데이터베이스(Database, DB)란? : 데이터의 저장소. DBMS(Database Management System, 데이터베이스 관리 시스템)란? 데이터베이스를 운영하고 관리하는 소프트웨어. 계층형, 망형, 관계형 DBMS 중 대부분의 DBM
hongong.hanbit.co.kr
DBMS 분류
- 계층형 DBMS
- 망형 DBMS
- 관계형 DMBS
- 관계형 DBMS(Relational DBMS)는 줄여서 RDBMS라고 부릅니다. MySQL뿐만 아니라, 대부분의 DBMS가 RDBMS 형태로 사용됩니다. RDBMS의 데이터베이스는 테이블(table)이라는 최소 단위로 구성되며, 이 테이블은 하나 이상의 열(column)과 행(row)으로 이루어져 있습니다.
SQL: DBMS에서 사용하는 언어
SQL(Structured Query Language)은 관계형 데이터베이스에서 사용되는 언어로, ‘에스큐엘’ 또는 ‘시퀄’로 읽습니다. 관계형 DBMS 중 MySQL를 배우려면 SQL을 필수로 익혀야 합니다. SQL이 데이터베이스를 조작하는 ‘언어’이긴 하지만 일반적인 프로그래밍 언어(C, 자바, 파이썬 등)와는 조금 다른 특성을 갖습니다.
SQL vs NOSQL
SQL (Relational Database)
데이터를 엑셀과 같이 정해진 틀(데이터 스키마)에 따라 테이블에 저장합니다.
- 장점
- 명확하게 정의된 스키마, 데이터 무결성 보장
- 관계는 각 데이터를 중복없이 한번만 저장
- 단점
- 덜 유연함. 데이터 스키마를 사전에 계획하고 알려야 함. (나중에 수정하기 힘듬)
- 관계를 맺고 있어서 조인문이 많은 복잡한 쿼리가 만들어질 수 있음
- 대체로 수직적 확장만 가능함
- 제품 : MySQL, PostgreSQL, Oracle 등
NoSQL
SQL 진영보다 데이터를 자유롭게 다양한 형태로 저장합니다. (일반적으로 Schema-less, 즉 정해진 구조가 없고, 관계도 없습니다)
- 장점
- 스키마가 없어서 유연함. 언제든지 저장된 데이터를 조정하고 새로운 필드 추가 가능
- 데이터는 애플리케이션이 필요로 하는 형식으로 저장됨. 데이터 읽어오는 속도 빨라짐
- 수직 및 수평 확장이 가능해서 애플리케이션이 발생시키는 모든 읽기/쓰기 요청 처리 가능
- 단점
- 유연성으로 인해 데이터 구조 결정을 미루게 될 수 있음
- 데이터 중복을 계속 업데이트 해야 함
- 데이터가 여러 컬렉션에 중복되어 있기 때문에 수정 시 모든 컬렉션에서 수행해야 함 (SQL에서는 중복 데이터가 없으므로 한번만 수행이 가능)
- 제품 : Firestore, MongoDB, Redis 등
'TIL' 카테고리의 다른 글
| 2022.12.12 입문 주차 복습, 영속성 (0) | 2022.12.12 |
|---|---|
| [WIL] 2022.12.05 ~ 12.09 스프링 입문 (1) | 2022.12.12 |
| [WIL] 2022.11.28 ~ 12.02 미니 프로젝트 발표와 자바 심화 (0) | 2022.12.04 |
| 2022.12.02 테스트 코드와 Thread (1) | 2022.12.04 |
| 2022.11.30 JVM 구조 (0) | 2022.11.30 |