Getting Started with RethinkDB.
Absorb the knowledge required to utilize, manage, and deploy RethinkDB using Node.jsAbout This Book Make the most of this open source, scalable databaseRethinkDB to ease the construction of web applications Run powerful queries using ReQL, which is the most convenient language to manipulate JSON doc...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham :
Packt Publishing, Limited
March 2016.
|
Temas: | |
Acceso en línea: | Texto completo |
Tabla de Contenidos:
- Cover
- Copyright
- Credits
- About the Author
- Acknowledgement
- About the Reviewer
- www.PacktPub.com
- Table of Contents
- Preface
- Chapter 1: Introducing RethinkDB
- Rethinking the database
- Changefeeds
- Horizontal scalability
- Powerful query language
- Developer-oriented
- Document-oriented
- Lock-free architecture
- Immediate consistency
- Secondary indexes
- Distributed joins
- Installing RethinkDB
- Installing RethinkDB on Ubuntu/Debian Linux
- Installing RethinkDB on CentOS and Fedora
- Installing RethinkDB on OS X
- Installing RethinkDB using Homebrew
- Building RethinkDB from source
- Configuring RethinkDB
- Running as a daemon
- Creating a configuration file
- Starting RethinkDB
- Running a query
- Summary
- Chapter 2: The ReQL Query Language
- Documents
- Document databases
- JSON document format
- Keys
- Arrays
- Embedded documents
- Data modeling
- Introducing ReQL
- An explicit query language
- Building a query
- Inserting data
- Batch inserts
- Reading data
- Filtering results
- Manipulating results
- Updating data
- Updating existing attributes
- Adding new attributes
- Deleting data
- Removing all documents
- Deleting a table
- Deleting a database
- Summary
- Chapter 3: Clustering, Sharding, and Replication
- An introduction to scaling
- What kind of system is it?
- Scaling reads
- Scaling writes
- Scaling data
- Clustering RethinkDB
- Creating a cluster
- Adding a server to the cluster
- Running queries on the cluster
- Replication
- Adding a secondary replica
- Failover
- Sharding
- Sharding a table
- Summary
- Chapter 4: Performance Tuning and Advanced Queries
- Performance tuning
- Increasing the cache size
- Increasing concurrency
- Using soft durability mode
- Bulk data import
- Introducing indexing
- Evaluating query performance.
- Creating and using an index
- Compound indexes
- Advanced queries
- Limits, skips, and sorts
- The limit command
- The skip command
- Sorting documents
- Finding a random document
- Grouping
- Aggregations
- Average
- Maximum
- The pluck command
- Summary
- Chapter 5: Programming RethinkDB in Node.js
- Introducing Node.js
- An increasingly popular technology
- An event-driven design
- Installing Node.js
- Installing on Linux
- Installing on Mac OS X
- Running Node.js
- Installing the RethinkDB module
- Connecting to RethinkDB
- Running a simple query
- Inserting documents
- Reading documents
- Updating and deleting documents
- Introducing Changefeeds
- A simple example using Changefeeds
- Summary
- Chapter 6: RethinkDB Administration and Deployment
- RethinkDB administration tools
- Backing up your data
- Backing up a single table
- Setting up automatic backups
- Restoring your data
- Securing RethinkDB
- Securing the web interface
- Securing the driver port
- Monitoring RethinkDB
- Monitoring issues
- Monitoring running jobs
- Deploying RethinkDB
- Summary
- Chapter 7: Developing Real-Time Web Applications
- Introducing real-time web applications
- Examples of real-time web apps
- Going real time on the Web
- Polling
- AJAX
- WebSockets
- Developing web applications with Node.js
- Express.js
- Routing
- Templating
- Socket.io
- Using RethinkDB in Node.js web applications
- Database polling
- Message queues
- Changefeeds
- Your first real-time web application
- Structuring the Notes web application
- Creating the Node.js server
- Configuring the router
- Writing the application logic
- Interacting with RethinkDB
- Implementing Changefeeds
- Programming Socket.io
- Programming the frontend
- The view
- Running our web application
- Summary
- Index.