1-1. Database 정리
Database란?
데이터베이스(Database)는 데이터의 집합이다.
여러 응용 시스템에서 사용하는 정보를 통합해서 저장/운영할 수 있는 공용 데이터의 집합이며, 데이터를 효율적으로 저장·검색·갱신할 수 있도록 서로 연관된 데이터들을 조직화한다.
데이터베이스의 특성
- 실시간 접근성: 사용자의 요구를 즉시 처리할 수 있다.
- 계속적인 변화: 삽입/삭제/수정으로 데이터를 지속적으로 갱신한다.
- 동시 공유성: 여러 사용자가 동시에 같은 데이터에 접근할 수 있다.
- 내용 기반 참조: 데이터의 위치가 아니라 내용(값) 에 따라 참조한다.
데이터베이스의 기본 구성 요소
- 테이블(Table): 데이터를 저장하는 기본 단위
- 행(Row): 하나의 데이터 항목(예: 학생 1명의 정보)
- 열(Column): 데이터의 속성(예: 이름, 학번, 학과)
- 키(Key): 각 행을 고유하게 식별하는 값(예: PK)
DBMS(Database Management System)
DBMS는 데이터베이스를 생성/관리/조작하기 위한 소프트웨어다.
- 정의 기능(DDL): 데이터베이스의 논리적/물리적 구조를 정의
- 조작 기능(DML): 데이터를 검색/삭제/갱신/삽입
- 제어 기능(DCL): 데이터의 정확성·무결성·보안을 유지하고 안정성을 확보
관계형 데이터베이스(RDB) 특징
- 데이터를 테이블 형태로 저장한다.
- 테이블 간 관계(relationship) 로 데이터를 연결한다.
- SQL로 데이터를 조작한다.
- 무결성(Integrity) 과 일관성(Consistency) 을 보장한다.
Docker 정리
Docker란?
Docker는 프로그램을 실행할 수 있게 포장해주는 컨테이너 기반 실행 환경이다.
쉽게 말해, “프로그램을 담는 상자”라고 보면 된다.
- MySQL, Redis, MongoDB 같은 프로그램을 컨테이너(Container) 라는 상자에 담아 실행한다.
- 복잡한 설치 과정 없이 명령어 한 번으로 실행할 수 있다.
- 삭제도 간단하다(컨테이너만 지우면 정리됨).
꼭 알아야 할 Docker 용어 3가지
1) 이미지(Image)
프로그램이 들어있는 설치 파일(템플릿) 이다.
예: mysql:8.0 = MySQL 8.0 버전 이미지
2) 컨테이너(Container)
이미지를 실행한 실제 동작 중인 프로그램(인스턴스) 이다.
하나의 이미지로 여러 컨테이너를 만들 수 있다.
3) Docker Hub
이미지를 다운로드하는 공식 레지스트리(앱스토어 같은 곳)
hub.docker.com에서 다양한 프로그램 이미지를 제공한다.