본문 바로가기
Mysql

Mysql 엔진

by NaHyungMin 2019. 3. 7.

InnoDB 스토리지 엔진 특성(MS-SQL과 거의 유사)


기본 키에 의한 순차 저장


잠금이 필요 없는 일관된 읽기

 4단계 읽기 단계로 인한 레코드(ROW 레벨) 락 제공

  - 데이터 변경 전 Undo 로그 사용

  - READ-UNCOMMITTED

  - READ-COMMITTED

  - REPEATABLE-READ-COMMITTED

 

외래 키 지원(물리적 개념은 알지만 거의 사용 안해봄)


자동 데드락 감지


자동화된 장애 복구

 데이터 파일 손상 시, 강제 리커버리 하는 듯

 

MyISAM

 - OS의 캐시 기능 사용, 캐시 우선 순위 밀릴 수도 있음, 당연히 그러면 느려짐

 

MEMORY

 - 테이블 용량의 최대 크기를 가지고 있다.

 - 고정 길이 컬럼만 사용 VARCHAR = CHAR와 동일하게 공간 할당

 - BLOB, TEXT와 같은 Large Object 지원하지 않음

 - 기본적인 해시 인덱스 사용

 

TOKUDB

 - B-Tree 인덱스가 아닌 프랙탈 트리 인덱스 지원

 - 대용량 데이터와 빠른 INSERT 처리

 - 동시성 제어가 InnoDB에 비해 뛰어나지 않음(검증 되지 않은듯)

 - REPEATABLE-READ 제공하지 않음 READ-UNCOMMITTED, READ-COMMITTED 사용해야 한다.

 

 평균 10~50배 INSERT가 빠르고, 데이터와 인덱스를 모두 압축해서 저장하므로 많은 Disk 공간을 사용하지 않음

 

 동시성 제어 문제...가 좀 있네?

 

용도

 - SNS용

 - 실시간 웹페이지 클릭 분석

 - 웹 서버나 게임 서버의 로그 분석

 - 고성능 웹 크롤링

 - 데이터웨어 하우스

 

로그 분석 

 - https://www.webyog.com/product/monyog/hVoOQ/

'Mysql' 카테고리의 다른 글

Mysql 레코드 값 데이터 대/소문자 구분  (0) 2019.03.13
스테이지 스코어 저장.  (0) 2019.03.11
Mysql Update Select  (0) 2019.01.11
Mysql Master Slave 동기화 오류 시 처리  (0) 2018.10.15
MyISAM, MEMORY 엔진의 잠금  (0) 2018.10.12