Your SlideShare is downloading. ×
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Mihai Plesa - CouchDB
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Mihai Plesa - CouchDB

955

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
955
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. CouchDB
  • 2. meetup@cluj.rb ~$ whoami
  • 3. ls -l /couchdb/● intro● demo
  • 4. view /couchdb/lol
  • 5. head /couchdb/about Apache CouchDB is a document-orienteddatabase that can be queried and indexed using JavaScript in a MapReduce fashion.CouchDB also offers incremental replication withbi-directional conflict detection and resolution.
  • 6. cat /couchdb/aboutCouchDB provides a RESTful JSON API than canbe accessed from any environment that allows HTTP requests.CouchDB’s built in Web admin console speaksdirectly to the database using HTTP requests issued from your browser.
  • 7. tail /couchdb/aboutCouchDB is written in Erlang, a robust functional programming language ideal for building concurrent distributed systems.Erlang allows for a flexible design that is easily scalable and readily extensible.
  • 8. cat /couchdb/history started in 2005 by Damien Katzbecame an Apache project in 2008 currently at version 1.1.1
  • 9. head /couchdb/how CouchDB is a document oriented database data is stored in “documents” and not in “relations” like in an RDBMSnon-locking MVCC and ACID compliant data store
  • 10. view /couchdb/how
  • 11. view /couchdb/how
  • 12. cat /couchdb/how no SQL querying is done using “views”views are defined using Map/Reduce functionsdata is indexed using these views as it is stored in the DB
  • 13. cat /couchdb/howMap functions emit (key, value) interpretation of the dataReduce functions aggregate data emitted by map functionsMap/Reduce functions are written in JavaScript or CoffeeScript
  • 14. head /couchdb/use good for:storing documents – or any data which is document-like hosting entire applications
  • 15. cat /couchdb/whyvery easy to program with – no SQL, no schema, no ORMschema-less means very easy to deploy changeseasy to administer, backup, replicate, can work offline
  • 16. tail /couchdb/use not suitable for: storing data which is relational in naturebe careful with data that needs to have unique values
  • 17. view /couchdb/lol
  • 18. vi /couchdb/doc{ “_id”: ”BCCD12CBB”, “_rev”: ”AB764C”, “type”: ”person”, “name”: ”Darth Vader”, “age”: 63, “headware”: [“Helmet”, “Sombrero”], “dark_side”: true}
  • 19. cat /couchdb/rest/howcreate: HTTP POST /db/BCCD12CBB read: HTTP GET /db/BCCD12CBB update: HTTP PUT /db/BCCD12CBBdelete: HTTP DELETE /db/BCCD12CBB
  • 20. head /couchdb/rest/usage$ curl -X GET http://server/database/document {“_id”:”ABC”,“_rev”:”1D4”,”data”:...}
  • 21. cat /couchdb/testssilly read-only benchmark with memory saturation2,500 req/s sustained on a 2Ghz dual core Athlon using 9.8 mb RAM
  • 22. exec /couchdb/demo lets get dirty!
  • 23. view /couchdb/lol
  • 24. sudo halt Q?

×