【问题标题】:Something faster than MS Access 2007, Fast Portable Database Recommendations?比 MS Access 2007 更快的东西,快速便携式数据库推荐?
【发布时间】:2010-10-17 17:04:32
【问题描述】:

我正在使用 MS Access 2007 在我的应用程序中插入和读取数据,但它真的很慢。

我有一个运行时间很长的应用程序,如果我从内存中运行它大约需要 5 分钟,而使用 MS Access 2007 大约需要 13 分钟!

我正在寻找一个更快但可移植的数据库选项,我正在使用 .NET 。我不是在寻找高级关系数据库的东西,只要它像一个像样的数据库一样工作,对我来说就足够了。

编辑:

我主要是从多个线程进行并发插入。

结果

我已经尝试过 SQL Server Compact Edition 3.5 SP1,它与从内存运行几乎相同,因此比访问 + 快 %400 倍,而不是 72MB 的依赖我有 1.5MB 的依赖,这很棒。

附注数据库已标准化、干净、压缩,我正在使用 stored_procedures 和本机客户端。所以我已经尝试了很多方法来让它更快。

【问题讨论】:

    标签: .net database performance ms-access


    【解决方案1】:

    您也可以使用 Firebird:www.firebirdsql.org

    它是免费的,而且非常易于使用。有一些不错的 .net 驱动程序。

    如果您出售您的应用程序:MySQL 不是免费的。

    【讨论】:

      【解决方案2】:

      来自 sqlite 维基:

      SQLite 是不大量使用并发连接和复杂数据库功能的系统的首选速度恶魔。如果您需要大量并发连接,SQLite 可能不是最佳选择。但是,如果您需要很高的速度和一个简单的连接设置,SQLite 是我见过的最好的东西。

      http://www.sqlite.org/cvstrac/wiki?p=PerformanceConsiderations

      您可能还想看看 mysql、pgsql 或 mssql(CE 或 Express(均免费)), 根据您的需要。


      编辑:根据您的 cmets,您可能需要在 mysql、pgsql 或 mssql(express)等服务器上运行的东西


      Edit2:如果您主要进行插入操作,请确保您的表中没有未使用的索引,因为索引会使插入/更新速度变慢。

      【讨论】:

      • 这不是并发连接,而​​更像是来自 10-50 个线程的并发插入。顺便说一句,感谢您的链接。
      • 我刚刚阅读了该页面,我认为在我的情况下 sqlite 会遭受写锁定,根据该页面 sqlite 对此并不好。
      【解决方案3】:

      老实说,我认为您不会获得更快的结果。您的程序可能受 I/O 限制,这意味着磁盘速度正在减慢您的速度。

      您可以尝试使用 SQL Compact Edition (CE),但我怀疑您会看到任何其他工具的结果都变慢或变慢。

      【讨论】:

      • SQL精简版支持存储过程了吗?如果是这样,则可以将针对缺少存储过程的调整纳入迁移计划。
      【解决方案4】:

      SQL Server Express 2008。它是免费的,而且是 SQL Server。

      【讨论】:

      • 它是否像 MS Access 一样可移植、复制粘贴和连接?没有 Windows 服务?
      • 首先,我建议您实际尝试安装程序,看看您是否可以在默认情况下运行它 - 没有 UI。其次,如有必要,请考虑使用 SQL Server Compact Edition,它更像 Access,处理单个文件。
      • 实际上我的应用程序已经可以切换到 SQL Server 2000 并且工作正常。所以我正在下载精简版,看看它是否更好用。
      • 确实试过了,处理内存的速度几乎一样,太棒了!
      • 它没有独立的驱动程序...需要安装驱动程序
      【解决方案5】:

      【讨论】:

      • 性能方面更好吗?我在论坛上看到几个 cmets 声称它更好,但找不到任何基准或类似的东西。
      • 速度更快。不要放下Access,但几乎任何您可以在您的情况下使用的数据库都更快; Access 的优势在于它是用于创建表单和报告的最终用户工具。
      • 非常快,驱动程序是独立的,无需安装...而且扩展性也很好
      猜你喜欢
      • 2010-10-05
      • 2012-04-15
      • 2015-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-16
      相关资源
      最近更新 更多