levelDB, TokuDB, BDB等kv存储引擎性能对比——wiredtree, wiredLSM,LMDB读写很强啊

在: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 TimeOverheadLoad SizeWrites/SecReads/Sec Run TimeFinal SizeCPU%Process Size
 WallUserSys KB  WallUserSysKB KB
LevelDB00:34.7000:44.7200:06.701.48184438042246004102322667800:49:58.7301:31:48.6200:52:50.953452388289%2138508
Basho00:40.4101:24.3900:17.822.52932442462368768102326841800:19:32.9401:14:10.0400:01:19.192612436386%6775376
BerkeleyDB02:12.6101:58.9200:13.570.9990950909584437695658620200:15:28.4400:42:07.9700:17:27.495839912385%3040716
Hyper00:38.7800:49.8800:06.431.452037132522464481020813839300:09:38.3900:35:06.1200:02:06.182292632385%2700088
LMDB00:10.5500:08.1500:02.370.9971563981251619210224144970900:00:55.4600:03:37.6300:00:01.672547968395%2550408
RocksDB00:21.5400:34.7000:05.991.88904363972256032102339154400:14:37.7400:54:06.8400:02:38.043181764387%6713852
TokuDB01:45.1201:41.5800:47.371.41695205482726168988110968200:12:12.9100:37:41.4500:07:10.033920784367%5429056
WiredLSM01:10.9302:35.5500:18.622.455519526324924401023017961700:07:26.2400:28:55.8500:00:07.762948988390%3205396
WiredBtree00:17.7900:15.6800:02.090.998875772923818761002175207800:01:53.4600:06:36.9800:00:14.784752568362%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 TimeOverheadLoad SizeWrites/SecReads/Sec Run TimeFinal SizeCPU%Process Size
 WallUserSys KB  WallUserSysKB KB
LevelDB03:06.7504:41.2600:42.871.7356358768112733969184759401:00:02.0001:22:11.4601:52:10.4613734168323%3284192
Basho04:22.9611:09.2402:18.933.073357164611449492102118013501:00:23.0014:32:23.6700:11:49.40138412201464%19257796
BerkeleyDB14:59.4513:34.3001:25.1512838195633785506601:00:02.0003:02:00.6912:42:39.63283878801573%14756768
Hyper03:43.6105:41.1400:39.021.700102857711280092102311167301:00:04.0001:59:42.0901:53:24.2715149416387%6332460
LMDB01:04.1500:52.3100:11.820.99968823071260533210230248680000:11:14.1402:47:58.5700:00:10.06126276921598%12605788
RocksDB02:28.6603:59.9200:30.971.8222117584112896881023212939701:00:22.0012:08:05.9402:51:58.54127777081490%18599544
TokuDB07:44.1009:17.3102:54.821.57752639521266513646017020801:00:15.0003:02:37.4411:21:45.00153289561434%23315964
WiredLSM07:10.5019:25.8002:31.103.0590011614122546201019427841501:00:05.0015:51:04.1700:02:09.76160162961586%17723992
WiredBtree02:07.4901:49.5200:17.9711193262010145132093900:20:58.1005:06:13.6000:05:14.87238653681560%20743232

 

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值