DB

MySql DB 엔진

Raconer 2023. 7. 3. 23:18
728x90
  1. InnoDB 엔진
    • 특징:
      • 트랜잭션 지원 및 ACID 속성
      • 데이터 무결성 보장
      • 멀티버전 동시성 제어 (MVCC)
    • 장점:
      • 안정성과 복구 기능이 우수
      • 동시성 처리가 잘 되어 많은 수의 동시 사용자 처리 가능
      • 외래 키 제약 조건 지원
    • 단점:
      • 일부 쓰기 작업에 비해 속도가 느릴 수 있음
      • 일부 디스크 공간을 사용하여 데이터 저장에 용량 관리 필요
    • 사용 예제
      • 온라인 트랜잭션 처리
      • 실시간 애플리케이션
      • 데이터 일관성이 중요한 시스템
  2. MyISAM 엔진:
    • 특징:
      • 단순하고 빠른 읽기 작업에 최적화됨
      • 전체 텍스트 검색(Full-Text Search) 기능 제공
    • 장점:
      • 높은 읽기 성능을 제공
      • 작은 크기의 인덱스를 사용하여 빠른 검색이 가능
    • 단점:
      • 트랜잭션 처리와 ACID 속성을 지원하지 않음
      • 데이터 손실 복구 어려움
    • 사용 예제
      • 웹 사이트 로그 분석
      • 캐싱 데이터 저장, 읽기 중심 작업
  3. Memory(Heap) 엔진:
    • 특징:
      • 메모리에 데이터를 저장하여 매우 빠른 읽기 및 쓰기 성능 제공
    • 장점:
      • 메모리 내에서 동작하여 디스크 I/O 없이 빠른 데이터 액세스 가능
      • 임시 데이터나 캐시 데이터 저장에 유용
    • 단점:
      • 데이터의 영구적인 저장에는 부적합하며, 메모리 용량에 제한이 있어 큰 데이터 집합 저장에 제한이 있음
    • 사용 예제
      • 캐시 데이터 저장
      • 임시 테이블
      • 짧은 수명의 데이터 저장
  4. Archive 엔진:
    • 특징:
      • 압축된 형태로 데이터를 저장하여 용량을 절약함
    • 장점:
      • 매우 높은 압축률을 제공
      • 대량의 데이터 저장에 적합
    • 단점:
      • 트랜잭션 처리와 ACID 속성을 지원하지 않음
      • 읽기 및 쓰기 성능이 상대적으로 느림
    • 사용 예제
      • 오래된 로그 데이터 저장
      • 데이터 보관 및 보안 요구 사항 충족
728x90

'DB' 카테고리의 다른 글

DB 테스트 용 데이터 대량 만들기_TIP  (0) 2023.08.03
데드락  (0) 2023.07.05
DB 격리 수준(ACID > Isolation)  (0) 2023.06.15
Redis란?_Sorted sets  (0) 2023.04.16
Redis란?_Sets  (0) 2023.04.16