다섯 살도 알 수 있게 · DB/데이터
인메모리 컴퓨팅(In-Memory DB/IMDG)이 뭐예요?
인메모리 DB와 IMDG를, 깊은 선반까지 안 가고 바로 꺼내는 특급 출고대 이야기로 풀어봤어요.
포장 담당이 안쪽 깊은 선반까지 다녀와야 해요.그동안 배송 기사는 계속 기다려요.
같은 인기 상품인데 매번 깊은 선반까지 가요.자주 찾는 상품은 가까이 둘 수 없을까요?
인메모리 DB = 깊은 선반 대신 바로 꺼내는 특급 출고대예요.데이터를 메모리에 올려두니 디스크보다 훨씬 빨리 꺼내요.
데이터를 메모리에 바로 두기디스크까지 안 가요
빠른 꺼내기디스크보다 지연이 훨씬 짧아요
휘발성 위험전원이 나가면 메모리의 데이터가 사라져요
IMDG — 여러 대 묶기여러 대의 메모리를 모아 큰 저장소로 써요
인메모리 DB/IMDG는 캐시, 빠른 조회, 메모리 묶기에 쓰여요.전원이 나가도 데이터를 되살리도록 로그나 스냅샷을 남겨요.
메모리는 디스크보다 비싸서 데이터를 전부 올리긴 어려워요.그래서 자주 쓰는 데이터만 골라 올리기도 해요(캐시).
한 줄로
인메모리 DB/IMDG = 깊은 선반(디스크)까지 가지 않고, 메모리에 바로 올려 둬서 디스크보다 훨씬 빨리 꺼내 쓰는 방식.
인메모리 DB는 디스크가 아닌 주기억장치(RAM)에 데이터를 상주시켜 디스크 I/O 지연을 크게 줄이는 데이터베이스이고, IMDG(In-Memory Data Grid)는 여러 노드의 메모리를 묶어 분산된 대용량 인메모리 저장소로 쓰는 것이에요. 휘발성이 약점이라 로그 선행기록(WAL)·스냅샷·복제로 내구성을 보완해요.
어른들은 이렇게 불러요
- 인메모리 DB
In-Memory Database - 메모리에 바로 데이터를 두는 창고. 데이터를 읽을 때 디스크 I/O 지연이 거의 없어요.
- IMDG
In-Memory Data Grid - 여러 대의 메모리를 묶은 창고. 샤딩과 함께 규모를 키워요. → 구역으로 쪼갠 창고
- 캐시
Cache - 자주 찾는 것만 가까이 두는 것. 전체 데이터가 아니라 일부만 메모리에 올려요.
- 휘발성
Volatility - 전원이 나가면 사라지는 성질. 사라진 데이터는 로그/스냅샷으로 복구해요.
- 지속성(Durability)
Durability - 도장 찍히면 사라지지 않는 약속. 일부 인메모리 DB는 속도를 위해 이 약속을 타협해요. → 전표가 지키는 네 약속
- NoSQL 모델링
NoSQL Modeling - 상자 모양에 맞춰 선반을 바꾸는 창고. Redis처럼 Key-Value형이면서 인메모리인 제품도 있어요. → 자유로운 선반 창고
- 캐싱(SRE 분야)
Caching (SRE field) - SRE 분야에서 다루는 캐시 이야기. 분산 시스템 관점의 캐싱은 그쪽에서 더 다뤄요. → 캐싱
- 병행제어
Concurrency Control - 동시에 손대도 안 부딪히게 막는 규칙. 메모리 위에서도 이 규칙은 그대로 필요해요. → 동시에 안 부딪히는 규칙
다음 이야기
창고 전체를 한눈에 보는 관제실 →