토론:백지훈
Retired DISLab
목차 |
석사논문
LRU방식 버퍼매니저 설계
- victim선정방법은 LRU이고 버퍼가 full일때 processVictim
- dirtyPage 설정은 setDirty();
- 버퍼의 크기는(인자로 받는다)?
- 더블 링크드 리스트로 작성
CFLRU방식 버퍼매니저 설계
- 두 개의 지역으로 나뉨
- clean first 지역에서는 dirty page를 가장 나중에 victim.
- clean first 지역의 크기를 동적으로?정적으로?
- 지역을 구분하는 것과 크기를 결정해야 한다.
mysql-innobase I/O 분석
block 구조체에서 space 변수와 offset으로 page번호를 알 수 있다.
1. buffer manager에게 보내는 read request buf0buf.c -> buf_page_get_gen()
2. buffer manager에게 보내는 write request
2-1 buf0buf.ic -> buf_frame_modify_clock_inc() 2-2 buf0buf.ic -> buf_block_modify_clock_inc() 2-3 buf0flu.ic ->buf_flush_note_modification() 2-4 buf0flu.ic ->buf_flush_recv_note_modification()
시뮬레이션 코드
- sim_FCLRU 프로젝트 파일
- 데이터베이스 4k의 한 페이지가 여러 블록에 나누어진 경우를 퍼센트로 구현할지에 대한 논의가 필요
- 현재 집체 교육 과정과 프로젝트로 인하여 진행속도가 늦음
- 논문 집필과 블록에 나누어진 경우를 표현해야 함
- 현재는 나눠져있지 않기 때문에 cflru 알고리즘과 결과가 같음