You are previewing Joe Celko’s Complete Guide to NoSQL.
O'Reilly logo
Joe Celko’s Complete Guide to NoSQL

Book Description

Joe Celko's Complete Guide to NoSQL provides a complete overview of non-relational technologies so that you can become more nimble to meet the needs of your organization. As data continues to explode and grow more complex, SQL is becoming less useful for querying data and extracting meaning. In this new world of bigger and faster data, you will need to leverage non-relational technologies to get the most out of the information you have. Learn where, when, and why the benefits of NoSQL outweigh those of SQL with Joe Celko's Complete Guide to NoSQL.

This book covers three areas that make today's new data different from the data of the past: velocity, volume and variety. When information is changing faster than you can collect and query it, it simply cannot be treated the same as static data. Celko will help you understand velocity, to equip you with the tools to drink from a fire hose. Old storage and access models do not work for big data. Celko will help you understand volume, as well as different ways to store and access data such as petabytes and exabytes. Not all data can fit into a relational model, including genetic data, semantic data, and data generated by social networks. Celko will help you understand variety, as well as the alternative storage, query, and management frameworks needed by certain kinds of data.



  • Gain a complete understanding of the situations in which SQL has more drawbacks than benefits so that you can better determine when to utilize NoSQL technologies for maximum benefit
  • Recognize the pros and cons of columnar, streaming, and graph databases
  • Make the transition to NoSQL with the expert guidance of best-selling SQL expert Joe Celko

Table of Contents

  1. Cover image
  2. Title page
  3. Table of Contents
  4. Copyright
  5. Dedication
  6. About the Author
  7. Introduction
  8. Chapter 1. NoSQL and Transaction Processing
    1. Abstract
    2. Introduction
    3. 1.1 Databases Transaction Processing in the Batch Processing World
    4. 1.2 Transaction Processing in the Disk Processing World
    5. 1.3 ACID
    6. 1.4 Pessimistic Concurrency in Detail
    7. 1.5 CAP Theorem
    8. 1.6 BASE
    9. 1.7 Server-side Consistency
    10. 1.8 Error Handling
    11. 1.9 Why SQL Does Not Work Here
    12. Concluding Thoughts
    13. References
  9. Chapter 2. Columnar Databases
    1. Abstract
    2. Introduction
    3. 2.1 History
    4. 2.2 How It Works
    5. 2.3 Query Optimizations
    6. 2.4 Multiple Users and Hardware
    7. 2.5 Doing an ALTER Statement
    8. 2.6 Data Warehouses and Columnar Databases
    9. Concluding Thoughts
    10. Reference
  10. Chapter 3. Graph Databases
    1. Abstract
    2. Introduction
    3. 3.1 Graph Theory Basics
    4. 3.2 RDBMS Versus Graph Database
    5. 3.3 Six Degrees of Kevin Bacon Problem
    6. 3.4 Vertex Covering
    7. 3.5 Graph Programming Tools
    8. Concluding Thoughts
    9. References
  11. Chapter 4. MapReduce Model
    1. Abstract
    2. Introduction
    3. 4.1 Hadoop Distributed File System
    4. 4.2 Query Languages
    5. Concluding Thoughts
    6. References
  12. Chapter 5. Streaming Databases and Complex Events
    1. Abstract
    2. Introduction
    3. 5.1 Generational Concurrency Models
    4. 5.2 Complex Event Processing
    5. 5.3 Commercial Products
    6. Concluding Thoughts
    7. References
  13. Chapter 6. Key–Value Stores
    1. Abstract
    2. Introduction
    3. 6.1 Schema Versus no Schema
    4. 6.2 Query Versus Retrieval
    5. 6.3 Handling Keys
    6. 6.4 Handling Values
    7. 6.5 Products
    8. Concluding Thoughts
  14. Chapter 7. Textbases
    1. Abstract
    2. Introduction
    3. 7.1 Classic Document Management Systems
    4. 7.2 Text Mining and Understanding
    5. 7.3 Language Problem
    6. Concluding Thoughts
    7. References
  15. Chapter 8. Geographical Data
    1. Abstract
    2. Introduction
    3. 8.1 GIS Queries
    4. 8.2 Locating Places
    5. 8.3 SQL Extensions for GIS
    6. Concluding Thoughts
    7. References
  16. Chapter 9. Big Data and Cloud Computing
    1. Abstract
    2. Introduction
    3. 9.1 Objections to Big Data and the Cloud
    4. 9.2 Big Data and Data Mining
    5. Concluding Thoughts
    6. References
  17. Chapter 10. Biometrics, Fingerprints, and Specialized Databases
    1. Abstract
    2. Introduction
    3. 10.1 Naive Biometrics
    4. 10.2 Fingerprints
    5. 10.3 DNA Identification
    6. 10.4 Facial Databases
    7. Concluding Thoughts
    8. References
  18. Chapter 11. Analytic Databases
    1. Abstract
    2. Introduction
    3. 11.1 Cubes
    4. 11.2 Dr. Codd’s OLAP Rules
    5. 11.3 MOLAP
    6. 11.4 ROLAP
    7. 11.5 HOLAP
    8. 11.6 OLAP Query Languages
    9. 11.7 Aggregation Operators in SQL
    10. 11.8 OLAP Operators in SQL
    11. 11.9 Sparseness in Cubes
    12. Concluding Thoughts
    13. References
  19. Chapter 12. Multivalued or NFNF Databases
    1. Abstract
    2. Introduction
    3. 12.1 Nested File Structures
    4. 12.2 Multivalued Systems
    5. 12.3 NFNF Databases
    6. 12.4 Existing Table-Valued Extensions
    7. Concluding Thoughts
  20. Chapter 13. Hierarchical and Network Database Systems
    1. Abstract
    2. Introduction
    3. 13.1 Types of Databases
    4. 13.2 Database History
    5. 13.3 Simple Hierarchical Database
    6. 13.4 Summary
    7. Concluding Thoughts
    8. References
  21. Glossary
  22. Index