在:http://www.lmdb.tech/bench/inmem/

2. Small Data Set

Using the laptop we generate a database with 20 million records. The records have 16 byte keys and 100 byte values so the resulting database should be about 2.2GB in size. After the data is loaded a "readwhilewriting" test is run using 4 reader threads and one writer. All of the threads operate on randomly selected records in the database. The writer performs updates to existing records; no records are added or deleted so the DB size should not change much during the test.

The tests in this section and in Section 3 are all run on a tmpfs, just like the RocksDB report. I.e., all of the data is stored only in RAM. Additional tests using an SSD follow in Section 4.

The pertinent results are tabulated here and expanded on in the following sections.

Engine Load Time Overhead Load Size Writes/Sec Reads/Sec Run Time Final Size CPU% Process Size
  Wall User Sys   KB   Wall User Sys KB   KB
LevelDB 00:34.70 00:44.72 00:06.70 1.4818443804 2246004 10232 26678 00:49:58.73 01:31:48.62 00:52:50.95 3452388 289% 2138508
Basho 00:40.41 01:24.39 00:17.82 2.5293244246 2368768 10232 68418 00:19:32.94 01:14:10.04 00:01:19.19 2612436 386% 6775376
BerkeleyDB 02:12.61 01:58.92 00:13.57 0.9990950909 5844376 00:15:28.44 00:42:07.97 00:17:27.49 5839912 385% 3040716
Hyper 00:38.78 00:49.88 00:06.43 1.4520371325 2246448 10208 138393 00:09:38.39 00:35:06.12 00:02:06.18 2292632 385% 2700088
LMDB 00:10.55 00:08.15 00:02.37 0.9971563981 2516192 00:00:55.46 00:03:37.63 00:00:01.67 2547968 395% 2550408
RocksDB 00:21.54 00:34.70 00:05.99 1.8890436397 2256032 10233 91544 00:14:37.74 00:54:06.84 00:02:38.04 3181764 387% 6713852
TokuDB 01:45.12 01:41.58 00:47.37 1.4169520548 2726168 9881 109682 00:12:12.91 00:37:41.45 00:07:10.03 3920784 367% 5429056
WiredLSM 01:10.93 02:35.55 00:18.62 2.4555195263 2492440 00:07:26.24 00:28:55.85 00:00:07.76 2948988 390% 3205396
WiredBtree 00:17.79 00:15.68 00:02.09 0.9988757729 2381876 00:01:53.46 00:06:36.98 00:00:14.78 4752568 362% 3415468

3. Larger Data Set

These tests use 100 million records and are run on the 16 core server. Aside from the data set size things are much the same. Here are the tabular results:

Engine Load Time Overhead Load Size Writes/Sec Reads/Sec Run Time Final Size CPU% Process Size
  Wall User Sys   KB     Wall User Sys KB   KB
LevelDB 03:06.75 04:41.26 00:42.87 1.7356358768 11273396 01:00:02.00 01:22:11.46 01:52:10.46 13734168 323% 3284192
Basho 04:22.96 11:09.24 02:18.93 3.0733571646 11449492 10211 80135 01:00:23.00 14:32:23.67 00:11:49.40 13841220 1464% 19257796
BerkeleyDB 14:59.45 13:34.30 01:25.15 1 28381956 01:00:02.00 03:02:00.69 12:42:39.63 28387880 1573% 14756768
Hyper 03:43.61 05:41.14 00:39.02 1.7001028577 11280092 10231 11673 01:00:04.00 01:59:42.09 01:53:24.27 15149416 387% 6332460
LMDB 01:04.15 00:52.31 00:11.82 0.9996882307 12605332 00:11:14.14 02:47:58.57 00:00:10.06 12627692 1598% 12605788
RocksDB 02:28.66 03:59.92 00:30.97 1.8222117584 11289688 10232 129397 01:00:22.00 12:08:05.94 02:51:58.54 12777708 1490% 18599544
TokuDB 07:44.10 09:17.31 02:54.82 1.5775263952 12665136 4601 70208 01:00:15.00 03:02:37.44 11:21:45.00 15328956 1434% 23315964
WiredLSM 07:10.50 19:25.80 02:31.10 3.0590011614 12254620 01:00:05.00 15:51:04.17 00:02:09.76 16016296 1586% 17723992
WiredBtree 02:07.49 01:49.52 00:17.97 1 11932620 00:20:58.10 05:06:13.60 00:05:14.87 23865368 1560% 20743232

看这个pdf里有对kv存储的架构和底层原理的详细介绍:

https://daim.idi.ntnu.no/masteroppgaver/008/8885/masteroppgave.pdf

levelDB, TokuDB, BDB等kv存储引擎性能对比——wiredtree, wiredLSM,LMDB读写很强啊的更多相关文章

  1. Java模板引擎性能对比

    模板引擎性能对比 从Github上翻到对JSP.Thymeleaf 3.Velocity 1.7.Freemarker 2.3.23几款主流模板的性能对比,总体上看,Freemarker.Veloci ...

  2. 基于淘宝开源Tair分布式KV存储引擎的整合部署

    一.前言 Tair支撑了淘宝几乎所有系统的缓存信息(Tair = Taobao Pair,Pair即Key-Value键值对),内置了三个存储引擎:mdb(默认,类似于Memcache).rdb(类似 ...

  3. MySql存储引擎特性对比

    下表显示了各种存储引擎的特性: 其中最常见的两种存储引擎是MyISAM和InnoDB 刚接触MySQL的时候可能会有些惊讶,竟然有不支持事务的存储引擎,学过关系型数据库理论的人都知道,事务是关系型数据 ...

  4. mysql存储引擎的对比

  5. MongoDB存储引擎选择

    MongoDB存储引擎选择 MongoDB存储引擎构架 插件式存储引擎, MongoDB 3.0引入了插件式存储引擎API,为第三方的存储引擎厂商加入MongoDB提供了方便,这一变化无疑参考了MyS ...

  6. MongoDB 存储引擎选择

    MongoDB存储引擎选择 MongoDB存储引擎构架 插件式存储引擎, MongoDB 3.0引入了插件式存储引擎API,为第三方的存储引擎厂商加入MongoDB提供了方便,这一变化无疑参考了MyS ...

  7. MySQL性能调优与架构设计——第3章 MySQL存储引擎简介

    第3章 MySQL存储引擎简介 3.1 MySQL 存储引擎概述 MyISAM存储引擎是MySQL默认的存储引擎,也是目前MySQL使用最为广泛的存储引擎之一.他的前身就是我们在MySQL发展历程中所 ...

  8. MySql(十一):MySQL性能调优——常用存储引擎优化

    一.前言 MySQL 提供的非常丰富的存储引擎种类供大家选择,有多种选择固然是好事,但是需要我们理解掌握的知识也会增加很多.本章将介绍最为常用的两种存储引擎进行针对性的优化建议. 二.MyISAM存储 ...

  9. MySQL性能优化(一)-- 存储引擎和三范式

    一.MySQL存储引擎 存储引擎说白了就是如何存储数据.如何为存储的数据建立索引和如何更新.查询数据等技术的实现方法.因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存 ...

随机推荐

  1. Slyce,这家硅谷创业公司的来头你知道吗

    Slyce,也许你没听过,一家硅谷创业公司,旨在帮助运动员和其他社会名流组织.优化社交媒体,过滤粉丝的声音,让明星更好的在社交媒体上和他们互动.但是如果如果说库里,那你应该就知道了,拿到了上届NBA总 ...

  2. springboot 常用的异常处理方式

    springboot常用的异常处理推荐: 一.创建一个异常控制器,并实现ErrorController接口: package com.example.demo.controller; import o ...

  3. New Moto X 2014 全版本RSD&Fastboot刷官方底包教程

    本来我是不想写教程的,因为这样的教程实在是太多了,基本上大家也都会了,为什么还要多次一举,发来发去的呢?实在没什么意义!但是我觉得吧,别人的教程写的都太过简单,太过明了了,有时候我们很难理解,这到底是 ...

  4. java定时器的使用(Timer)(转发:https://blog.csdn.net/ecjtuxuan/article/details/2093757)

    1.在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作等. 对于这样的操作最方便.高效的实现方式就是使用java.util.Timer工具类. private java.util.Tim ...

  5. HBA卡 和 RAID卡

    HBA卡: 只从HBA的英文解释HOST BUS ADAPTER(主机总线适配器)就能看出来,他肯定是给主机用的,一般HBA就是给主机插上后,给主机扩展出更多的接口,来连接外部的设备.大多数讲到HBA ...

  6. LeetCode:路径总和【112】

    LeetCode:路径总和[112] 题目描述 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和. 说明: 叶子节点是指没有子节点的节点. 示例 ...

  7. 【转】Linux磁盘文件系统类型

    1. 查询命令 [root@mail ~]# df -Th 参数说明: -T 显示文件系统类型. -h:以容易理解的格式输出文件系统大小,例如124KB.345MB.46GB. 转自:https:// ...

  8. sublime text3自动同步左边栏颜色背景为编辑栏颜色

    下面的步骤需要安装Package Control插件,如果你已经安装,可跳过本步骤,直接看第二步. 第一步:安装Package Control插件: 按Ctrl+`调出console(注:安装有QQ输 ...

  9. 添加code到github上

    第一步:github上新建远程仓库 1. 在 https://github.com/  注册账号 2. new 一个新仓库 (1) 点击加号下的`New repository` (2)在Reposit ...

  10. 以太网100Mhz频率为什么可以达到带宽1000Mbps

    转: https://wenku.baidu.com/view/353ea8ecb0717fd5370cdc0b.html