• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#下多线程下几种免费数据库的性能比较的结论

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

待测试的免费数据库有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.


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
[C#]QQ开放平台(QQ站外登录)_流程和源码示例[原创]发布时间:2022-07-14
下一篇:
c#保留2位小数发布时间:2022-07-14
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap