DBMS/DBMS Common 6

[DBMS] Common(6) - 데이터베이스 성능 및 관리

인덱스(Index)정의 및 필요성데이터베이스에서 원하는 데이터를 빠르게 찾기 위해 사용되는 구조. 테이블의 데이터가 많아지면 원하는 데이터를 찾기 위해 전체 테이블을 처음부터 끝까지 읽어야하는 비효율이 발생하는데 (Full Table Scan), 인덱스를 사용하면 검색 범위를 크게 줄여 조회 속도를 비약적으로 향상시킴인덱스의 동작 방식특정 컬럼(또는 여러 컬럼)의 값을 미리 정렬된 형태로 저장하고 해당 값이 저장된 데이터 레코드의 물리적 주소나 식별자를 함께 기록해둠. 검색시에는 인덱스 구조를 빠르게 탐색하여 원하는 데이터의 위치를 파악한 후, 해당 위치의 데이터를 가져옴인덱스의 종류B-Tree 인덱스가장 일반적이고 널리 사용되는 인덱스 구조범위 검색과 등가 검색 모두에 효율적임대부분의 관계형 DBMS가..

DBMS/DBMS Common 2025.09.12

[DBMS] Common(5) - 트랜잭션 및 동시성 제어

트랜잭션(Transaction)개념 및 특징트랜잭션데이터베이스의 상태를 변화시키는 하나의 논리적인 작업단위예시A계좌 잔액 조회A계좌에서 10,000원을 차감B계좌 잔액 조회B계좌에 10,000원을 추가변경사항을 DB에 반영은행 시스템에서 A계좌에서 B계좌로 10,000원을 이체하는 작업은 아래와 같은 단계로 분리위 단계가 모두 성공하거나 모두 실패해야만 데이터 일관성이 유지된다트랜잭션은 일반적으로 BEGIN TRANSACTION 으로 시작하여 COMMIT 또는 ROLLBACK 으로 종료됨ACID 속성트랜잭션이 안전하고 신뢰성있게 수행되기 위해 DBMS가 보장해야하는 네가지 속성Atomicity(원자성) : 트랜잭션 시작과 종료 사이에 모든 변경이 정상적이면 모드 저장(Commit)되어아햐고 문제가있으면 ..

DBMS/DBMS Common 2025.09.12

[DBMS] Common(4) - 데이터베이스 설계 및 정규화

데이터베이스 설계단계데이터베이스 설계는 현실 세계의 요구사항을 수집하여 컴퓨터가 이해할 수 있는 데이터베이스 스키마로 변환하는 과정요구사항 분석데이터베이스를 사용할 조직이나 사용자의 필요와 요구사항을 수집하고 분석하는 단계어떤 데이터가 필요하고, 어떤 기능(조회,등록, 수정, 삭제)이 필요한지, 어떤 제약조건이 있는 지 파악결과 : 요구사항 명세서개념적 설계수집된 요구사항을 바탕으로 특정 DBMS에 독립적인 개념적인 데이터 모델을 만듬데이터의 핵심적인 개체(Entity)와 개체 간의 관계(Relationship)를 파악하고 표현주로 E-R 다이어그램과 같은 도구를 사용하여 시각적 표현결과 : 개념 스키마 (주로 E-R 다이어그램)논리적 설계개념적 설계에서 얻은 개념 스키마를 특정 DBMS가 지원하는 논리..

DBMS/DBMS Common 2025.09.12

[DBMS] Common(3) - SQL

개요 및 표준SQLStructured Query Language; 구조화된 질의어관계형 데이터베이스의 데이터를 관리하고 처리하기 위한 표준 언어대부분의 관계형 DBMS(MySQL, PostgreSQL, Oracle 등)에서 사용됨SQL 표준ANSI (미국 표준 협회)와 ISO(국제 표준화 기구)에서 SQL 표준을 제정하고 관리DBMS 제조사는 이 표준을 따르면서도 자사만의 고유한 기능이나 문법 추가하기도 함SQL 문법기능에 따라 크게 네가지 종류로 구분DDL(Data Definition Language)데이터베이스 스키마를 정의, 수정, 삭제하는데 사용데이터베이스 객체(테이블, 인덱스, 뷰 등)를 생성하거나 변경할 때 사용주요 명령여CREATE : 데이터베이스 객체 생성CREATE DATABASE : 데..

DBMS/DBMS Common 2025.09.12

[DBMS] Common (2) - Data Model

데이터 모델정의현실 세계의 데이터를 데이터베이스에 어떻게 저장하고 관리할 것인지에 대한 논리적인 구조와 규칙을 정의한 것. 어떤 모델을 사용하느냐에 따라 저장방식, 관계 표현 방식, 데이터 표현 방식 등이 달라짐종류계층 모델 (Hierarchical Model)데이터를 트리 구조로 표현부모-자식 관계가 명확하며 데이터 검색은 빠르지만 관계의 유연성이 떨어지고 다대다 관계표현 어려움 (과거에 사용되던 모델)망 모델 (Network Model)데이터를 그래프 형태로 표현계층 모델보다 더 복잡한 관계 표현 가능구조가 복잡해 이해 및 사용 어려움 (과거 사용 모델)관계형 모델 (Relational Model)가장 보편적으로 사용되는 모델2차원 테이블 형태로 표현하며, 테이블 간의 관계는 키를 이용해 나타냄표준 ..

DBMS/DBMS Common 2025.09.10

[DBMS] Common(1) - Database System

데이터베이스데이터베이스는 단순히 데이터를 모아놓은 것이 아니라, 여러 응용 시스템들이 공유하고 사용할 수 있또록 관련성 있는 데이터들의 집합을 체계적으로 저장 및 관리하는 저장소를 의미한다.데이터의 정의와 특성데이터 : 현실 세계에서 관찰하거나 측정하여 얻은 사실(Fact)이나 값(Value)을 의미. 예를 들어 ‘홍길동’, ‘20세’, ‘서울’과 같은 것들이 데이터정보 : 데이터를 가공하거나 처리하여 얻은 의미 있는 결과를 정보라고 함데이터의 특성(데이터베이스 관점)통합된 데이터 : 여러 사용자가 공동으로 사용할 수 있도록 중복을 최소화하여 통합된 데이터저장된 데이터 : 컴퓨터가 접근할 수 있는 저장 매체에 저장된 데이터운영 데이터 : 단순한 데이터 모음이 아니라, 조직 고유 기능을 수행하기 위해 꼭 ..

DBMS/DBMS Common 2025.09.10