现在位置: 首页 > 内存数据库
2015-06-11 21:17 工业·编程 ⁄ 共 237字 暂无评论
SQLite不仅可以把数据库 放在硬盘上,还可以放在内存中(sqlite3_open(":memory:", &db)),经测试,同样条件下数据库放在内存中比放在硬盘上插入记录速度快差不多3倍。但数据库放在内存中时有如下缺陷: 1、断电或程序崩溃后数据库就会消失,你需要定期Attach到硬盘上备份; 2、在内存中的数据库不能被别的进程访问(因为没名字,以后可能支持),即使在多线程下,也得使用同一句柄; 3、不支持像在硬盘上的读写互...
阅读全文
2015-06-10 21:12 工业·编程 ⁄ 共 1649字 暂无评论
名称 开源或商业 主要特点 Oracle TimesTen 不开源,商业使用付费 1. 符合RDBMS标准的独立内存数据库服务。 2.支持SQL访问,支持ODBC&JDBC。 3.本身不支持与非Oracle数据库的互操作。 4.高可靠性,支持完整日志,支持镜像复制功能。 5.目前不支持存储过程和触发器。 6.内存结构简单,并没有数据库缓冲区、保存池或丢弃池的概念。 7.目前支持散列索引和T树索引,前者仅支持余键-值...
阅读全文
2015-06-09 21:11 工业·编程 ⁄ 共 1399字 暂无评论
最近要将一些数据放到内存里面做很高的并发操作,考虑了很多方案, 1、 简单点使用map hash_map等自己管理。 2、 用sqlite内存表。 3、 用fastdb内存数据库。 4、 用ExtremeDb,TimesTen等。 比较测试了一下123,发现还是自己实现速度最快,比fastdb模式快3-5倍,fastdb模式比sqlite内存表模式快10倍左右,由于自己实现不具有典型通用性,多线程下访问效率会下降,要管理多线程下各种更新查找等还是比较麻烦的,所以在1和3方案...
阅读全文
对于每一个关注用户体验的Web应用或移动应用而言,NoSQL内存数据库(例如开源的 Redis和Memcached)正逐步成为事实上的标准。但是,近几年来,大型企业在采用这些数据库方面还面临着诸多挑战,主要是由于性能、可扩展性和可用性方面的问题。 非常幸运的是,现代编程语言(例如Ruby、Node.js、Python等)和开发平台(例如Rails、Sinatra、Django等)已经内置了很多工具和开发库。这些工具和开发库能够有效利用内存数据库的高性能...
阅读全文