lmdb 键值数据库读写测试
发布时间:2020-05-29 00:50:21 所属栏目:Python 来源:互联网
导读:lmdb 键值数据库读写测试
|
下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。 脚本之家小编现在分享给大家,也给大家做个参考。 import lmdb
import os
import argparse
import gevent
import gevent.queue
TEMP_PATH="/dev/shm/test"
#TEMP_PATH="/dev/shm/"
env = lmdb.Environment('./lm_db/',readonly = False,map_size=1048576 * 1024,metasync=False,sync=True,map_async=True)
files = os.listdir(TEMP_PATH)
queue = gevent.queue.Queue()
map(queue.put,files)
def lmdbstore(db,queue = queue):
with db.begin(write=True) as lmdb_txn:
try:
for i in xrange(3000):
item = queue.get()
key = item
value = file(os.path.join(TEMP_PATH,item)).read()
lmdb_txn.put( key,value )
print(i,item)
except StopIteration as exc:
print( str(exc))
def delete(db):
with db.begin( write = True ) as txn:
cursor = txn.cursor()
for idx,data in enumerate( cursor.iternext_nodup() ):
txn.delete(data)
def query(db):
with db.begin( write = True) as txn:
cursor = txn.cursor()
for idx,data in enumerate( cursor.iternext_nodup()):
print(idx,data)
if __name__ == '__main__':
#query( env )
lmdbstore(env,queue)
env.sync(True)
以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。 如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
