DataBase (데이터베이스)
1. 데이터베이스 (Database)
- 데이터베이스는 체계적으로 구성된 데이터의 집합으로, 효율적인 관리와 검색을 위해 구조화되어 있습니다.
- 정보를 지속적으로 저장, 관리하고, 여러 사용자 또는 응용 프로그램이 안전하게 접근할 수 있도록 하는 것이 목적
2. 데이터베이스 관리 시스템 (DBMS)
- DBMS (DataBase Management System)
- 데이터베이스를 생성, 관리, 조작하는 소프트웨어 시스템으로, 사용자와 데이터 사이의 상호 작용을 관리
- MySQL, PostgreSQL, Oracle Database, Microsoft SQL Server 등이 DBMS의 예시
3. 관계형 데이터베이스 (RDB)
- RDB (Relational DataBase)
- 데이터를 테이블 형태로 구조화하고, 테이블 간에 관계를 정의하여 데이터를 저장하는 데이터베이스 유형
- 테이블, 열, 행, 기본키, 외래키 등이 관계형 데이터베이스의 기본 구성 요소
4. 데이터베이스 설계
- 데이터베이스의 구조를 결정하고, 어떻게 데이터를 저장하고 조작할지를 계획하는 단계
- 개체-관계 모델(ER 모델)을 사용하여 엔터티, 속성, 관계를 정의하고, 정규화를 통해 데이터 중복을 최소화
5. 데이터베이스 언어 및 쿼리
- SQL: Structured Query Language의 약자로, 데이터베이스에서 데이터를 조작하기 위한 표준화된 언어
- 쿼리: SELECT, INSERT, UPDATE, DELETE 등의 SQL 명령어를 사용하여 데이터를 조회, 삽입, 수정, 삭제 가능
6. 정규화와 역정규화
- 정규화: 중복을 최소화하고 데이터의 일관성을 유지하기 위해 테이블을 분해하는 과정
- 역정규화: 성능 향상을 목적으로 정규화된 데이터베이스를 다시 결합하는 과정으로, 쿼리 성능 향상 가능
7. 데이터베이스 보안 및 권한 관리
- 보안: 민감한 데이터에 대한 접근을 제한하고, 데이터의 무결성을 유지하는 것이 중요
- 권한 관리: 사용자 및 역할에 따라 데이터베이스 객체에 대한 접근 권한을 부여하고 제어
8. 트랜잭션 관리
- 트랜잭션: 여러 데이터베이스 작업을 하나의 논리적 단위로 묶어서 처리하는 것으로, 일관성을 보장
- ACID 특성: 원자성(Atomicity), 일관성(Consistency), 고립성(Isolation), 지속성(Durability)을 유지하여
트랜잭션을 안전하게 처리합니다.
9. 분산 데이터베이스
- 여러 지리적 위치에 분산된 서버에 데이터를 저장하고 관리하는 데이터베이스 시스템
- 데이터 접근을 지역적으로 최적화하고, 부하 분산과 고가용성을 향상시킬 수 있습니다.
10. NoSQL 데이터베이스
- NoSQL (Not Only SQL)
- 비관계형 데이터 모델을 사용하여 대용량 및 분산 데이터 저장을 지원하는 데이터베이스
- Document-oriented, Key-Value, Graph 등이 NoSQL 데이터베이스의 주요 유형
본 게시글은 ChatGPT의 도움을 받아 작성하였습니다.
'Language > MySQL' 카테고리의 다른 글
CONCAT 함수 (0) | 2024.01.05 |
---|---|
재귀 함수 (0) | 2024.01.04 |
REGEXP (정규 표현식) (2) | 2024.01.02 |
SQL 집합 연산자 (0) | 2023.12.29 |
SQL문 기본 구조 (0) | 2023.12.25 |