zoukankan      html  css  js  c++  java
  • C#下多线程下几种免费数据库的性能比较的结论

    待测试的免费数据库有SQLite、Access、MySQL、MongoDB:

    由于大部分应用都是在多线程下进行的,要进行线程同步、代码加锁之类的处理。在说多线程之前,先说在单线程前提下的测试结果,那就是Access的存取数据效率要低很多,其它三种的都比较快,相互之间差不多。下面是多线程下的结论:

    1、SQLite和Access:两种是常见的文件型数据库,所以放在一起比较。结论是,

    1)二者的数据存取效率差不多,根据线程数的不同,会有-2%-10%的差距,SQLite稍微好一些;

    2)Access的资源占用(CPU和内存)比SQLite要明显高很多,根据线程数和测试程序的不同,会有80%-190%的差距。

    2、MySQL:这种数据库是有服务器的。结论是,

    1)MySQL的数据存取效率要比上文提到的SQLite和Access要明显高,根据线程数和要插入的数据数目的不同,会有12%-1000%的差距;

    2)不算服务器的资源占用的话,MySQL的资源占用和SQLite差不多,根据线程数和测试程序的不同,会有-10%-15%的差距。

    3、MongoDB:这种数据库也是有服务器的,不过是非关系型的数据库,使用时需要自根据设计的表的不同定义相应的数据结构类来辅助操作。结论是,

    1)MongoDB的数据存取效率高的令人惊讶,有MySQL的1-100倍(具体数据忘了记了,吓住我了),多线程的存取效率可以与多线程下的SQLite的效率媲美。

    2)MongoDB的资源占用要高很多,相同前提下,其它数据库cpu有1%-60%的变化范围,最终稳定在3%-20%的范围,而MongoDB会占满CPU。

    All Comments are Welcome.

  • 相关阅读:
    程序报错怎么进入调试
    va01 无定价过程能被确定
    维护销售区域数据
    SAP VA01 消息 没有用于售达方 XXXXXX 的客户主记录存在
    SAP常见问题与解决方法
    客户没有对功能定义,合作伙伴
    SAP名词解释-售达方|送达方
    英语-20210312
    配置预付款-科目对应关系FBKP
    unzip 解压指定的文件夹或文件 到指定的目录
  • 原文地址:https://www.cnblogs.com/yao2yao4/p/2808339.html
Copyright © 2011-2022 走看看