[목차] == 개요 == In-Memory Database IMDB, 혹은 MMDB(Main Memory [[DBMS]])라고도 한다. 디스크가 아닌 주 메모리에 모든 데이터를 보유하고 있는 데이터베이스. 디스크 검색[* 그 빠르다는 [[NVMe]] [[SSD]]조차 DDR4 [[RAM]]보다는 10여배 가량 느리다.]보다 자료 접근이 훨씬 빠른 것이 가장 큰 장점이다. 데이터 양의 빠른 증가로 데이터베이스 응답 속도가 떨어지는 문제를 해결할 수 있는 대안이 인 메모리 데이터베이스이다. 전형적인 디스크 방식은 디스크에 저장된 데이터를 대상으로 쿼리를 수행하지만, 인 메모리 방식은 메모리상에 색인을 넣어 필요한 모든 정보를 메모리상의 색인을 통해 빠르게 검색할 수 있다. 단점이라면 매체가 '''휘발성'''이라는 것. [[뉴스데스크 게임 폭력성 실험 사건|DB 서버 전원이 갑자기 꺼져버리면]] 안에 있는 자료들이 [[초고속즉시삭제]] 되어버린다. 그래서 보통은 [[로그인]] [[세션]] 같은, 서버가 꺼져서 날아가도 상관 없는 임시 데이터에 주로 쓰인다. 거기다 속도 때문에 쓰는 것이기에 [[영웅은 공부 따원 안 한다네|압축 따윈 쓰지 않으며]], 데이터에 비해 RAM 용량이 넉넉하지 않을 경우 [[가상메모리]]를 쓰게 되어 역효과가 일어나기도 한다. 물론 [[DBMS]]의 속성 중 하나인 Durability를 보장하기 위하여 메모리에 INSERT/UPDATE/DELETE된 값들은 모두 디스크에 로그로 기록하며, DBMS가 재구동될 때 디스크로부터 로그 파일을 읽어와 메모리에 DBMS 구조를 모두 재구축하기도 한다. 한편, 기존 DBMS 제품도 인 메모리 데이터베이스를 사용할 수 있는 옵션을 제공하기도 한다. [[MySQL]]/[[MariaDB]]의 MEMORY 엔진이 그 중 하나. == 주요 기업 및 제품 == * Amazon ElastiCache (미국) * Redis (미국) * 알티베이스 (Altibase) (한국) * Kairos (한국) * SAP HANA (독일)[* HANA DBMS 자체는 [[서울대학교]]의 차상균 교수 연구팀이 개발했으며 현재도 SAP HANA 연구소는 서울대학교에 있다.] * SunDB (한국) * TimesTen (미국, [[오라클(기업)|오라클]]) * Memcached (미국) * SingleStore (미국, 구 Memsql) * Apache Ignite (미국) [[분류:데이터베이스]]