데이터베이스(Database)
: 여러 사람이 데이터를 한 군데에 모아놓고 여러 사람이 사용할 목적으로 관리하는 데이터 저장소
* 보통 MySQL, 오라클, 프스트그레SQL을 DB(데이터베이스)라고 하지DBSM로서 DB를 관리하기 위한 데이터베이스 관리 시스템을 의미함
관계형 데이터베이스 (Relational Database; RDB)
: 데이터를 행(Row)과 열(Column)로 이루어진 테이블로 관리
: 기본키(Primary Key; PK)를 사용해 각 행을 식별
: 각 테이블 간의 관계(Relation)를 지을 수 있음
: 데이터의 저장, 질의, 수정, 삭제가 용이하지만 성능을 올리기 쉽지 않음
* RDB로 유명한 DB로는 오라클, MySQL, SQL 서버, 포스트그레SQL이 존재
SQL(Structured Query Language)
: 쿼리, 즉, 데이터 검색을 하는 언어
: ANSI 표준 SQL도 존재하며, 각 RDB별 방언도 존재
NOSQL
: SQL을 쓰지 않는다는 의미로 사용되기도 하지만, 최근에는 Not Only SQL의 의미로 사용
: RDB의 성능을 올리기 쉽지 않은 문제를 해결
* RDB는 성능을 올리기 위해서는 머신의 성능을 좋게하는 스케일 업 또는 머신을 여러 대로 분리하는 스케일 아웃이 필요
- 스케일 업 : 장비를 업그레이드가 가능
- 스케일 아웃 : 데이터베이스를 분산할 경우 트랜잭션을 사용하면 성능이 떨어지는 문제 발생
'학습 기록 > 스프링 부트3 백엔드 개발자 되기[자바편]' 카테고리의 다른 글
[01장.4] 라이브러리와 프레임워크 (0) | 2023.06.29 |
---|---|
[01장.3] 아이피와 포트 (0) | 2023.06.29 |
[01장.1] 서버와 클라이언트 (0) | 2023.06.29 |
[01장] 자바 백엔드 개발자가 알아두면 좋은 지식 (0) | 2023.06.29 |
[00장] 시작 + 개발환경 구축하기 (0) | 2023.06.29 |