[DB] 데이터베이스 설계 전체 과정
DB2025. 1. 19. 00:56[DB] 데이터베이스 설계 전체 과정

데이터베이스 설계 전체 과정저장해야 할 데이터 파악요구사항 또는 디자인(UI)를 보고 저장해야 할 데이터를 파악그룹핑해서 분류하기관련성 있는 데이터를 묶어 그룹핑그룹핑할 수 있는 상위 개념을 찾아 데이터 구조화6가지 규칙 적용시키면서 테이블 분류하기아래 규칙에 따라 테이블을 설계규칙 1. 한 칸에는 한 가지 정보만 들어가도록 만든다. (제1정규형)한 칸에는 반드시 한 가지 정보만 포함되어야 함한 칸에 두 가지 정보가 들어가 있는 경우, 테이블을 분리하고 FK(Foreign Key)를 활용한 가지 정보라는 기준은 서비스에서 데이터를 사용하는 방식에 따라 달라질 수 있음예시: 잘못된 설계주소가 한 칸에 통합된 경우사용자 ID이름주소1홍길동서울시 강남구2김영희부산시 해운대구수정 후: 올바른 설계주소를 시와 구..

[DB] 데이터베이스 설계 핵심 1가지
DB2025. 1. 19. 00:41[DB] 데이터베이스 설계 핵심 1가지

데이터베이스 설계 핵심 1가지데이터베이스 설계의 핵심은 "중복 없애기"이다.데이터 중복이 생기게끔 테이블 설계를 하면 데이터 간의 관계가 꼬일 수 있음따라서 테이블을 설계할 때 중복이 발생하지 않도록 설계해야 함데이터 중복 문제 발생 시 정규화(Normalization) 과정을 통해 데이터 중복을 제거할 수 있음정규화(Normalization)란?데이터베이스를 설계할 때 중복을 제거하고, 데이터 무결성을 유지하기 위해 데이터를 여러 테이블로 나누는 과정정규화를 통해 데이터 중복을 최소화하고, 효율적인 데이터 저장 및 관리가 가능해짐예시: 중복된 테이블 설계Before: 중복된 테이블 설계[고객 테이블]주문 ID고객 이름고객 이메일제품 이름1홍길동hong@example.com스마트폰2홍길동hong@exam..

[DB] 데이터베이스 네이밍 규칙
DB2025. 1. 18. 23:22[DB] 데이터베이스 네이밍 규칙

데이터베이스 네이밍 규칙데이터베이스 설계 시 네이밍 규칙을 일관성 있게 적용하면 가독성을 높이고, 협업 및 유지보수를 용이하게 할 수 있음. 아래는 효율적인 데이터베이스 네이밍 규칙을 정리한 내용임1. 테이블명과 컬럼명을 소문자로 작성테이블명과 컬럼명을 대소문자를 혼용하지 않고, 소문자로 작성 운영체제 및 데이터베이스 환경에 따라 대소문자 처리 방식이 다를 수 있음예시:SELECT user_id, user_name FROM users;2. snake_case 사용단어 간 띄워쓰기를 할 때 snake_case를 사용 참고 : 스네이크 케이스(Snake case) - MDN Web Docs 용어 사전 가독성을 높이고 일관성을 유지함일부 데이터베이스나 툴에서는 공백을 제대로 처리하지 못하므로 이를 방지 ..

[DB] 관계형 데이터베이스(RDBMS) 구성
DB2025. 1. 18. 23:04[DB] 관계형 데이터베이스(RDBMS) 구성

관계형 데이터베이스 구성 (RDBMS)관계형 데이터베이스(Relational Database Management System, RDBMS)는 데이터를 표 형식으로 저장하고 관리하는 데이터베이스 관리 시스템임. 이 구조는 데이터를 테이블(Table) 단위로 구성하며, 각각의 테이블은 행(Row) 과 열(Column) 로 구성됨구성 요소Table (표)데이터를 저장하는 기본 단위로, 행(Row)과 열(Column)의 조합으로 구성됨 하나의 테이블은 특정 주제나 개체를 표현함 (예: 사용자, 제품, 주문 등)Column (열)테이블 내에서 데이터를 저장하는 속성(Attribute)이나 필드를 나타냄 각 열은 특정 데이터 유형과 형식을 가짐 (예: 이름, 나이, 이메일 등)예시: 이름, 나이, 주소Row (..

[DB] 데이터베이스 모델링이란?
DB2025. 1. 18. 22:58[DB] 데이터베이스 모델링이란?

데이터베이스 모델링이란?데이터베이스 모델링은 데이터를 어떻게 분류하고 저장할지를 설계하는 행위를 의미함. 데이터 모델링은 흔히 DB 설계라고도 불리며, 데이터의 구조를 체계적으로 정리하고 저장 방법을 결정함으로써 데이터를 효율적으로 관리하고 활용할 수 있도록 함.데이터베이스 모델링의 목적효율적인 데이터 저장데이터를 중복 없이 저장하여 저장 공간을 절약하고 검색 속도를 높임 데이터의 일관성 유지데이터 간의 관계를 명확히 정의해 데이터 무결성을 보장함 요약데이터베이스 모델링은 데이터 관리와 저장의 핵심적인 부분으로, 데이터를 효율적이고 일관되게 유지할 수 있도록 설계하는 과정임

[DB] 지속성(Durability)
DB2024. 12. 1. 16:41[DB] 지속성(Durability)

지속성(Durability)지속성(Durability)이란 데이터베이스 시스템에서 트랜잭션이 성공적으로 커밋되었을 경우, 그 변경사항이 비휘발성(non-volatile) 저장소에 영구적으로 저장되어 시스템 장애가 발생하더라도 손실되지 않도록 보장하는 성질을 말함. 이는 데이터베이스의 ACID 속성 중 하나임.지속성의 핵심 원칙트랜잭션 커밋 이후:트랜잭션이 커밋되면, 해당 변경사항은 반드시 디스크와 같은 비휘발성 저장소에 영구적으로 저장되어야 함.예를 들어, 전자상거래에서 사용자가 결제를 완료(커밋)한 이후에는 시스템이 꺼지거나 문제가 발생하더라도 결제 내역이 보존되어야 함.장애 복구 가능성:장애 발생 시에도 트랜잭션의 커밋 상태는 항상 복구 가능해야 함.지속성을 보장하기 위한 기술들WAL (Write A..

[DB] 일관성(Consistency)
DB2024. 12. 1. 16:36[DB] 일관성(Consistency)

데이터베이스의 일관성 (Consistency)데이터 일관성은 데이터베이스 및 시스템에서 중요한 개념으로, 데이터의 정확성과 신뢰성을 유지하기 위한 여러 원칙과 메커니즘으로 구성됨. 이를 크게 두 가지로 나눌 수 있음:1. 데이터 자체의 일관성 (Consistency in Data)데이터 자체의 일관성은 데이터가 시스템 내에서 항상 올바른 상태를 유지하는 것을 의미함. 이는 아래의 원칙들로 정의됨:- 사용자 정의 규칙 (Defined by the user)사용자가 설정한 비즈니스 규칙이나 데이터 제약 조건을 만족해야 함.예: 고객의 나이가 음수일 수 없거나, 제품의 가격이 0보다 작을 수 없음.- 참조 무결성 (Referential Integrity)데이터베이스에서 외래 키를 사용하는 경우 참조 무결성을 ..

[DB] 고립성(Isolation)
DB2024. 12. 1. 01:54[DB] 고립성(Isolation)

데이터베이스의 고립성(Isolation)데이터베이스에서 고립성(Isolation)은 트랜잭션이 서로 영향을 주지 않고 독립적으로 실행될 수 있도록 보장하는 ACID 특성 중 하나임.이는 여러 트랜잭션이 동시에 실행될 때, 각 트랜잭션이 자신의 작업을 마칠 때까지 다른 트랜잭션의 영향을 받지 않음을 의미함.트랜잭션과 고립성트랜잭션이란?데이터베이스의 논리적 작업 단위.여러 작업이 하나의 작업 단위로 실행되고, 모두 성공하거나 모두 실패해야 함.예: 은행 계좌 간 송금 시, 한 계좌에서 돈을 인출하고 다른 계좌로 입금하는 작업.고립성의 필요성트랜잭션이 실행되는 동안, 다른 트랜잭션의 중간 상태를 읽거나 영향을 받지 않아야 데이터의 일관성과 신뢰성을 유지할 수 있음.읽기 현상(Read Phenomena)고립성 ..

image