-
Java에서 MappedByteBuffer를 이용한 off-heap 사용기타기술 2021. 1. 4. 11:07
blogs.oracle.com/javamagazine/creating-a-java-off-heap-in-memory-database
MappedByteBuffer, ByteBuffer 를 이용해서 자바 off-heap 데이터 스토어를 구현한 이야기.
예전(2010년 경)에 네비게이션 서비스 만드는 프로젝트 할 때 대용량 맵 데이터 로드하기 위해 썼던 방식이랑 거의 같다. 처음에는 인메모리 디비를 사용하려고 했는데, (이름이 뭐였지..기억도 안남) 성능이 나오지 않아, 결국 맵 파일을 MappedByteBuffer를 이용해서 바로 메모리에 올려서 작업했드랬다.
장점은 당연히 이렇게 메모리에 올린 애들은 자바 힙에서 관리하는 애들이 아니라 gc에 영향을 받지 않는다는 점, 그리고 데이터를 바로 오프힙에 올려 빠르게 RW할 수 있다는 점이었다. 다만, raw level로 데이터에 접근해야 한다는게 불편할 수 있다. 그래서 이 블로그에서 했던 방식으로 데이터를 쉽게 조작할 수 있도록 wrapping class를 만들어서 썼었다.
지금은 그 코드들이 다 없어졌겠지.. :-)
'기타기술' 카테고리의 다른 글
Maven-assembly을 이용해 oozie 배포 구조 만들기 (0) 2013.09.16 git, 아파치 서버 연동 방법 (0) 2012.03.27 도제식 수련 in SW (0) 2011.08.27 EA(Enterprise Architect)와 SVN 연동하기 (0) 2011.08.04 수렴진화, 그리고 좋은 설계 (0) 2011.07.25