Cover image for Professional NoSQL.
Professional NoSQL.
Title:
Professional NoSQL.
Author:
Tiwari, Shashank.
ISBN:
9781118167816
Personal Author:
Edition:
1st ed.
Physical Description:
1 online resource (386 pages)
Contents:
Professional NoSQL -- Contents -- Introduction -- Part I: Getting Started -- Chapter 1: NoSQL: What It Is and Why You Need It -- Definition and Introduction -- Context and a Bit of History -- Big Data -- Scalability -- Definition and Introduction -- Sorted Ordered Column-Oriented Stores -- Key/Value Stores -- Document Databases -- Graph Databases -- Summary -- Chapter 2: Hello NoSQL: Getting Initial Hands-On Experience -- First Impressions - Examining Two Simple Examples -- A Simple Set of Persistent Preferences Data -- Storing Car Make and Model Data -- Working with Language Bindings -- MongoDB's Drivers -- A First Look at Thrift -- Summary -- Chapter 3: Interfacing and Interacting With NoSQL -- If No SQL, Then What? -- Storing and Accessing Data -- Storing Data In and Accessing Data from MongoDB -- Querying MongoDB -- Storing Data In and Accessing Data from Redis -- Querying Redis -- Storing Data In and Accessing Data from HBase -- Querying HBase -- Storing Data In and Accessing Data from Apache Cassandra -- Querying Apache Cassandra -- Language Bindings for NoSQL Data Stores -- Being Agnostic with Thrift -- Language Bindings for Java -- Language Bindings for Python -- Language Bindings for Ruby -- Language Bindings for PHP -- Summary -- Part II: Learning the NoSQL Basics -- Chapter 4: Understanding the Storage Architecture -- Working with Column-Oriented Databases -- Using Tables and Columns in Relational Databases -- Contrasting Column Databases with RDBMS -- Column Databases as Nested Maps of Key/Value Pairs -- Laying out the Webtable -- HBase Distributed Storage Architecture -- Document Store Internals -- Storing Data in Memory-Mapped Files -- Guidelines for Using Collections and Indexes in MongoDB -- MongoDB Reliability and Durability -- Horizontal Scaling -- Understanding Key/Value Stores in Memcached and Redis.

Under the Hood of Memcached -- Redis Internals -- Eventually Consistent Non-relational Databases -- Consistent Hashing -- Object Versioning -- Gossip-Based Membership and Hinted Handoff -- Summary -- Chapter 5: Performing CRUD Operations -- Creating Records -- Creating Records in a Document-Centric Database -- Using the Create Operation in Column-Oriented Databases -- Using the Create Operation in Key/Value Maps -- Accessing Data -- Accessing Documents from MongoDB -- Accessing Data from HBase -- Querying Redis -- Updating and Deleting Data -- Updating and Modifying Data in MongoDB, HBase, and Redis -- Limited Atomicity and Transactional Integrity -- Summary -- Chapter 6: Querying NoSQL Stores -- Similarities Between SQL and MongoDB Query Features -- Loading the MovieLens Data -- MapReduce in MongoDB -- Accessing Data from Column-Oriented Databases Like HBase -- The Historical Daily Market Data -- Querying Redis Data Stores -- Summary -- Chapter 7: Modifying Data Stores and Managing Evolution -- Changing Document Databases -- Schema-less Flexibility -- Exporting and Importing Data from and into MongoDB -- Schema Evolution in Column-Oriented Databases -- HBase Data Import and Export -- Data Evolution in Key/Value Stores -- Summary -- Chapter 8: Indexing and Ordering Data Sets -- Essential Concepts Behind a Database Index -- Indexing and Ordering in MongoDB -- Creating and Using Indexes in MongoDB -- Compound and Embedded Keys -- Creating Unique and Sparse Indexes -- Keyword-based Search and MultiKeys -- Indexing and Ordering in CouchDB -- The B-tree Index in CouchDB -- Indexing in Apache Cassandra -- Summary -- Chapter 9: Managing Transactions and Data Integrity -- RDBMS and ACID -- Isolation Levels and Isolation Strategies -- Distributed ACID Systems -- Consistency -- Availability -- Partition Tolerance -- Upholding CAP.

Compromising on Availability -- Compromising on Partition Tolerance -- Compromising on Consistency -- Consistency Implementations in a Few NoSQL Products -- Distributed Consistency in MongoDB -- Eventual Consistency in CouchDB -- Eventual Consistency in Apache Cassandra -- Consistency in Membase -- Summary -- Part III: Gaining Proficiency with NoSQL -- Chapter 10: Using NoSQL in the Cloud -- Google App Engine Data Store -- GAE Python SDK: Installation, Setup, and Getting Started -- Essentials of Data Modeling for GAE in Python -- Queries and Indexes -- Allowed Filters and Result Ordering -- Tersely Exploring the Java App Engine SDK -- Amazon SimpleDB -- Getting Started with SimpleDB -- Using the REST API -- Accessing SimpleDB Using Java -- Using SimpleDB with Ruby and Python -- Summary -- Chapter 11: Scalable Parallel Processing with MapReduce -- Understanding MapReduce -- Finding the Highest Stock Price for Each Stock -- Uploading Historical NYSE Market Data into CouchDB -- MapReduce with HBase -- MapReduce Possibilities and Apache Mahout -- Summary -- Chapter 12: Analyzing Big Data with Hive -- Hive Basics -- Back to Movie Ratings -- Good Old SQL -- JOIN(s) in Hive QL -- Explain Plan -- Partitioned Table -- Summary -- Chapter 13: Surveying Database Internals -- MongoDB Internals -- MongoDB Wire Protocol -- Inserting a Document -- Querying a Collection -- MongoDB Database Files -- Membase Architecture -- Hypertable Under the Hood -- Regular Expression Support -- Bloom Filter -- Apache Cassandra -- Peer-to-Peer Model -- Based on Gossip and Anti-entropy -- Fast Writes -- Hinted Handoff -- Berkeley DB -- Storage Configuration -- Summary -- Part IV: Mastering NoSQL -- Chapter 14: Choosing Among NoSQL Flavors -- Comparing NoSQL Products -- Scalability -- Transactional Integrity and Consistency -- Data Modeling -- Querying Support.

Access and Interface Availability -- Benchmarking Performance -- 50/50 Read and Update -- 95/5 Read and Update -- Scans -- Scalability Test -- Hypertable Tests -- Contextual Comparison -- Summary -- Chapter 15: Coexistence -- Using MySQL as a NoSQL Solution -- Mostly Immutable Data Stores -- Polyglot Persistence at Facebook -- Data Warehousing and Business Intelligence -- Web Frameworks and NoSQL -- Using Rails with NoSQL -- Using Django with NoSQL -- Using Spring Data -- Migrating from RDBMS to NoSQL -- Summary -- Chapter 16: Performance Tuning -- Goals of Parallel Algorithms -- The Implications of Reducing Latency -- How to Increase Throughput -- Linear Scalability -- Influencing Equations -- Amdahl's Law -- Little's Law -- Message Cost Model -- Partitioning -- Scheduling in Heterogeneous Environments -- Additional Map-Reduce Tuning -- Communication Overheads -- Compression -- File Block Size -- Parallel Copying -- HBase Coprocessors -- Leveraging Bloom Filters -- Summary -- Chapter 17: Tools and Utilities -- RRDTool -- Nagios -- Scribe -- Flume -- Chukwa -- Pig -- Interfacing with Pig -- Pig Latin Basics -- Nodetool -- OpenTSDB -- Solandra -- Hummingbird and C5t -- GeoCouch -- Alchemy Database -- Webdis -- Summary -- Appendix: Installation and Setup Instructions -- Installing and Setting Up Hadoop -- Installing Hadoop -- Configuring a Single-node Hadoop Setup -- Configuring a Pseudo-distributed Mode Setup -- Installing and Setting Up HBase -- Installing and Setting Up Hive -- Configuring Hive -- Overlaying Hadoop Configuration -- Installing and Setting Up Hypertable -- Making the Hypertable Distribution FHS-Compliant -- Configuring Hadoop with Hypertable -- Installing and Setting Up MongoDB -- Configuring MongoDB -- Installing and Configuring CouchDB -- Installing CouchDB from Source on Ubuntu 10.04 -- Installing and Setting Up Redis.

Installing and Setting Up Cassandra -- Configuring Cassandra -- Configuring log4j for Cassandra -- Installing Cassandra from Source -- Installing and Setting Up Membase Server and Memcached -- Installing and Setting Up Nagios -- Downloading and Building Nagios -- Configuring Nagios -- Compiling and Installing Nagios Plugins -- Installing and Setting Up RRDtool -- Installing Handler Socket for MySQL -- Index -- Advertisement.
Abstract:
A hands-on guide to leveraging NoSQL databases 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. Professional NoSQL: 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.
Local Note:
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2017. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
Electronic Access:
Click to View
Holds: Copies: