我使用的是Redis数据库,我们在那里存储导航信息。这些数据必须是持久化的,并且应该更快地获取。我在这个数据集中没有超过200MB的数据。
我在为redis db编写管理模块时遇到了问题,我真的很怀念django风格的管理模块的sql模式和强大功能。
现在我正在考虑使用MySQL。要求是,我想要持久数据库,但数据可以像redis一样加载到内存中,这样我就可以更快地执行SQL查询。
是否可以在持久化模式下使用MySQL,并指示MySQL使用内存进行查询?什么是最合适的MySQL DB,在这种情况下,我不太担心写入非常少的一致性。
发布于 2010-10-31 12:54:15
我将创建mysql数据库的只读从属数据库,并将其数据库引擎强制存储到内存中。您必须通过重新初始化只读数据库来处理故障,但这可以很容易地编写脚本。
这样,您仍然可以在常规mysql数据库中保持持久性,在只读内存表中保持读取速度。
发布于 2010-10-31 12:28:39
我认为你可以有一个持久表,在服务器启动时将所有数据复制到内存引擎表中,并在内存数据库上有用于插入、更新和删除写到持久表的触发器,因此它对用户是隐藏的。如果我错了,请纠正我,这只是我第一次尝试的方法。
发布于 2010-10-31 13:25:27
我用HSQLDB做到了这一点(链接:http://hsqldb.org/)
缺少一些基本的SQL特性,比如IN子句。但它基本上做到了这一点。
https://stackoverflow.com/questions/4061828
复制相似问题