传统的ER数据库在大数据领域一直存在性能不佳的问题,比如某一时刻大批量新增、或查询数据,系统会相对较慢,给用户感知不佳。虽然我们可以利用缓存解决一些问题,然而使用缓存的同时,我们并不能使用SQL去获取数据,一般都是在代码里写上相应的逻辑,通过比对来获取我们要的数据;同时使得查询数据库,和查询缓存的代码不一致,不方便维护。
在一篇博客里,我知道了voltdb数据库,voltdb是一种内存数据库,他是支持SQL的,在这里大家可以去这里(http://www.oschina.net/question/129540_91852?sort=time)了解一下。
VoltDB 有两个版本:一个开源社区版本和一个付费企业版本。我使用的是社区版本。社区版可以在github上下载到(https://github.com/VoltDB/voltdb/releases),下载后大家可以根据里面doc目录下的文档自己试着编译安装一下,安装完成后,启动voltdb数据库,在bin目录下执行“./voltdb create”第一次启动可能会出问题,如下图所示:
按照他给的提示依次执行一下;
bash -c "echo never > /sys/kernel/mm/transparent_hugepage/enabled"
bash -c "echo never > /sys/kernel/mm/transparent_hugepage/defrag"
然后在启动voltdb数据库,数据库启动成功后输出信息如下图所示:
也可以在启动命令加上参数 “./voltdb create -background”让数据库在后台运行。
数据库启动成功后,我们就可以进行一些简单的测试,在bin目录下执行 “./sqlcmd”就可以进入voltdb的命令交互窗口,这样就和oracle、mysql等数据库一样了,可以进行交互操作,如下图所示:
我也写了一个demo对voltdb进行测试,大家可以拿回去自己测试一下,也看可以自己写写。