当前位置:  开发笔记 > 编程语言 > 正文

甚至比SQLite更轻

如何解决《甚至比SQLite更轻》经验,为你挑选了2个好方法。

我一直在寻找一个C++ SQL库实现,它很容易像SQLite一样挂钩,但速度越来越快.我的项目是在游戏开发中,在需要通过ACID测试和想要一些极端性能之间肯定有一个截止点.我愿意放弃SQL字符串样式查询,允许它被代码驱动,但我没有发现任何提供类似SQL的灵活性,同时也更喜欢性能而不是ACID测试.

我不想重新发明轮子,而且我自己实现一个SQL库的想法非常艰巨,即使它只是你可以做的所有调用的简单子集.

我需要的基本命令(选择,修改,删除,插入,与JOIN,和WHERE),而不是数据操作(如排序,最小值,最大值,计数)和不需要数据库是原子的,或甚至执行一致性(我在测试和调试时可以使用真正的SQL服务.



1> ravenspoint..:

您确定已获得SQLITE提供的最大速度吗?开箱即用,SQLITE非常安全,但速度很慢.如果您知道自己在做什么,并且愿意冒险在磁盘崩溃时损坏数据库损坏,那么您可以进行多项优化,从而提供惊人的速度提升.

特别是:

关闭同步

组写入事务

索引表

在内存中使用数据库

如果你还没有探索过所有这些,那么你的运行速度可能比你慢很多倍.


不能说BIG对INSERT和SQLite的事务有何影响.巨大.

2> Tristram Grä..:

我不确定你能找到比SQL更好的表现.特别是如果你想要像JOIN这样的操作...... SQLite的速度真的有问题吗?对于简单的请求,它通常比任何完整的SGDB都快.你有指数问题吗?

关于大小,它不是二进制文件中的事件1Meg,所以我有点惊讶这是一个问题.

您可以查看Berkeley DB,它可能是最快的数据库,但它主要只是key-> value数据库.

如果你真的需要更高的速度,可以考虑将整个数据库加载到内存中(再次使用SQLite).

推荐阅读
勤奋的瞌睡猪_715
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有