seegongsik
내 단어장
데이터

가까이 두고 빨리 쓰기, 캐시

자주 보는 책을 매번 먼 창고까지 가서 꺼낸다고 해봐요. 오갈 때마다 한참 걸리죠. 그런데 책상 위에 사본을 한 권 둔다면? 다음부터는 손만 뻗으면 끝이에요. 자주 쓰는 걸 가까운 곳에 사본으로 두는 이 방법이 캐시예요.

01

먼 창고는 오가기 느려요

앞에서 데이터베이스가
색인으로 바로 점프해 찾는 걸 배웠어요.
그런데 찾은 다음에도
데이터를 어딘가에서 꺼내 와야 해요.
그 저장소가 멀리 있다면 어떨까요?
오가는 길이 길어 한 번 꺼낼 때마다
시간이 꽤 걸려요.
게다가 같은 걸 또 봐야 할 때
다시 그 먼 길을 가야 하죠.

내 자리먼 창고A7
데이터를 눌러 먼 창고에서 꺼내봐요

데이터를 눌러 먼 창고에서 꺼내봐요. 경로가 길어 오가는 데 한참 걸려요.

한 번 꺼내는 데 길이 멀었죠.
한두 번이면 참을 만해요.
하지만 같은 데이터를
하루에 수백 번 봐야 한다면요?
그 먼 길을 수백 번 오가야 해요.
생각만 해도 답답하죠.
자주 보는 거라면
매번 멀리 갈 필요가 있을까요?

02

가까이 사본을 한 부 둬요

방법은 뜻밖에 간단해요.
자주 보는 데이터를
먼 창고에서 한 번 꺼낸 다음
가까운 곳에 사본을 한 부 둬요.
이 가까운 보관함을 캐시라고 불러요.
다음에 같은 걸 찾을 땐
먼 창고까지 안 가도 돼요.
바로 옆 캐시에서 짧은 길로
금방 꺼내면 되니까요.

내 자리가까운 캐시비어 있어요먼 창고3
자주 쓰는 항목
항목을 눌러 가까운 캐시에 사본을 둬봐요

데이터를 눌러 가까운 캐시에 사본을 복사해 둬요. 비어 있던 캐시가 채워져요.

가까운 캐시에 사본이 생겼죠.
이제 같은 데이터를 또 찾으면
먼 창고는 잊어도 돼요.
캐시에서 짧은 길로 바로 꺼내니까요.
그런데 한 가지 챙길 게 있어요.
찾는 게 캐시에 있을 때와
없을 때는 일이 달라져요.
그 둘을 나눠서 살펴봐요.

03

적중과 빗나감

찾을 때 두 갈래가 있어요.
찾는 게 캐시에 이미 있으면
짧은 길로 곧장 꺼내요.
이걸 적중이라고 불러요. 빠르죠.
찾는 게 캐시에 없으면
별수 없이 먼 창고까지 가야 해요.
이건 빗나감이라고 불러요. 느리죠.
빗나갔을 땐 가져온 김에
사본을 캐시에 남겨 둬요.
그러면 다음엔 적중이 돼요.

내 자리캐시먼 창고
요청
요청을 눌러봐요. 같은 요청을 두 번 눌러보면 차이가 보여요

요청을 눌러봐요. 캐시에 있으면 짧은 길로 적중, 없으면 먼 길로 빗나감 뒤 캐시에 사본을 남겨요.

처음엔 빗나가 느렸지만
사본을 남긴 뒤로는
같은 요청이 적중해 빨라졌죠.
자주 보는 것일수록
적중이 늘어 평균이 빨라져요.
캐시가 이래서 든든해요.
그런데 한 가지 골치 아픈 게 있어요.
먼 창고의 원본이 바뀌면
캐시의 사본은 어떻게 될까요?

04

캐시가 옛것이 될 때

캐시는 사본일 뿐이에요.
먼 창고의 원본이 바뀌어도
캐시는 그걸 모르고
예전에 받은 옛 사본을 그대로 갖고 있어요.
그러면 적중은 빠르지만
내주는 값이 옛것일 수 있어요.
이걸 캐시가 오래됐다고 해요.
빠른 대신 옛 값을 내줄 위험,
이게 캐시의 그늘이에요.
어떻게 막을까요?

원본 (먼 창고)17사본 (캐시)1717 = 17
캐시가 원본과 같아요, 적중하면 옳은 값

원본을 눌러 값을 바꿔봐요. 캐시는 옛값 그대로예요. 캐시를 새로 채우거나 버리면 다시 맞아져요.

원본을 바꾸자 캐시가 어긋났죠.
막는 길은 크게 둘이에요.
하나는 원본이 바뀔 때
캐시를 새 값으로 다시 채우는 거예요.
다른 하나는 사본에 기한을 둬서
일정 시간이 지나면 버리는 거예요.
버려진 자리는 다음 빗나감 때
새 사본으로 다시 채워져요.
어느 쪽이든 옛 값을 줄이고
빠른 적중은 살리는 균형이에요.

05

정리해볼까요

한 줄로 모으면 이래요.
먼 저장소는 오가는 길이 길어 느려요.
자주 쓰는 건 가까이 사본을 둬요.
그게 캐시예요.
찾는 게 캐시에 있으면 적중이라 빠르고,
없으면 빗나감이라 먼 곳까지 가요.
빗나간 뒤엔 사본을 남겨 다음을 대비해요.
원본이 바뀌면 캐시는 옛것이 되니
새로 채우거나 버려서 막아요.
가까이 두고 빨리 쓰기, 그게 캐시예요.

핵심 4가지를 차례로 눌러봐요
아래 핵심을 위에서부터 차례로 눌러봐요

핵심을 차례로 눌러 되짚어봐요. (먼 곳은 느려요 → 가까이 사본 → 적중과 빗나감 → 원본 바뀌면 옛것)

이제 가까이 사본을 둬
같은 걸 다시 빨리 쓰는 방법을 알게 됐어요.
매번 먼 길을 가던 답답함이
사본 한 부로 시원하게 풀렸죠.
빠름을 얻은 만큼 옛것을 챙기는
이 균형 감각이 데이터를 다루는 힘이에요.
캐시는 컴퓨터 곳곳에 숨어 있어요.
다음엔 또 어디에서 이 사본의 지혜가
쓰이는지 함께 이어서 살펴봐요.

한 줄 정리캐시는 자주 쓰는 데이터의 사본을 가까운 곳에 두는 방법이에요. 먼 저장소는 오가는 경로가 길어 느려요. 하지만 사본을 가까이 두면 다음부터는 짧은 경로로 즉시 꺼내죠. 찾는 것이 캐시에 있으면 적중이라 부르고 곧장 빠르게 꺼내요. 없으면 빗나감이라 부르고 먼 곳까지 가서 가져온 뒤, 그 사본을 캐시에 남겨 둬요. 그래서 다음번엔 적중이 되죠. 단점도 있어요. 원본이 바뀌어도 캐시에는 옛 사본이 남아, 옛 값을 내줄 수 있어요. 이걸 캐시가 오래됐다고 해요. 그래서 가끔 캐시를 새로 채우거나 일정 시간이 지나면 버려서 옛것을 막아요. 정리하면, 가까이 사본을 둬 적중하면 빠르고, 원본이 바뀌면 캐시를 새로 고치는 게 캐시예요.
데이터
이 페이지가 도움 됐다면 후원하기