- 학습 목표 1. DB Schema, Index, Join
데이터베이스의 구조, 형식을 나타내는 용어 / 테이블, 필드, 관계 등을 정의하는 메타데이터
-
개념적 스키마
- DB에 저장될 데이터들의 개념과 관계를 테이블로 정의하는 모델
-
논리적 스키마
- 개념적 스키마의 테이블 속 컬럼과 타입 등을 정의하는 모델
-
물리적 스키마
- 논리적 스키마를 실제 DB에 적용한 단계
-
스키마를 알아야 하는 이유
- DB 설계와 관리를 효과적으로 수행하기 위해
테이블의 각 행을 빠르게 식별하고 검색 성능을 향상시키는 중요한 데이터베이스 구조
책의 목차처럼, 특정 데이터를 빠르게 찾을 수 있도록 돕는 역할을 한다.
🚨 재설정 시간: 인덱스를 수정하거나 재설정하려면 기존 인덱스를 삭제(DROP)하고 다시 생성(CREATE)해야 합니다. 이 과정은 테이블 크기가 클수록 시간이 오래 걸릴 수 있습니다.
🚨 삽입 및 업데이트 성능: 인덱스가 많아질수록 데이터를 삽입하거나 수정할 때 성능이 저하될 수 있으므로 적절히 설계해야 합니다.
여러 테이블의 데이터를 결합하여 하나의 집합을 만드는 연산
-
JOIN 사용이유
- 테이블 간의 관계 표현, 효율성, 유지보수성
-
INNER JOIN
- 두 개 이상의 테이블에서 겹치는 부분만 조회하는 연산
-
LEFT JOIN
- FROM절을 기준으로 JOIN의 왼쪽에 있는 테이블의 모든 레코드와 오른쪽 테이블의 겹치는 레코드만 반환하는 연산
-
RIGHT JOIN
- FROM 절을 기준으로 JOIN의 오른쪽에 있는 테이블의 모든 레코드와 왼쪽 테이블의 겹치는 레코드만 반환하는 연산
-
CROSS JOIN
- 두 개 이상의 테이블을 엮었을 떄 나올 수 있는 모든 경우의 수를 반환하는 연산
- RDS 생성 및 연동 후 쿼리 날려보기
- 다른 프로젝트에서 프론트를 하면서 동시에 디비까지 비동기 처리 중인데 매우 정신이 없는 거 같다. 정신이 없는데 재미있는 거 같기도 하고 아닌 거 같기도 하고...
- Index 개념이 모호하다 잘 모르겠다. 공부를 더 해봐야 할 거 같다.