NVMgts is a kind of fast-recoverable hybrid-memory trajectory storage system. It leverage the advantages of both DRAM and Non-Volatile Memory (NVM).
- Low latency
- Low capacity because of expensive DRAM chip
- Data loss when restart
- 5-10x latency compared with DRAM
- High capacity
- Persistence even if restarting
- Much faster than SSD
- Get a higher avaliability than the storage system based on traditional DRAM
- Get a much better performance (e.g., throughput, latency) than systems based on SSD or HDD
- Achieve a better performance than system based on pure NVM
- Support large-scale trajectory dataset through storing data on NVM
- pure DRAM: work as an original in-memory trajectory storage on DRAM
- pure NVM: all data are stored on NVM, DRAM is used to process the intermediate results
- hybrid: based on pure NVM, where hot data are transferred to DRAM as a buffer
make clean
make -jN
./test [params..]
./test r
./test c
- pure DRAM:
./test m d
- pure NVM:
./test m s
- hybrid:
./test m h
first point out the file in main.cpp
then type ./test f
first type ./test s
then input RQ(lon1,lon2,lat1,lat2)