couchdb的使用例子
couchdb安装
sudo apt-get install erlang
sudo apt-get install libmozjs185-dev libicu-dev
下载源码,编译安装
启动以后
进入管理界面
http://localhost:5984/_utils
数据的curd部分遵循restful模式,直接忽略,不过关于查询,由于文档型不太好弄关系处理,所以,添加了一个视图,用于map reduce的数据查询
在couchdb里面做map reduce查询不复杂,用于查询的view和一般的文档没有太大的区别,有两个地方不一样
必须以_design开头,必须有views字段,例如
{
"_id": "_design/articles",
"_rev": "6-3d7568f84acd59d397e8b0e7f7add7eb",
"language": "javascript",
"views": {
"all": {
"map": "function(doc) { emit(doc.user_name, doc.money); }",
"reduce": "function (key, values, rereduce) { return sum(values); }"
},
"by_author_id": {
"map": "function(doc) { if(doc.type == 'article') { emit([doc.user_name], doc); } }"
}
}
}
假如说我有几个数据
{
"_id": "0c5df7ff242754705fb3355373001fca",
"_rev": "5-e705b7220c11304fd2212d40b1258bce",
"money": ,
"user_name": "猪头",
"type": "article"
}
{
"_id": "0c5df7ff242754705fb3355373002827",
"_rev": "4-b9024f71db567187cc36cadbabecc580",
"money": ,
"user_name": "白痴"
}
对于all查询条件进行查询
map+reduce一起
curl http://127.0.0.1:5984/test_db/_design/articles/_view/all?group=true
光查map,不reduce
curl http://127.0.0.1:5984/test_db/_design/articles/_view/all?reduce=false
查询by_author_id条件
curl http://127.0.0.1:5984/test_db/_design/articles/_view/by_author_id?reduce=false
自己看看结果比对下
定义在couchdb里面查询脚本支持python,js,erlang,不过似乎js最简单点
关于replication
默认的couchdb是绑定的本地ip,需要改成0.0.0.
目的数据库的database必须存在,否则会失败
couchdb的使用例子的更多相关文章
- 安装hyperledger fabric V1.0.1
安装文档位置: https://github.com/hyperledger/fabric fabric代码托管地址 https://hyperledger-fabric.readthedoc ...
- MongoDB与CouchDB 全方位对比
http://blog.nosqlfan.com/html/1519.html 本文见于MongoDB官方网站,MongoDB与CouchDB 很相似,他们都是文档型存储,数据存储格式都是JSON型的 ...
- CouchDB 简单HTTP接口使用说明
目录 1.简介 2.安装 2.HTTP接口简单使用 2.1.认证接口 2.1.1 Basic Authentication 2.1.2 Cookie Authentication 2.2 创建与删除数 ...
- MongoDB与CouchDB全方位对比(转)
出处:http://www.csdn.net/article/2011-03-21/294226 本文见于MongoDB官方网站,MongoDB与CouchDB很相似,他们都是文档型存储,数据存储格式 ...
- CouchDB学习-维护
官方文档 1 压缩 压缩操作是通过从数据库或者视图索引文件中移除无用的和老的数据减少硬盘使用空间.操作非常简单类似于其他数据库(SQLite等)管理系统. 在压缩目标期间,CouchDB将创建扩展名为 ...
- SQLServer地址搜索性能优化例子
这是一个很久以前的例子,现在在整理资料时无意发现,就拿出来再改写分享. 1.需求 1.1 基本需求: 根据输入的地址关键字,搜索出完整的地址路径,耗时要控制在几十毫秒内. 1.2 数据库地址表结构和数 ...
- C#+HtmlAgilityPack+XPath带你采集数据(以采集天气数据为例子)
第一次接触HtmlAgilityPack是在5年前,一些意外,让我从技术部门临时调到销售部门,负责建立一些流程和寻找潜在客户,最后在阿里巴巴找到了很多客户信息,非常全面,刚开始是手动复制到Excel, ...
- REGEX例子
作为REGEX的例子,代码9.3显示了一个给定的文件有多少行,具有给定的模式,通过命令行输入(注:有更有效率的方式来实现这个功能,如Unix下的grep命令,在这里只是给出了另一种方式).这个程序像下 ...
- CSharpGL(25)一个用raycast实现体渲染VolumeRender的例子
CSharpGL(25)一个用raycast实现体渲染VolumeRender的例子 本文涉及的VolumeRendering相关的C#代码是从(https://github.com/toolchai ...
随机推荐
- apache shiro整合spring(一)
apache shiro整合spring 将shiro配置文件整合到spring体系中 方式一:直接在spring的配置文件中import shiro的配置文件 方式二:直接在web.xml中配置sh ...
- Matching (2)
HALCON 10.0 II-B 3.1 Gray-Value-Based Matching 基于灰度的匹配是一个非常经典的方法,它仅适用于对象的不模糊,不缺失,灰度值不变化.适用于对象旋转转.注意 ...
- LeetCode OJ:Find Median from Data Stream(找数据流的中数)
Median is the middle value in an ordered integer list. If the size of the list is even, there is no ...
- linux系统参数统计脚本
#!/bin/sh clear if [[ $# -eq 0 ]] then #Define Variable Reset_terminal Reset_terminal=$(tput sgr0) # ...
- C++面向对象高级编程(一)基础篇
技术在于交流.沟通,转载请注明出处并保持作品的完整性. 概要: 知识点1 构造函数与析构函数 知识点2 参数与返回值 知识点3 const 知识点4 函数重载(要与重写区分开) 知识点5 友元 先以C ...
- APUE学习笔记——6 系统数据文件与信息
1.用户口令:/etc/passwd文件 该文件中包含下列结构体信息.其中,当下主修熊passwd不再这里显示,是使用了一个占位符. struct passwd { char * pw_name; / ...
- ROW_NUMBER() OVER(PARTITION BY)
select * from (select *,ROW_NUMBER() OVER(PARTITION BY GoodsID ORDER BY IsMain desc,OrderNum) as Mai ...
- jQuery 选择器效率
http://blog.csdn.net/cxl444905143/article/details/48808809 ID > Tag > Class ID 选择器是速度最快的,这主要是因 ...
- jQuery 滑动选项卡jQuery tabslet
Tabslet Yet another jQuery plugin for tabs, lightweight, easy to use and with some extra features ...
- I2S音频总线学习(二)I2S总线协议
http://blog.csdn.net/ce123_zhouwei/article/details/6919954