纯Python开发的nosql数据库CodernityDB介绍和使用实例


Posted in Python onOctober 23, 2014

看看这个logo,有些像python的小蛇吧 。这次介绍的数据库codernityDB是纯python开发的。

纯Python开发的nosql数据库CodernityDB介绍和使用实例

先前用了下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)
Python 相关文章推荐
python pickle 和 shelve模块的用法
Sep 16 Python
一则python3的简单爬虫代码
May 26 Python
Python中字符编码简介、方法及使用建议
Jan 08 Python
基于Django的python验证码(实例讲解)
Oct 23 Python
python3通过selenium爬虫获取到dj商品的实例代码
Apr 25 Python
python实现Dijkstra算法的最短路径问题
Jun 21 Python
Python3内置模块之base64编解码方法详解
Jul 13 Python
python爬取Ajax动态加载网页过程解析
Sep 05 Python
解决Tensorboard 不显示计算图graph的问题
Feb 15 Python
python 两种方法修改文件的创建时间、修改时间、访问时间
Sep 26 Python
python归并排序算法过程实例讲解
Nov 04 Python
Python matplotlib安装以及实现简单曲线的绘制
Apr 26 Python
Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子
Oct 23 #Python
使用Python开发windows GUI程序入门实例
Oct 23 #Python
手动实现把python项目发布为exe可执行程序过程分享
Oct 23 #Python
python文件操作整理汇总
Oct 21 #Python
Python中input和raw_input的一点区别
Oct 21 #Python
Python中if __name__ == "__main__"详细解释
Oct 21 #Python
Python创建文件和追加文件内容实例
Oct 21 #Python
You might like
广播爱好者需要了解的天线知识
2021/03/01 无线电
php实现学生管理系统
2020/03/21 PHP
PHP基于curl后台远程登录正方教务系统的方法
2016/10/14 PHP
PHP框架实现WebSocket在线聊天通讯系统
2019/11/21 PHP
从URL中提取参数与将对象转换为URL查询参数的实现代码
2012/01/12 Javascript
uploadify 3.0 详细使用说明
2012/06/18 Javascript
博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)
2013/03/24 Javascript
jQuery实现页面滚动时动态加载内容的方法
2015/03/20 Javascript
理解javascript定时器中的单线程
2016/02/23 Javascript
JavaScript实现的浏览器下载文件的方法
2017/08/09 Javascript
Vue集成Iframe页面的方法示例
2017/12/12 Javascript
浅谈ng-zorro使用心得
2018/12/03 Javascript
解决Layui 表格自适应高度的问题
2019/11/15 Javascript
解决vue自定义指令导致的内存泄漏问题
2020/08/04 Javascript
[02:45]DOTA2英雄基础教程 伐木机
2013/12/23 DOTA
[14:25]教你分分钟做大人:主宰(HEROS)
2014/12/08 DOTA
Python的Django框架中settings文件的部署建议
2015/05/30 Python
Python编程实战之Oracle数据库操作示例
2017/06/21 Python
[原创]python爬虫(入门教程、视频教程)
2018/01/08 Python
Python OpenCV 直方图的计算与显示的方法示例
2018/02/08 Python
Python实现按当前日期(年、月、日)创建多级目录的方法
2018/04/26 Python
详解windows python3.7安装numpy问题的解决方法
2018/08/13 Python
python中wx模块的具体使用方法
2020/05/15 Python
纯HTML5+CSS3制作生日蛋糕代码
2016/11/16 HTML / CSS
美国著名的家居用品购物网站:Bed Bath & Beyond
2018/01/05 全球购物
Farfetch阿联酋:奢侈品牌时尚购物平台
2019/07/26 全球购物
西安启天科技有限公司网络工程师面试题笔试题
2016/06/12 面试题
银行会计职员个人的自我评价
2013/09/29 职场文书
小区物业门卫岗位职责
2014/04/10 职场文书
餐厅周年庆活动方案
2014/08/25 职场文书
2014年部门工作总结
2014/11/12 职场文书
五四青年节活动总结
2015/02/10 职场文书
求职简历自荐信怎么写
2015/03/26 职场文书
62句有关感恩节文案(推荐收藏)
2019/11/28 职场文书
python基于tkinter实现gif录屏功能
2021/05/19 Python
小程序实现侧滑删除功能
2022/06/25 Javascript