首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用RDBMS减少内存消耗?

使用RDBMS减少内存消耗?
EN

Stack Overflow用户
提问于 2015-03-09 02:26:39
回答 2查看 50关注 0票数 0

在我的VisualC++应用程序中,我希望分配很多对象,这些对象将耗尽系统中的所有可用内存。为了解决这个问题,我决定将对象存储在数据库中。我只有三个候选人: MySQL,PostgreSQL和SQLite。但不知道哪一个更合适。

我需要的是:

  1. 将对象存储在数据库中而不是内存中。
  2. 快速通过一个键找到对象。
  3. 重量轻,因此RDBMS将不需要大量的系统资源,包括内存和磁盘空间。
  4. 不需要服务器。
  5. 很容易部署。

哪一个最适合我的需要?当然,如果你还有其他更好的选择,那就告诉我。

SQLite提供了一个详细的文档,说明何时应该使用它。但是MySQL和PostgreSQL并没有,所以选择起来有点困难,因为我不熟悉这两种情况。谢谢。

EN

回答 2

Stack Overflow用户

发布于 2015-03-09 02:33:11

我会用SQLite。它不需要服务,而且是跨平台的。它易于部署,重量轻。它支持事务。它在公共领域。

票数 0
EN

Stack Overflow用户

发布于 2015-03-09 07:27:31

你的问题:

  1. 将对象存储在数据库中而不是内存中。 任何数据库都可以做到这一点,这就是数据库的定义。
  2. 快速通过一个键找到对象。 还有标准功能,如果找不到数据,那么使用数据库有什么意义。
  3. 重量轻,因此RDBMS将不需要大量的系统资源,包括内存和磁盘空间。 这主要取决于您,糟糕的查询会产生大量的开销。无论您使用什么品牌的数据库(或软件语言)。
  4. 不需要服务器。 你的意思是“硬件”还是“客户-服务器模式”?MySQL和PostgreSQL都是客户机-服务器模型中的服务。SQLite最适合于单个客户端。
  5. 很容易部署。 所有三个数据库都很容易部署,但SQLite是最简单的。不是像其他人那样的服务器。

看起来SQLite是最合适的,但也检查您的其他需求,那些您没有提到的需求:性能、可靠性、备份、故障转移等等。对于这种工作,您需要一个关系数据库管理系统吗?内存中的C++对象与可以使用SQL访问的两个数据库中的一组记录非常不同。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28934382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档