看看這個logo,有些像python的小蛇吧 。這次介紹的數據庫codernityDB是純python開發的。
先前用了下tinyDB這個本地數據庫,也在一個api服務中用了下,一開始覺得速度有些不給力,結果一看實現的方式,真是太鳥了,居然就是json的存儲,連個二進制壓縮都沒有。? 這里介紹的CodernityDB 也是純開發的一個小數據庫。
CodernityDB是開源的,純Python語言(沒有第三方依賴),快速,多平臺的NoSQL型數據庫。它有可選項支持HTTP服務版本(CodernityDB-HTTP),和Python客戶端庫(CodernityDB-PyClient),它目標是100%兼容嵌入式的版本。
主要特點
1.Pyhon原生支持
2.多個索引
3.快(每秒可達50 000次insert操作)
4.內嵌模式(默認)和服務器模式(CodernityDB-HTTP),加上客戶端庫(CodernityDB-PyClient),能夠100%兼容
5.輕松完成客戶的存儲
CodernityDB數據庫操作代碼實例:
Insert(simple)
?
from CodernityDB.database import Database
?
db = Database('/tmp/tut1')
db.create()
?
insertDict = {'x': 1}
print db.insert(insertDict)
?
?
?
Insert
?
from CodernityDB.database import Database
from CodernityDB.hash_index import HashIndex
?
class WithXIndex(HashIndex):
??? def __init__(self, *args, **kwargs):
??????? kwargs['key_format'] = 'I'
??????? super(WithXIndex, self).__init__(*args, **kwargs)
?
??? def make_key_value(self, data):
??????? a_val = data.get("x")
??????? if a_val is not None:
??????????? return a_val, None
??????? return None
?
??? def make_key(self, key):
??????? return key
?
db = Database('/tmp/tut2')
db.create()
?
x_ind = WithXIndex(db.path, 'x')
db.add_index(x_ind)
?
print db.insert({'x': 1})
?
Count
?
from CodernityDB.database import Database
?
db = Database('/tmp/tut1')
db.open()
?
print db.count(db.all, 'x')
?
Get
?
from CodernityDB.database import Database
?
db = Database('/tmp/tut2')
db.open()
?
print db.get('x', 1, with_doc=True)
?
Delete
?
from CodernityDB.database import Database
?
db = Database('/tmp/tut2')
db.open()
?
curr = db.get('x', 1, with_doc=True)
doc? = curr['doc']
?
db.delete(doc)
?
Update
?
from CodernityDB.database import Database
?
db = Database('/tmp/tut2')
db.create()
?
curr = db.get('x', 1, with_doc=True)
doc? = curr['doc']
?
doc['Updated'] = True
db.update(doc)
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
