SlideShare uma empresa Scribd logo
1 de 58
Baixar para ler offline
Couch + DB = CouchDB?
                @NoSQL Taiwan




12年7月4日星期三
Who am I?




12年7月4日星期三
Kenzou Yeh




12年7月4日星期三
Founder of




12年7月4日星期三
What is   ?




12年7月4日星期三
a Real-Time Q&A platform on mobile devices




12年7月4日星期三
What we used for developing   ?




12年7月4日星期三
CouchDB, Redis, Memcache - Storage & Cache




12年7月4日星期三
Bottle, Django, RabbitMQ - Server Side




12年7月4日星期三
12年7月4日星期三
Why CouchDB?




12年7月4日星期三
Non-locking insertion and fast replication




12年7月4日星期三
12年7月4日星期三
Concurrency, Message Based, Distributed




12年7月4日星期三
12年7月4日星期三
Okay, let’s get it start




12年7月4日星期三
12年7月4日星期三
Document-Oriented




12年7月4日星期三
12年7月4日星期三
Schema-less




12年7月4日星期三
advantage?




12年7月4日星期三
MongoDB or Cassandra?




12年7月4日星期三
RESTful API




12年7月4日星期三
PUT http://couchdb/users

             GET http://couchdb/users/<id>

             POST http://couchdb/users/<id>

             DELETE http://couchdb/users/<id>




12年7月4日星期三
12年7月4日星期三
MVCC?




12年7月4日星期三
Multi-Version Concurrency Control




12年7月4日星期三
revision




12年7月4日星期三
Non-Blocking IO




12年7月4日星期三
12年7月4日星期三
Index & Query




12年7月4日星期三
View




12年7月4日星期三
Map/Reduce




12年7月4日星期三
Mapper


             index




12年7月4日星期三
Reducer




12年7月4日星期三
Query



             GET http://couchdb/view?key=28




12年7月4日星期三
update view once data changed




12年7月4日星期三
Sort & Slice



      GET http://couchdb/view?start_key=28&end_key=30




12年7月4日星期三
sort data with specific condition?




12年7月4日星期三
Mapper




12年7月4日星期三
Query



   GET http://couchdb/view?start_key=”Kenzou+Yeh:28”&end_key=”Kenzou+Yeh:30”




12年7月4日星期三
Replication




12年7月4日星期三
With Filter!




12年7月4日星期三
Conflict Resolving




12年7月4日星期三
12年7月4日星期三
Change Notification




12年7月4日星期三
Keep-Alive Connection



     GET http://couchdb/users/_changes?feed=continuous




12年7月4日星期三
Issue?




12年7月4日星期三
Append-Only = Disk Space is always increasing




12年7月4日星期三
Compaction




12年7月4日星期三
Re-design your schema




12年7月4日星期三
12年7月4日星期三
new database
               +
             view




12年7月4日星期三
Sharding?




12年7月4日星期三
No official support right now...




12年7月4日星期三
12年7月4日星期三
12年7月4日星期三
Thank you




12年7月4日星期三

Mais conteúdo relacionado

Destaque

Couch Db In 60 Minutes
Couch Db In 60 MinutesCouch Db In 60 Minutes
Couch Db In 60 MinutesGeorge Ang
 
Decorators in Python
Decorators in PythonDecorators in Python
Decorators in PythonBen James
 
CouchDB at New York PHP
CouchDB at New York PHPCouchDB at New York PHP
CouchDB at New York PHPBradley Holt
 
CouchDB – A Database for the Web
CouchDB – A Database for the WebCouchDB – A Database for the Web
CouchDB – A Database for the WebKarel Minarik
 
Python Programming Essentials - M20 - Classes and Objects
Python Programming Essentials - M20 - Classes and ObjectsPython Programming Essentials - M20 - Classes and Objects
Python Programming Essentials - M20 - Classes and ObjectsP3 InfoTech Solutions Pvt. Ltd.
 
CouchApps: Requiem for Accidental Complexity
CouchApps: Requiem for Accidental ComplexityCouchApps: Requiem for Accidental Complexity
CouchApps: Requiem for Accidental ComplexityFederico Galassi
 
Real World CouchDB
Real World CouchDBReal World CouchDB
Real World CouchDBJohn Wood
 
Customizing the Django Admin
Customizing the Django AdminCustomizing the Django Admin
Customizing the Django AdminLincoln Loop
 
20. Object-Oriented Programming Fundamental Principles
20. Object-Oriented Programming Fundamental Principles20. Object-Oriented Programming Fundamental Principles
20. Object-Oriented Programming Fundamental PrinciplesIntro C# Book
 
An introduction to CouchDB
An introduction to CouchDBAn introduction to CouchDB
An introduction to CouchDBDavid Coallier
 

Destaque (18)

CouchDB-Lucene
CouchDB-LuceneCouchDB-Lucene
CouchDB-Lucene
 
Apache CouchDB
Apache CouchDBApache CouchDB
Apache CouchDB
 
Couch Db In 60 Minutes
Couch Db In 60 MinutesCouch Db In 60 Minutes
Couch Db In 60 Minutes
 
Decorators in Python
Decorators in PythonDecorators in Python
Decorators in Python
 
Couch db
Couch dbCouch db
Couch db
 
CouchDB at New York PHP
CouchDB at New York PHPCouchDB at New York PHP
CouchDB at New York PHP
 
CouchDB – A Database for the Web
CouchDB – A Database for the WebCouchDB – A Database for the Web
CouchDB – A Database for the Web
 
Python Programming Essentials - M20 - Classes and Objects
Python Programming Essentials - M20 - Classes and ObjectsPython Programming Essentials - M20 - Classes and Objects
Python Programming Essentials - M20 - Classes and Objects
 
Sorting algorithm
Sorting algorithmSorting algorithm
Sorting algorithm
 
Couch db
Couch dbCouch db
Couch db
 
CouchDB
CouchDBCouchDB
CouchDB
 
CouchApps: Requiem for Accidental Complexity
CouchApps: Requiem for Accidental ComplexityCouchApps: Requiem for Accidental Complexity
CouchApps: Requiem for Accidental Complexity
 
CouchDB Vs MongoDB
CouchDB Vs MongoDBCouchDB Vs MongoDB
CouchDB Vs MongoDB
 
Real World CouchDB
Real World CouchDBReal World CouchDB
Real World CouchDB
 
Customizing the Django Admin
Customizing the Django AdminCustomizing the Django Admin
Customizing the Django Admin
 
20. Object-Oriented Programming Fundamental Principles
20. Object-Oriented Programming Fundamental Principles20. Object-Oriented Programming Fundamental Principles
20. Object-Oriented Programming Fundamental Principles
 
An introduction to CouchDB
An introduction to CouchDBAn introduction to CouchDB
An introduction to CouchDB
 
CouchDB
CouchDBCouchDB
CouchDB
 

Couch db@nosql+taiwan