1. CouchDB: The Definitive Guide (2010)
Three of CouchDB’s creators show you how to use this document-oriented database as a standalone application framework or with high-volume, distributed applications. With its simple model for storing, processing, and accessing data, CouchDB is ideal for web applications that handle huge amounts of loosely structured data. That alone would stretch the limits of a relational database, yet CouchDB offers an open source solution that’s reliable, scales easily, and responds quickly.
CouchDB works with self-contained data that has loose or ad-hoc connections. It’s a model that fits many real-world items, such as contacts, invoices, and receipts, but you’ll discover that this database can easily handle data of any kind. With this book, you’ll learn how to work with CouchDB through its RESTful web interface, and become familiar with key features such as simple document CRUD (create, read, update, delete), advanced MapReduce, deployment tuning, and more.
- Understand the basics of document-oriented storage and manipulation
- Interact with CouchDB entirely though HTTP using its RESTful interface
- Model data as self-contained JSON documents
- Handle evolving data schemas naturally
- Query and aggregate data in CouchDB using MapReduce views
- Replicate data between nodes
- Tune CouchDB for increased performance and reliability
Author(s): J. Chris Anderson, Jan Lehnardt
This practical guide offers a short course on scaling CouchDB to meet the capacity needs of your distributed application. Through a series of scenario-based examples, this book lets you explore several methods for creating a system that can accommodate growth and meet expected demand. In the process, you learn about several tools that can help you with replication, load balancing, clustering, and load testing and monitoring.
- Apply performance tips for tuning your database
- Replicate data, using Futon and CouchDB’s RESTful interface
- Distribute CouchDB’s workload through load balancing
- Learn options for creating a cluster of CouchDB nodes, including BigCouch, Lounge, and Pillow
- Conduct distributed load testing with Tsung
Author(s): Bradley Holt
CouchDB is a new breed of database for the Internet, geared to meet the needs of today’s dynamic web applications. With this concise introduction, you’ll learn how CouchDB’s simple model for storing, processing, and accessing data makes it ideal for the type of data and rapid response users now demand from your applications—and how easy CouchDB is to set up, deploy, maintain, and scale.
The code-packed examples in this book will help you learn how to work with documents, populate a simple database, replicate data from one database to another, and a host of other tasks.
- Install CouchDB on Linux, Mac OS X, Windows, or (if you must) from the source code
- Interact with data through CouchDB’s RESTful API, and use standard HTTP operations, such as PUT, GET, POST, and DELETE
- Use Futon—CouchDB’s web-based interface— to manage databases and documents, and to configure replications
- Learn how to create, update, and delete documents in JSON format, and how to create and delete databases
- Work with design documents to get the formatting and indexing your application requires
Author(s): MC Brown
4. CouchDB 2.0 Reference Manual (2015)
Unlike a relational database, CouchDB does not store data and relationships in tables. Instead, each database is a collection of independent documents. Each document maintains its own data and self-contained schema. An application may access multiple databases, such as one stored on a user’s mobile phone and another on a server. Document metadata contains revision information, making it possible to merge any differences that may have occurred while the databases were disconnected.
Author(s): CouchDB Team
“It’s not easy to find such a generous book on big data and databases. Fortunately, this book is the one.” Feng Yu. Computing Reviews. June 28, 2016.
This is a book for enterprise architects, database administrators, and developers who need to understand the latest developments in database technologies. It is the book to help you choose the correct database technology at a time when concepts such as Big Data, NoSQL and NewSQL are making what used to be an easy choice into a complex decision with significant implications.
The relational database (RDBMS) model completely dominated database technology for over 20 years. Today this “one size fits all” stability has been disrupted by a relatively recent explosion of new database technologies. These paradigm-busting technologies are powering the “Big Data” and “NoSQL” revolutions, as well as forcing fundamental changes in databases across the board.
Deciding to use a relational database was once truly a no-brainer, and the various commercial relational databases competed on price, performance, reliability, and ease of use rather than on fundamental architectures. Today we are faced with choices between radically different database technologies. Choosing the right database today is a complex undertaking, with serious economic and technological consequences.
Next Generation Databases demystifies today’s new database technologies. The book describes what each technology was designed to solve. It shows how each technology can be used to solve real word application and business problems. Most importantly, this book highlights the architectural differences between technologies that are the critical factors to consider when choosing a database platform for new and upcoming projects.
- Introduces the new technologies that have revolutionized the database landscape
- Describes how each technology can be used to solve specific application or business challenges
- Reviews the most popular new wave databases and how they use these new database technologies
Author(s): Guy Harrison
The new world of cloud computing needs data storage. CouchDB is the scalable, portable, simple database engine that is helping open source cloud architects put their data stores onto a firm foundation. Beginning CouchDB provides the tools to begin using this very powerful database engine without having to pay license fees for the software, or worry about administrator’s certifications or vast hardware requirements. This book teaches the fundamentals of one of the most powerful database engines ever created for the price of a good lunch. After reading this book and working through the examples, you’ll be able to write your own applications for CouchDB quickly and easily.
- In-depth, non-intimidating guide to CouchDB and how it differs from similar offerings such as SimpleDB and BigTable, and also how it differs from traditional relational and object-oriented databases such as Oracle, SQL Server, and MySQL.
- A tutorial-oriented approach to teaching readers how to use CouchDB, featuring many code examples and listings, as well as screenshots where relevant.
Author(s): Joe Lennon
7. NoSQL for Mere Mortals (2015)
The Easy, Common-Sense Guide to Solving Real Problems with NoSQL
The Mere Mortals ® tutorials have earned worldwide praise as the clearest, simplest way to master essential database technologies. Now, there’s one for today’s exciting new NoSQL databases. NoSQL for Mere Mortals guides you through solving real problems with NoSQL and achieving unprecedented scalability, cost efficiency, flexibility, and availability.
Drawing on 20+ years of cutting-edge database experience, Dan Sullivan explains the advantages, use cases, and terminology associated with all four main categories of NoSQL databases: key-value, document, column family, and graph databases. For each, he introduces pragmatic best practices for building high-value applications. Through step-by-step examples, you’ll discover how to choose the right database for each task, and use it the right way.
–Getting started: What NoSQL databases are, how they differ from relational databases, when to use them, and when not to Data management principles and design criteria: Essential knowledge for creating any database solution, NoSQL or relational
–Key-value databases: Gaining more utility from data structures
–Document databases: Schemaless databases, normalization and denormalization, mutable documents, indexing, and design patterns
–Column family databases: Google’s BigTable design, table design, indexing, partitioning, and Big Data
Graph databases: Graph/network modeling, design tips, query methods, and traps to avoid
Whether you’re a database developer, data modeler, database user, or student, learning NoSQL can open up immense new opportunities. As thousands of database professionals already know, For Mere Mortals is the fastest, easiest route to mastery.
Author(s): Dan Sullivan
Data is getting bigger and more complex by the day, and so are the choices in handling that data. As a modern application developer you need to understand the emerging field of data management, both RDBMS and NoSQL. Seven Databases in Seven Weeks takes you on a tour of some of the hottest open source databases today. In the tradition of Bruce A. Tate’s Seven Languages in Seven Weeks, this book goes beyond your basic tutorial to explore the essential concepts at the core each technology.
Redis, Neo4J, CouchDB, MongoDB, HBase, Riak and Postgres. With each database, you’ll tackle a real-world data problem that highlights the concepts and features that make it shine. You’ll explore the five data models employed by these databases-relational, key/value, columnar, document and graph-and which kinds of problems are best suited to each.
You’ll learn how MongoDB and CouchDB are strikingly different, and discover the Dynamo heritage at the heart of Riak. Make your applications faster with Redis and more connected with Neo4J. Use MapReduce to solve Big Data problems. Build clusters of servers using scalable services like Amazon’s Elastic Compute Cloud (EC2).
Discover the CAP theorem and its implications for your distributed data. Understand the tradeoffs between consistency and availability, and when you can use them to your advantage. Use multiple databases in concert to create a platform that’s more than the sum of its parts, or find one that meets all your needs at once.
Seven Databases in Seven Weeks will take you on a deep dive into each of the databases, their strengths and weaknesses, and how to choose the ones that fit your needs.
What You Need:
To get the most of of this book you’ll have to follow along, and that means you’ll need a *nix shell (Mac OSX or Linux preferred, Windows users will need Cygwin), and Java 6 (or greater) and Ruby 1.8.7 (or greater). Each chapter will list the downloads required for that database.
Author(s): Eric Redmond, Jim Wilson
If you want to use CouchDB to support real-world applications, you’ll need to create MapReduce views that let you query this document-oriented database for meaningful data. With this short and concise ebook, you’ll learn how to create a variety of MapReduce views to help you query and aggregate data in CouchDB’s large, distributed datasets.
You’ll get step-by-step instructions and lots of sample code to create and explore several MapReduce views through the course of the book, using an example database you construct. To work with these different views, you’ll learn how to use the Futon web administration console and the cURL command line tool that come with CouchDB.
- Learn how the Map and Reduce steps work independently and together to index your data
- Use the example database to create several temporary views based on different criteria
- Convert your temporary views to permanent views within a design document
- Learn several options for querying the data within your views
- Limit the number of results returned, skip some results, or reverse the order of the output
- Group your results by exact keys or by parts of keys
Bradley Holt, co-founder of the creative services firm Found Line, is a web developer and entrepreneur ten years of PHP and MySQL experience. He began using CouchDB before the release of version 1.0. Bradley is an active member of the PHP community, and can be reached at bradley-holt.com.
Author(s): Bradley Holt
Get your PHP application from conception to deployment by leveraging CouchDB’s robust features with this book and ebook.
- Build and deploy a flexible Social Networking application using PHP and leveraging key features of CouchDB to do the heavy lifting.
- Explore the features and functionality of CouchDB, by taking a deep look into Documents, Views, Replication, and much more.
- Conceptualize a lightweight PHP framework from scratch and write code that can easily port to other frameworks.
CouchDB is a NoSQL database which is making waves in the development world. It’s the tool of choice for many PHP developers so they need to understand the robust features of CouchDB and the tools that are available to them.
CouchDB and PHP Web Development Beginner’s Guide will teach you the basics and fundamentals of using CouchDB within a project. You will learn how to build an application from beginning to end, learning the difference between the “quick way” to do things, and the “right way” by looking through a variety of code examples and real world scenarios.
You will start with a walkthrough of setting up a sound development environment and then learn to create a variety of documents manually and programmatically. You will also learn how to manage their source control with Git and keep track of their progress. With each new concept, such as adding users and posts to your application, the author will take you through code step-by-step and explain how to use CouchDB’s robust features. Finally, you will learn how to easily deploy your application and how to use simple replication to scale your application.
What you will learn from this book
- Set up a web development environment from scratch
- Dive into CouchDB and learn how it looks at databases, documents, design documents, and views
- Conceptualize and create a simple PHP framework from scratch that will interact directly with CouchDB
- Create the ability for users to sign up, log in, and reset their password through our application using CouchDB
- Allow users to create posts and leverage design documents, views, and lists to do the heavy lifting
- Learn how to add some of the bells and whistles commonly used by modern social networks
- Add security and deploy your application to production
- Learn how to use CouchDB to replicate your database
Each chapter follows the creation of a social networking application with step-by-step instructions. This means that you will have easily created a complete, working application by the end of the book.
Who this book is written for
This book is for beginner and intermediate PHP developers interested in using CouchDB development in their projects. Advanced PHP developers will appreciate the familiarity of the PHP architecture and can easily learn how to incorporate CouchDB into their existing development experiences.
Author(s): Tim Juravich
Today’s mobile devices have GPS and standard APIs to give you access to coordinates—but what can you do with that data? With this concise book, application developers learn how to work with location data quickly and easily, using Node.js, CouchDB, and other open source tools and libraries.
- Learn how to serve dynamic content with Node.js, and use its asynchronous IO to handle several requests at once
- Become familiar with GeoJSON, Geohash, and the Geospatial Data Abstraction Library (GDAL) for working with spatial data
- Build geospatial indexes using the GeoCouch branch of CouchDB
- Combine these tools to build a project that lets users post real-time chat messages tagged with their current map location
Author(s): Mick Thompson
CouchDB: The Definitive Guide by J. Chris Anderson (2010-02-05) [J. Chris Anderson;Jan Lehnardt;Noah Slater] on Amazon.com. *FREE* shipping on qualifying offers.
Author(s): J. Chris Anderson;Jan Lehnardt;Noah Slater