自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

內(nèi)存KV緩存/數(shù)據(jù)庫,可以選擇它? | 1分鐘系列

開發(fā) 開發(fā)工具
互聯(lián)網(wǎng)業(yè)務(wù),絕大部分場景,會使用緩存服務(wù)。但有時候,確實會使用到進(jìn)程內(nèi)存緩存/數(shù)據(jù)庫,這個時候,LevelDB就能派上用場了。

互聯(lián)網(wǎng)業(yè)務(wù),絕大部分場景,會使用緩存服務(wù)。

選redis還是memcache,源碼怎么說?

memcache內(nèi)核的知識點(diǎn),值得收藏

但有時候,確實會使用到進(jìn)程內(nèi)存緩存/數(shù)據(jù)庫,這個時候,LevelDB就能派上用場了。

[[272913]]

啥是LevelDB?

LevelDB是Google開發(fā)的,一個速度非常塊的KV存儲庫(storage library),它支持字符串的key與字符串的value,并且這種映射關(guān)系按key排序(ordered mapping)。

LevelDB有什么特點(diǎn)?

(1)key和value可以是字符串或者字節(jié)流;

(2)數(shù)據(jù)默認(rèn)按key排列,有序存儲;

畫外音:調(diào)用方可以重載排序方法,以實現(xiàn)自定義排序。

(3)簡單易用,基本操作只有3種:

  • Put(key, value)
  • Get(key)
  • Delete(key)

(4)提供原子批量修改接口;

(5)支持?jǐn)?shù)據(jù)快照;

(6)支持?jǐn)?shù)據(jù)自動壓縮;畫外音:使用的是snappy壓縮算法。

(7)開源,文檔很詳盡,Google出品很可靠;

LevelDB有什么局限?

  • LevelDB不是一個SQL數(shù)據(jù)庫,沒有關(guān)系型的存儲模型,不支持SQL語句,不支持索引;
  • 同時只能有一個進(jìn)程(當(dāng)然,這個進(jìn)程可以是多線程的)訪問一個特定的數(shù)據(jù)庫;
  • LevelDB只是一個lib庫,沒有實現(xiàn)什么client-server網(wǎng)絡(luò)通訊什么的,當(dāng)然用戶可以自己將lib包裝一層,實現(xiàn)自己的server;

LevelDB的性能如何?

內(nèi)存緩存的特點(diǎn)就是快。

Google也進(jìn)行了一系列測試:測試庫共100w行記錄,每條記錄16字節(jié)的key,100字節(jié)的value,壓縮后的value大概50字節(jié)。

寫性能

  • 順序?qū)懀浩骄看尾僮骱臅r1.765微秒,即支持每秒大概55w次順序?qū)懖僮?
  • 順序?qū)?每次都刷盤:平均每次操作耗時268.409微妙,即支持每秒大概3700次的刷盤寫操作;
  • 隨機(jī)寫:平均每次操作耗時2.460微秒,即支持每秒大概40w次隨機(jī)寫操作;
  • 更新寫:平均每次操作耗時2.380微秒,性能和隨機(jī)寫差不多;

讀性能

  • 隨機(jī)讀:平均每次操作耗時16.677微秒,即支持每秒大概6w次隨機(jī)讀操作;
  • 順序讀:平均每次操作耗時0.476微秒,即支持每秒大概210w次順序讀操作;
  • 逆序讀:平均每次操作耗時0.724微秒,即支持每秒大概130w次逆序讀操作;

上述性能都是在沒有打開“壓縮”功能下的結(jié)果,如果打開“壓縮”選項,性能會有所提升。

畫外音:Google非常誠實的提到,由于100w行的數(shù)據(jù)量很小,這些數(shù)據(jù)是能夠完全放入內(nèi)存。

【本文為51CTO專欄作者“58沈劍”原創(chuàng)稿件,轉(zhuǎn)載請聯(lián)系原作者】

戳這里,看該作者更多好文

責(zé)任編輯:趙寧寧 來源: 51CTO專欄
相關(guān)推薦

2020-05-26 10:42:31

數(shù)據(jù)庫讀寫分離數(shù)據(jù)庫架構(gòu)

2019-07-05 07:50:52

數(shù)據(jù)庫空值查詢

2009-11-20 18:08:37

Oracle數(shù)據(jù)庫

2009-11-02 18:07:58

Oracle數(shù)據(jù)庫

2018-06-26 09:37:07

時序數(shù)據(jù)庫FacebookNoSQL

2024-12-04 16:12:31

2016-12-21 15:08:14

數(shù)據(jù)庫垂直拆分

2020-07-21 07:42:29

數(shù)據(jù)庫信息技術(shù)

2009-11-20 17:06:49

Oracle數(shù)據(jù)庫字符

2025-02-25 07:49:36

智能體數(shù)據(jù)庫DeepSeek

2023-04-15 20:33:35

圖形數(shù)據(jù)庫數(shù)據(jù)庫

2023-07-30 10:09:36

MMD數(shù)據(jù)庫

2019-11-20 10:38:59

MySQLSQL數(shù)據(jù)庫

2022-03-04 16:06:33

數(shù)據(jù)庫HarmonyOS鴻蒙

2025-01-21 07:39:04

Linux堆內(nèi)存Golang

2015-11-23 17:34:33

秒借

2018-03-12 21:31:24

區(qū)塊鏈

2019-07-26 06:16:37

MySQLSQLexplain

2017-03-16 08:46:57

延時消息環(huán)形隊列數(shù)據(jù)結(jié)構(gòu)

2009-11-12 09:16:15

ADO.NET數(shù)據(jù)庫連
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號