정규화(1,2,3,BNCF) 쉽게 이해하기
개요 목적 이번 시간에는 데이터 베이스 정규화에 대해서 알아본다. 데이터 베이스 정규화란, 잘못된 데이터 베이스 설계에서 발생하는 이상현상을 해결하고, 저장 공간을 효율성을 증가하기 위해, 테이블을 여러개로 분리하는 과정이다. 정규화 방법에는 1차, 2차, 3차, BCNF, 4차, 5차 정규화가 있다. 실무에서 주로 쓰이는 1, 2, 3, BNCF 정규화 방법과 예시를 통해 어떻게 데이터를 깔끔하고, 이상 현상을 방지하는 지 알아보자. 이상현상이란, 데이터베이스의 설계를 잘못하게 되었을 때 데이터 삽입, 갱신, 삭제 연산을 수행할 대 부작용이 발생하는 것을 의미한다. ex) 삽입 이상 - 불필요한 데이터도 같이 삽입해야 하는 문제 윤성빈은 이벤트에 참여하지 않았는데, 관련 컬럼이 있어서, null이라는 ..
데이터베이스 구성 요소와 키(PK, FK)에 대한 이해
개요 목적 이번 글에서는 데이터 베이스 구성 요소에 대한 용어 설명과 PK와 FK와 중심으로 데이터를 구별해주는 데이터베이스 키에 대해서 알아본다. 엔티티, 릴레이션, 속성, 도메인 엔티티 엔티티는 비지니스 서비스의 요구에 맞춰 여러 개의 속성을 지닌 명사이다. 예를 들어, 게임 서비스에서 가입자를 나타내기 위해 아이디, 비밀번호, 이름, 생년월일, 별명의 속성을 지닌 회원 엔티티를 만들 수 있다. 릴레이션 위에서 만든 엔티티가 데이터베이스에서 관리될 때 릴레이션이라는 단위로 변화한다. 릴레이션이란, 데이터베이스에서 정보를 구분하여 저장하는 가장 기본 단위이다. 릴레이션은 관계형 데이터베이스에서는 테이블이라고 하고, NoSQL에서는 컬랙션이라고 한다. 예를 들어, 관계형 데이터 베이스 회원 테이블(릴레이..
RDBMS 관계형 데이터 베이스 이해하기
개요와 목적 이번 시간에는 관계형 데이터에 대해서 알아본다. 관계형 데이터 베이스의 뿌리가 되는 데이터 베이스에 대해서 먼저 알아보고, 관계형 데이터 베이스 핵심인 테이블 연결 기능이 어떤 편리함을 주는 지 알아본다. 마지막으로 관계형 데이터 베이스의 구조도 알아본다. 데이터 베이스란, 필요성과 기능. RDBMS전에, 기반이 되는 데이터베이스의 필요성과 데이터를 관리 하는 기능을 알아보자. 파일을 통해, 데이터를 관리하는 것이 얼마나 불편한 지 알게 되면, 데이터 베이스의 필요성과 기능을 파악할 수 있다. 텍스트 파일을 통해서, 제목, 내용, 날짜, 저자, 저자 프로필을 파일로 관리한다면 문제점이 무엇이 있을까? 이렇게 파일 형식으로 한다면, egoing이라는 저자가 작성한 데이터를 찾으려면 모든 파일을..