NoSQL   发布时间:2022-05-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何根据性能选择内存NoSQL数据库?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

《如何根据性能选择内存NoSQL数据库?》要点:@H_450_3@本文介绍了如何根据性能选择内存NoSQL数据库?,希望对您有用。如果有疑问,可以联系我们。

本文主要内容是测试了不同NoSQL数据库在测试工具YCSB中的表现.我们选取了3款流行的内存(in-memory)数据库管理系统:redis,Tarantool 以及 CouchBase,还有缓存系统Memchached.Memchached然不属于数据库管理系统但常作为快速存储系统使用.

测试环境由4台在Microsoft Azure Cloud中的虚拟机组成的计算机组组成.这些虚拟机同属于一个数据中心.nosql-1和nosql-2用作测试Tarantool和CouchBase,nosql-3和nosql-4用作测试redis,Azure redis Cache 以及 Memcached.这些机器都安装和配置了相应数据库和测试项目.虚拟机的配置为4核A3 cpu,7GB RAM,120GB硬盘.

数据库及设置

内存数据库管理系统会存储所有在主内存中的数据并在磁碟上进行持续更新操作;透过日志记录每个数据的修改以确保连贯性.由于是以append-only方式进行日志写入,因此它很少遇到瓶颈问题;读取/写入都不会造成频繁的磁碟头移动.

如何根据性能选择内存NoSQL数据库?

redis在2009推出,目前的最新版本是3.0.5.我们这里使用的版本是3.0.4,以append-only(只附加)方式进行数据管理,与其配合使用的是Microsoft Azure redis Cache工具.

如何根据性能选择内存NoSQL数据库?

Tarantool是一款开源NoSQL数据库管理系统.我们使用的是Tarantool 1.6.7-126-gb35aff9,日志采用write-ahead(先写)模式.Memcached是一款分布式内存缓存系统,这里使用是Memcached 1.4.14-0ubuntu9.

如何根据性能选择内存NoSQL数据库?

Couchbase Server是开源分布式Nosql面向文档数据库,这里使用的版本是Couchbase 4.0.0-4047-1.

YCSB测试工具

Yahoo! Cloud serving Benchmark(YCSB)是功能强大的NoSQL数据库性能测试工具,它提供了6种主要的负载工作类型,以字母A到F来区分.

负载A负责更新操作,极值是50/50的读写操作,如用于进行新近操作记录.负载B负责读取操作,极值是95/5的读写操作,如用于进行图片标签管理,多进行标签读取操作.负载C负载100%的读取操作,如用于进行用户属性获取.负载D以先进先出方式进行插入操作,如用户进行最新数据读取.负载E负责小范围记录读取而不是单个记录读取,如线程会话.负载F负责记录的读取,修改和写入,如用户信息管理.

我们对配置文件作了两处参数修改:数据条目recordcount设为200000,操作条目operationcount设为5000000.YCSB是多线程工具,我们将以8,16,32,64,128 及256 线程来进行测试.详细的测试脚本请点击这里进行下载.

下列测试结果图以颜色进行测试对象区分,

  1. Tarantool (HASH) (蓝)
  2. Tarantool (TREE)(浅蓝)
  3. redis (红)
  4. Azure redis Cache (橙)
  5. @H_561_50@memcached (绿)
  6. CouchBase(黑)

如何根据性能选择内存NoSQL数据库?

如何根据性能选择内存NoSQL数据库?

如何根据性能选择内存NoSQL数据库?

如何根据性能选择内存NoSQL数据库?

如何根据性能选择内存NoSQL数据库?

更多图片请点击[这里]查看.

结论

Tarantool在所有负载类型测试中皆取得了最优成绩.它创建了一个无锁内存引擎,以协同多任务方式进行操作而不是互斥或并行处理方式.根据以下性能图表现,我们的结论是Tarantool的高吞吐量处理是其最大优势之一.因此在多数场合下,Tarantool是用户的最佳选择.

译者/伍昆,现就职于必维集团IT信息部,担任IT运营主管一职.热衷于计算机编程和数据库技术.

(责编/夏梦竹)

编程之家php培训学院每天发布《如何根据性能选择内存NoSQL数据库?》等实战技能,php、MysqL、liNUX、APP、Js,CSS全面培养人才。

大佬总结

以上是大佬教程为你收集整理的如何根据性能选择内存NoSQL数据库?全部内容,希望文章能够帮你解决如何根据性能选择内存NoSQL数据库?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: