RDBMS 2

MySQL(3)

- MySQL의 구조MySQL 엔진 - 요청된 SQL 문장을 분석하거나 최적화하는 등 DBMS의 두뇌에 해당하는 처리를 수행스토리지 엔진 - 실제 데이터를 스토리지에 저장하거나 데이터를 읽어오는 부분을 전담핸들러 API - 이 핸들러 API를 이용해 스토리지 엔진과 MySQL 엔진이 데이터를 주고 받음 - MySQL 스레딩 구조MySQL 서버는 스레드 기반으로 작동하며, 크게 포그라운드 스레드와 백그라운드 스레드로 구분할 수 있다.포그라운드 스레드 (클라이언트 스레드)포그라운드 스레드는 최소한 MySQL 서버에 접속된 수만큼 존재하며, 주로 각 클라이언트 사용자가 요청하는 쿼리 문장을 처리클라이언트 사용자가 작업을 마치고 커넥션을 종료하면 해당 커넥션을 담당하던 스레드는 다시 스레드 캐시로 되돌아감이미 ..

Database 2023.09.19

TIL. 인덱스(INDEX)

인덱스인덱스란 원하는 데이터를 빠르게 찾을 수 있도록 특정 컬럼을 복사해서 정렬해둔 컬럼이다. - index가 없는 경우: 모든 행을 다 뒤짐 - index가 있는 경우: index에서 원하는 데이터를 빠르게 찾음  ->  index와 연결된 원래 테이블의 행을 가져옴  보통의 인덱스 구조는 트리 형태로 구성 - B-tree: 일반적인 트리의 노드에 데이터를 여러개 넣어둠  ㄴ 데이터의 양에 따라 한번에 3분의1, 4분의1 씩 검색해야할 데이터의 양을 줄이면서 찾을 수 있음 - B+tree: 리프 노드에만 데이터를 보관하고 나머지 노드에는 가이드만 넣어둠 + 리프 노드끼리 서로 연결함  ㄴ 범위검색에 이점 인덱스가 사용이 안되는 경우(참조: dbcafe) 1. 인덱스 컬럼 절을 변형한 경우 > 예시: 컬..

Database 2023.02.09