CS/데이터베이스 3

(CS) 데이터베이스 - 질문

질문 1: 데이터베이스 정규화(Normalization)란 무엇이며, 그 목적은 무엇인가요?​답변: 데이터베이스 정규화는 데이터의 중복을 줄이고 무결성을 향상시키기 위해 관계형 데이터베이스를 정규화된 형태로 재디자인하는 과정입니다. 이를 통해 데이터 삽입, 수정, 삭제 시 발생할 수 있는 이상 현상을 방지하고, 데이터베이스 구조 확장 시 재디자인을 최소화할 수 있습니다. ​꼬리질문 1-1: 정규화의 단계에는 어떤 것들이 있으며, 각 단계의 특징은 무엇인가요?​답변: 정규화는 일반적으로 제1 정규형(1NF)부터 제3 정규형(3NF), 그리고 보이스-코드 정규형(BCNF)까지 진행됩니다. 1NF는 모든 컬럼이 원자값을 갖도록 하여 중복과 반복을 없애는 것이며, 2NF는 부분 함수적 종속성을 제거하여 모든 속..

(CS) 데이터베이스 - 트랜잭션, 인덱스, 조인

트랜잭션과 무결성트랜잭션DB에서 하나의 논리적 기능을 수행하기 위한 작업의 단위여러개의 쿼리들을 하나로 묶는 단위 원자성(atomicity)트랜잭션과 관련된 일이 모두 수행 되거나, 모두 안되거나를 보장하는 특징커밋과 롤백으로 인해, 데이터의 무결성 보장커밋여러 쿼리가 성공적으로 처리되었다고 확정하는 명령어롤백트랜잭션으로 처리한 하나의 묶음 과정을 일어나기 전으로 돌리는 일일관성(consistency)허용된 방식으로만 데이터를 변경해야하는 것 격리성(독립성, isolation)트랜잭션 수행시, 트랜잭션 간에 독립적으로 수행이 가능하는 것격리 수준에 따라 발생하는 현상팬텀 리드- 한 트랜잭션 내에서 동일한 쿼리를 보냈지만, 조회 결과가 다른 경우 ex)키 170cm 이상 회원 조회 → 3명키 175cm 회..

(CS) 데이터베이스 - 기본 및 정규화

데이터 베이스의 기본데이터 베이스(DataBase - DB)일정한 규칙을 통해 구조화되어 저장되는 데이터의 모음DB를 제어, 관리하는 통합 시스템을 DBMS(DataBase Management System)라고 함실시간 접근 및 동시 공유 가능아래는 프로그램과 DBMS, DB간의 관계도를 그림으로 나타낸 것.  엔터티(entity)여러 개의 속성을 가진 명사A가 혼자서 존재하지 못하고, B의 존재에 따라 종속적이라면, A는 약한 엔티티, B는 강한 엔티티 (ex. 방 : 약한, 건물 : 강한)  릴레이션(relation)DB 에서 정보를 구분하여 저장하는 기본 단위관계형 데이터베이스 → " 테이블 ", NoSQL 데이터베이스 → " 컬렉션 "로 칭함행 하나(레코드)의 집합 → 릴레이션의 집합 → 테이블의..