Jan 2015
Commands
Accessing server information
Creating a database
Get database info
Create a document
Retrieve a document
Update document
Etc.
You're viewing old version number 46. - Current version
CouchDB
- http://couchdb.apache.org
- http://wiki.apache.org/couchdb/HTTP_view_API
- http://lethain.com/full-text-search-in-couchdb-using-couchdb/
- http://www.techfreak.net/2013/11/14/a-couchdb-view-example.html
- http://stackoverflow.com/questions/5285787/full-text-search-in-couchdb
- http://sitr.us/2009/06/30/database-queries-the-couchdb-way.html
- http://blog.mattwoodward.com/2011/05/string-matching-in-couchdb-views.html
http://guide.couchdb.org/draft/tour.html
https://pythonhosted.org/CouchDB/mapping.html
For easier searching, it's best to install Lucene
- https://github.com/rnewson/couchdb-lucene
- http://www.slideshare.net/martin.rehfeld/couchdblucene
- http://www.spaceinvade.rs/2014/07/23/CouchDB-Lucene-integration/
- http://lucene.apache.org/core/2_9_4/queryparsersyntax.html
Installed CouchDB on Oct 10, 2014.
apt-get install couchdb
It installed version 1.0.1.
Version 1.6.1 is available.
https://github.com/rnewson/couchdb-lucene
https://launchpad.net/~couchdb/+archive/ubuntu/stable
# install the ppa-finding tool
# for 12.04 release
sudo apt-get install python-software-properties -y
# for 14.04 release
sudo apt-get install software-properties-common -y
# add the ppa
sudo add-apt-repository ppa:couchdb/stable -y
# update cached list of packages
sudo apt-get update -y
# remove any existing couchdb binaries
sudo apt-get remove couchdb couchdb-bin couchdb-common -yf
# see my shiny goodness - note the version number displayed and ensure its what you expect
sudo apt-get -f install
sudo apt-get install -V couchdb
# manage via upstart
sudo stop couchdb
couchdb stop/waiting
# update /etc/couchdb/local.ini with 'bind_address=0.0.0.0' as needed
sudo start couchdb
couchdb start/running, process 17422
# check version
couchdb -V
couchdb - Apache CouchDB 1.6.1
Good. Up to date. Oct 10, 2014
old post:
http://blog.woobling.org/2009/05/why-i-dont-use-couchdb.html
Perl
http://search.cpan.org/dist/CouchDB-Client/lib/CouchDB/Client.pm
The above main module is outdated or oldish, 2009.
http://cpanratings.perl.org/dist/CouchDB-Client
"Generally, when I have a choice I prefer AnyEvent::CouchDB."
http://search.cpan.org/~beppu/AnyEvent-CouchDB- 1.31/lib/AnyEvent/CouchDB.pm - (2011)
perl -MCPAN -e 'install CouchDB::Client'
Installed above Perl module on Oct 10, 2014. It took under one minute to install, unlike the nearly 10 minutes to complete the install of the MongoDB Perl client module.
Jan 2015
- Store::CouchDB
- http://search.cpan.org/~norbu/Store-CouchDB-3.8/lib/Store/CouchDB.pm
- https://github.com/norbu09/Store-CouchDB
- https://metacpan.org/pod/Store::CouchDB
- installed on Jan 13, 2015
- had to manually download and install Types::Serialiser too. this module is used by Store::CouchDB
Commands
http://wiki.apache.org/couchdb/Complete_HTTP_API_Reference
CouchDB is API, HTTP, REST, JSON, and JavaScript driven.
in the file /etc/couchdb/local.ini
set and uncomment the lines:
port=5984
bind_address=127.0.0.1
http://en.wikipedia.org/wiki/CouchDB
Accessing server information
Reponse:
{"couchdb":"Welcome","uuid":"2c6d440df9b206a8592c4f5db6f4e38a","version":"1.6.1","vendor":{"name":"Ubuntu","version":"12.04"}}
Creating a database
Creating a database named wiki
curl -X PUT http://127.0.0.1:5984/wiki
Response:
{"ok": true}
Attempting to create a second database named wiki
curl -X PUT http://127.0.0.1:5984/wiki
Response:
{"error":"file_exists", "reason":"The database could not be created, the file already exists."}
Get database info
Retrieve information about the wiki database
curl http://127.0.0.1:5984/wiki
{"db_name":"wiki","doc_count":0,"doc_del_count":0,"update_seq":0,"purge_seq":0,"compact_running":false,"disk_size":79,"data_size":0,"instance_start_time":"1412965274017838","disk_format_version":6,"committed_update_seq":0}
Create a document
Create a document, asking CouchDB to supply a document id
curl -X POST -H "Content-Type: application/json" --data '{ "text" : "Wikipedia on CouchDB", "rating": 5 }'
http://127.0.0.1:5984/wiki
Response
{"ok":true,"id":"eadaefc9769de77b098009cfae000ef6","rev":"1-80fd6f7aeb55c83c8999b4613843af5d"}
Retrieve a document
curl http://127.0.0.1:5984/wiki/eadaefc9769de77b098009cfae000ef6
Response
{"_id":"eadaefc9769de77b098009cfae000ef6","_rev":"1-80fd6f7aeb55c83c8999b4613843af5d","text":"Wikipedia on CouchDB","rating":5}
Update document
http://wiki.apache.org/couchdb/HTTP_Document_API#PUT
curl -X PUT -H "Content-Type: application/json" --data '{ "text" : "Wikipedia on CouchDB", "rating": 0, "_rev":"1-80fd6f7aeb55c83c8999b4613843af5d"}'
http://127.0.0.1:5984/wiki/eadaefc9769de77b098009cfae000ef6
Response
{"ok":true,"id":"eadaefc9769de77b098009cfae000ef6","rev":"2-5ba469fb0677c7293baab0403c478fd2"}
Etc.
[X] http://guide.couchdb.org/draft/cookbook.html
[X] http://guide.couchdb.org/draft/views.html
http://stackoverflow.com/questions/2923063/searching-by-key-in-apache-couchdb
http://sitr.us/2009/06/30/database-queries-the-couchdb-way.html
From JR's : articles
409 words - 5190 chars
- 2 min read
created on
updated on
- #
source
- versions
Related articles
CouchDB - Aug 24, 2017