【问题标题】:[C#]which is faster between Sqlite and dictionary?[C#] Sqlite 和字典哪个更快?
【发布时间】:2015-01-22 03:03:33
【问题描述】:

对于我的游戏,有很多关于怪物、英雄、物品等的信息。

我会将它们作为数据库保存到容器中。

我想知道 Dictionary 模板和 sqlite 哪个更快。

选项 1. 使用字典模板。

将数据保存到字典中并找到一个带有类似键的项目

值 cItem = Dictionary[key];

选项 2. 使用 sqlite。

为每组信息创建表并查询我要查找的内容。

简而言之,我想选择一个更快的字典或 Sqlite 作为关于我的游戏的所有信息的数据库。

有什么想法吗?

【问题讨论】:

  • 您是在询问内存中的 Dictionary vs Sqlite 吗?如果没有,Sqllite 显然会更慢...
  • 你在比较苹果和橘子。

标签: c# database sqlite hashtable


【解决方案1】:

如果我是你,我会编写一个包含存储和检索此信息所需的所有方法的接口,然后创建一个最易于编写的接口实现。

一旦您发现应用程序的这部分是瓶颈,请用更快的接口替换接口的实现。

这样您就不会浪费时间(人力时间)来为可能不会延迟您的应用程序完全的事情找到最快的解决方案。

不过,要回答您的问题,SQLite 会经过多个层(SQLite 库、本机调用、查询解析),因此即使您使用内存数据库,它的执行速度也不会像简单的 Dictionary 查找那样快.

如果您打算将数据存储在磁盘上,和/或对数据运行自定义查询,SQLite 将是一个非常好的选择。

【讨论】:

    猜你喜欢
    • 2016-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-08
    • 1970-01-01
    • 1970-01-01
    • 2014-10-12
    • 2011-12-08
    相关资源
    最近更新 更多