서버 개발/MySQL

DBMS - (1) 버퍼 메모리

_금융덕후_ 2024. 10. 10. 12:00
728x90
반응형

버퍼 매니저란

DBMS내의 버퍼 메모리 영역을 관리하는 주체

 

DBMS의 기억장치

하드디스크
  • 데이터를 영구적으로 저장하는 매개체
  • 비용이 저렴하고 빠르지도 느리지도 않은 성능
메모리
  • 일부 데이터를 메모리에 올려 디스크 접근을 줄여 성능을 향상시킴
  • 성능이 좋은 대신 비용이 비쌈

 

 

버퍼의 종류

 

데이터 캐시
  • 데이터의 일부를 메모리에 유지
  • SELECT시 데이터를 빠르게 응답
로그 버퍼
  • 갱신 쿼리를 받으면 갱신처리를 먼저 로그버퍼에 보냄
  • 이후 디스크에 변경을 수행
워킹 메모리
  • 정렬과 해시에 사용되는 작업 영역
    • 정렬 - GroupBy, OrderBy, Window 함수 등
    • 해시 - Join 연산
    •  

 

메모리 트레이드오프

  • 메모리 데이터에는 영속성이 없음: 휘발성 - 장애가 발생하면 부정합을 초래
  • 데이터 캐시
    • 디스크에 저장된 데이터를 캐싱한 것이니 다시 조회하면 됨
  • 로그 버퍼
    • 장애로 실패하면 영구적으로 사라짐 - 작업 미수행
    • 커밋이 이뤄진 데이터만 디스크에 영속화
  • 디스크 동기 처리가 많아지면 정합성은 높아지지만 성능이 낮아짐

 

728x90
반응형