NoSQL读书笔记 - CouchDB
来源:互联网 发布:海康网络键盘怎么设置 编辑:程序博客网 时间:2024/05/24 01:52
Apache CouchDB
™ is a databasethat uses JSON for documents,
JavaScript for MapReduce queries,
and regular HTTP for an API
CouchDB - Cluster of unreliable commodity hardware database
Lotus Notes的后代. 开发者来自IBM所有数据以文档的方式组织, 使用JSON持久化数据. Append方式修改数据, 视图方式查询修改数据. 视图作为特殊的文档.
文档可以引用其他文档,但不保证有效性和一致性. 文档不可以嵌套文档.
可以带附件,拥有128位唯一标识符. 是半结构化文档. 没有schema也就无效schema迁移.
每个database具有扁平的非层次化的名字空间,
文档索引通过B树算法计算id和版本号得到.
视图以javascript函数定义,不会修改数据,
定义视图的javascript函数叫做map和reduce,
为了效率, 对数据库的写操作不会生成视图. 视图builder负责对视图进行更新.
更新数据不会有锁操作.版本冲突被当作正常场景. 并发版本数没有限制,客户端负责解决冲突.
CouchDB设计之初即考虑了分布式配置.
分布式场景包括集群,离线和远程三种方式, 后两种方式可以在CouchDB实例失去联接情况下进行数据操作
数据备份通过增量方式以文档为单位进行. 既可以备份整个数据库,
CouchDB以REST形式的HTTP请求进行数据操作. 提供了不同语言的接口库. 这种方式易于集成.
CouchDB保证ACID, 但不是强一致性.
CouchDB不会覆盖数据,因此可以保证一致性.即使宕机,
更新文档和数据库头分两步提交. CouchDB启动时校验数据保证数据一致性
CouchDB需要定期压缩数据以便节省磁盘空间.
CouchDB使用文档授权列表实现访问控制.
管理员权限
文档写入磁盘前要经过安全评估.
之前CouchDB使用c++实现,
使用shared-nothing集群方案.
- NoSQL读书笔记 - CouchDB
- 【NOSQL】couchDB
- NoSQL数据库CouchDB发布Android SDK
- NoSQL 读书笔记
- NoSQL数据库对比-Cassandra,Mongodb,CouchDB,Redis,Riak,HBase
- UnQL:CouchDB与SQLite推出的NoSQL查询语言
- NoSQL读书笔记---Cassandra
- NoSQL读书笔记 - 历史背景
- 深入NoSQL-读书笔记
- 读书笔记:NOSQL 菜鸟教程
- NOSQL数据库读书笔记(基础知识)
- 【NOSQL】《mongodb权威指南》读书笔记
- 各种nosql数据库的比较Cassandra,MongoDB,CouchDB,Redis,Riak,HBase
- NOSQL数据库大比拼:Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase
- NOSQL数据库大PK:Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase 数据库
- 各种nosql数据库的比较Cassandra,MongoDB,CouchDB,Redis,Riak,HBase
- NoSQL数据库 Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase comparison
- NOSQL数据库大比拼:Cassandra vs MongoDB vs CouchDB vs Redis vs Riak vs HBase
- 软件验证(Verification)和确认(Validation)的区别
- 检查字符是否是整数
- blog搬家, 此博客已暂停更新
- 黑马程序员 Java基础<十>---> IO流<1>
- 什么是支持向量机--目前的研究热点
- NoSQL读书笔记 - CouchDB
- Ubuntu12.04下安装Qt4和创建第一个Qt程序
- 二分图匹配算法Hungarian Algorithm (匈牙利算法)
- C++ 实现内存池
- 多核DSP C6678下CCS5.2 环境下分析L1P,L1D,L2 cache的方法
- 随机生成密码
- ssh架构原理
- 小波变换--matlab中系数的获取
- Codeforces Round #170