NoSQL databases are an efficient and powerful tool for storing and manipulating vast quantities of data. Most NoSQL databases scale well as data grows. In addition, they are often malleable and flexible enough to accommodate semi-structured and sparse data sets. This comprehensive hands-on guide presents fundamental concepts and practical solutions for getting you ready to use NoSQL databases. Expert author Shashank Tiwari begins with a helpful introduction on the subject of NoSQL, explains its characteristics and typical uses, and looks at where it fits in the application stack. Unique insights help you choose which NoSQL solutions are best for solving your specific data storage needs.
- Demystifies the concepts that relate to NoSQL databases, including column-family oriented stores, key/value databases, and document databases.
- Delves into installing and configuring a number of NoSQL products and the Hadoop family of products.
- Explains ways of storing, accessing, and querying data in NoSQL databases through examples that use MongoDB, HBase, Cassandra, Redis, CouchDB, Google App Engine Datastore and more.
- Looks at architecture and internals.
- Provides guidelines for optimal usage, performance tuning, and scalable configurations.
- Presents a number of tools and utilities relating to NoSQL, distributed platforms, and scalable processing, including Hive, Pig, RRDtool, Nagios, and more.
PART I: GETTING STARTED
CHAPTER 1: NOSQL: WHAT IT IS AND WHY YOU NEED IT 3
CHAPTER 2: HELLO NOSQL: GETTING INITIAL HANDS-ON EXPERIENCE 21
CHAPTER 3: INTERFACING AND INTERACTING WITH NOSQL 43
PART II: LEARNING THE NOSQL BASICS
CHAPTER 4: UNDERSTANDING THE STORAGE ARCHITECTURE 73
CHAPTER 5: PERFORMING CRUD OPERATIONS 97
CHAPTER 6: QUERYING NOSQL STORES 117
CHAPTER 7: MODIFYING DATA STORES AND MANAGING EVOLUTION 137
CHAPTER 8: INDEXING AND ORDERING DATA SETS 149
CHAPTER 9: MANAGING TRANSACTIONS AND DATA INTEGRITY 169
PART III: GAINING PROFICIENCY WITH NOSQL
CHAPTER 10: USING NOSQL IN THE CLOUD 187
CHAPTER 11: SCALABLE PARALLEL PROCESSING WITH MAPREDUCE 217
CHAPTER 12: ANALYZING BIG DATA WITH HIVE 233
CHAPTER 13: SURVEYING DATABASE INTERNALS 253
PART IV: MASTERING NOSQL
CHAPTER 14: CHOOSING AMONG NOSQL FLAVORS 271
CHAPTER 15: COEXISTENCE 285
CHAPTER 16: PERFORMANCE TUNING 301
CHAPTER 17: TOOLS AND UTILITIES 311
APPENDIX: INSTALLATION AND SETUP INSTRUCTIONS 329