MySQL에 TimesTen(외산)이나 Altibase(국산)등 inmemory 버전이 있나요?
그러한 버전이 있다면 성능에는 얼마나 차이가 나는지, 장단점은 무엇인지, 어디에서 더 많은 정보를 얻을 수 있는지 알고 싶습니다. mysql.com에서 찾기 힘드네요.
그럼 즐거운 하루되시고, 행복하세요
MySQL에서는 테이블을 Heap 테이블로 만들면, 데이터가 모두 메모리에 잡힙니다.
물론 비정상적으로 종료하거나, 서버가 reboot되면 자료가 날라가므로, disk로 sync 시키는 것은 관리자가 알아서 해야 하구요.
(주기적으로 disk로 저장한다던가 아님 replication 시키던가)
Heap 테이블로 안 잡고, 메모리를 파티션으로 잡아서, 그곳을 Data directory로 잡아도 되구요.
그런데, 요즘 상황은 모르겠지만 In Memory DB(혹은 MMDB라고도 하죠)의 성능이나 MySQL에서 MyISAM을 사용하는 것이나 성능 차이가 크게 없다고 생각됩니다.
물론 단순 INSERT, SELECT 가지고만 비교한 것이라서 복잡한 상황에서는 어떻게 될지 모르겠구요.
암튼 정리를 해 보면, MySQL의 In memory 버전은 따로 없고, Heap 테이블을 쓰거나 Data directory를 메모리로 만들거나 하는 방식이고. 이때 데이터 안정성을 위하여 disk로 sync를 시켜야 합니다.
아무래도 성능 때문에 MMDB를 사용하게 되는데,두 제품의 데모 버전을 다운 받아서 테스트 해 보세요.