万本电子书0元读

万本电子书0元读

顶部广告

Seven NoSQL Databases in a Week电子书

售       价:¥

4人正在读 | 0人评论 9.8

作       者:Aaron Ploetz,Devram Kandhare,Sudarshan Kadambi

出  版  社:Packt Publishing

出版时间:2018-03-29

字       数:37.3万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
A beginner's guide to get you up and running with Cassandra, DynamoDB, HBase, InfluxDB, MongoDB, Neo4j, and Redis About This Book ? Covers the basics of 7 NoSQL databases and how they are used in the enterprises ? Quick introduction to MongoDB, DynamoDB, Redis, Cassandra, Neo4j, InfluxDB, and Hbase ? Includes effective techniques for database querying and management Who This Book Is For If you are a budding DBA or a developer who wants to get started with the fundamentals of NoSQL databases, this book is for you. Relational DBAs who want to get insights into the various offerings of popular NoSQL databases will also find this book to be very useful. What You Will Learn ? Understand how MongoDB provides high-performance, high-availability, and automatic scaling ? Interact with your Neo4j instances via database queries, Python scripts, and Java application code ? Get familiar with common querying and programming methods to interact with Redis ? Study the different types of problems Cassandra can solve ? Work with HBase components to support common operations such as creating tables and reading/writing data ? Discover data models and work with CRUD operations using DynamoDB ? Discover what makes InfluxDB a great choice for working with time-series data In Detail This is the golden age of open source NoSQL databases. With enterprises having to work with large amounts of unstructured data and moving away from expensive monolithic architecture, the adoption of NoSQL databases is rapidly increasing. Being familiar with the popular NoSQL databases and knowing how to use them is a must for budding DBAs and developers. This book introduces you to the different types of NoSQL databases and gets you started with seven of the most popular NoSQL databases used by enterprises today. We start off with a brief overview of what NoSQL databases are, followed by an explanation of why and when to use them. The book then covers the seven most popular databases in each of these categories: MongoDB, Amazon DynamoDB, Redis, HBase, Cassandra, InfluxDB, and Neo4j. The book doesn't go into too much detail about each database but teaches you enough to get started with them. By the end of this book, you will have a thorough understanding of the different NoSQL databases and their functionalities, empowering you to select and use the right database according to your needs. Style and approach This book is a quick-start guide with short and simple introductory content on the seven popular databases.
目录展开

Title Page

Copyright and Credits

Seven NoSQL Databases in a Week

Dedication

Packt Upsell

Why subscribe?

PacktPub.com

Contributors

About the authors

Packt is searching for authors like you

Preface

Who this book is for

What this book covers

To get the most out of this book

Download the example code files

Download the color images

Conventions used

Get in touch

Reviews

Introduction to NoSQL Databases

Consistency versus availability

ACID guarantees

Hash versus range partition

In-place updates versus appends

Row versus column versus column-family storage models

Strongly versus loosely enforced schemas

Summary

MongoDB

Installing of MongoDB

MongoDB data types

The MongoDB database

MongoDB collections

MongoDB documents

The create operation

The read operation

Applying filters on fields

Applying conditional and logical operators on the filter parameter

The update operation

The delete operation

Data models in MongoDB

The references document data model

The embedded data model

Introduction to MongoDB indexing

The default _id index

Replication

Replication in MongoDB

Automatic failover in replication

Read operations

Sharding

Sharded clusters

Advantages of sharding

Storing large data in MongoDB

Summary

Neo4j

What is Neo4j?

How does Neo4j work?

Features of Neo4j

Clustering

Neo4j Browser

Cache sharding

Help for beginners

Evaluating your use case

Social networks

Matchmaking

Network management

Analytics

Recommendation engines

Neo4j anti-patterns

Applying relational modeling techniques in Neo4j

Using Neo4j for the first time on something mission-critical

Storing entities and relationships within entities

Improper use of relationship types

Storing binary large object data

Indexing everything

Neo4j hardware selection, installation, and configuration

Random access memory

CPU

Disk

Operating system

Network/firewall

Installation

Installing JVM

Configuration

High-availability clustering

Causal clustering

Using Neo4j

Neo4j Browser

Cypher

Python

Java

Taking a backup with Neo4j

Backup/restore with Neo4j Enterprise

Backup/restore with Neo4j Community

Differences between the Neo4j Community and Enterprise Editions

Tips for success

Summary

References

Redis

Introduction to Redis

What are the key features of Redis?

Performance

Tunable data durability

Publish/Subscribe

Useful data types

Expiring data over time

Counters

Server-side Lua scripting

Appropriate use cases for Redis

Data fits into RAM

Data durability is not a concern

Data at scale

Simple data model

Features of Redis matching part of your use case

Data modeling and application design with Redis

Taking advantage of Redis' data structures

Queues

Sets

Notifications

Counters

Caching

Redis anti-patterns

Dataset cannot fit into RAM

Modeling relational data

Improper connection management

Security

Using the KEYS command

Unnecessary trips over the network

Not disabling THP

Redis setup, installation, and configuration

Virtualization versus on-the-metal

RAM

CPU

Disk

Operating system

Network/firewall

Installation

Configuration files

Using Redis

redis-cli

Lua

Python

Java

Taking a backup with Redis

Restoring from a backup

Tips for success

Summary

References

Cassandra

Introduction to Cassandra

What problems does Cassandra solve?

What are the key features of Cassandra?

No single point of failure

Tunable consistency

Data center awareness

Linear scalability

Built on the JVM

Appropriate use cases for Cassandra

Overview of the internals

Data modeling in Cassandra

Partition keys

Clustering keys

Putting it all together

Optimal use cases

Cassandra anti-patterns

Frequently updated data

Frequently deleted data

Queues or queue-like data

Solutions requiring query flexibility

Solutions requiring full table scans

Incorrect use of BATCH statements

Using Byte Ordered Partitioner

Using a load balancer in front of Cassandra nodes

Using a framework driver

Cassandra hardware selection, installation, and configuration

RAM

CPU

Disk

Operating system

Network/firewall

Installation using apt-get

Tarball installation

JVM installation

Node configuration

Running Cassandra

Adding a new node to the cluster

Using Cassandra

Nodetool

CQLSH

Python

Java

Taking a backup with Cassandra

Restoring from a snapshot

Tips for success

Run Cassandra on Linux

Open ports 7199, 7000, 7001, and 9042

Enable security

Use solid state drives (SSDs) if possible

Configure only one or two seed nodes per data center

Schedule weekly repairs

Do not force a major compaction

Remember that every mutation is a write

The data model is key

Consider a support contract

Cassandra is not a general purpose database

Summary

References

HBase

Architecture

Components in the HBase stack

Zookeeper

HDFS

HBase master

HBase RegionServers

Reads and writes

The HBase write path

HBase writes – design motivation

The HBase read path

HBase compactions

System trade-offs

Logical and physical data models

Interacting with HBase – the HBase shell

Interacting with HBase – the HBase Client API

Interacting with secure HBase clusters

Advanced topics

HBase high availability

Replicated reads

HBase in multiple regions

HBase coprocessors

SQL over HBase

Summary

DynamoDB

The difference between SQL and DynamoDB

Setting up DynamoDB

Setting up locally

Setting up using AWS

The difference between downloadable DynamoDB and DynamoDB web services

DynamoDB data types and terminology

Tables, items, and attributes

Primary key

Secondary indexes

Streams

Queries

Scan

Data types

Data models and CRUD operations in DynamoDB

Limitations of DynamoDB

Best practices

Summary

InfluxDB

Introduction to InfluxDB

Key concepts and terms of InfluxDB

Data model and storage engine

Storage engine

Installation and configuration

Installing InfluxDB

Configuring InfluxDB

Production deployment considerations

Query language and API

Query language

Query pagination

Query performance optimizations

Interaction via Rest API

InfluxDB API client

InfluxDB with Java client

InfluxDB with a Python client

InfluxDB with Go client

InfluxDB ecosystem

Telegraf

Telegraf data management

Kapacitor

InfluxDB operations

Backup and restore

Backups

Restore

Clustering and HA

Retention policy

Monitoring

Summary

Other Books You May Enjoy

Leave a review - let other readers know what you think

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部