admin avatar

leveldb + python 的数据库方案

🕛 by admin

LevelDB是google开源的一个key-value存储引擎库,LevelDB采用日志式的写方式来提高写性能,但是牺牲了部分读性能。为了弥补牺牲了的读性能,一些人提议使用SSD作为存储介质。

LevelDB提供了Put,Delete和Get三个方法对数据库进行修改和查询。

py-leveldb 示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import leveldb

db = leveldb.LevelDB('./db')

# single put
db.Put('hello', 'world')
print db.Get('hello')

# single delete
db.Delete('hello')
print db.Get('hello')

# multiple put/delete applied atomically, and committed to disk
batch = leveldb.WriteBatch()
batch.Put('hello', 'world')
batch.Put('hello again', 'world')
batch.Delete('hello')

db.Write(batch, sync = True)

💘 相关文章

写一条评论

Based on Golang + fastHTTP + sdb | go1.17.1 Processed in 1ms