Book description
Over 90 hands-on recipes to design Internet scalable web and mobile applications with Amazon DynamoDB
About This Book
- Construct top-notch mobile and web applications with the Internet scalable NoSQL database and host it on cloud
- Integrate your applications with other AWS services like AWS EMR, AWS S3, AWS Redshift, and AWS CloudSearch etc. in order to achieve a one-stop application stack
- Step-by-step implementation guide that provides real-world use with hands-on recipes
Who This Book Is For
This book is intended for those who have a basic understanding of AWS services and want to take their knowledge to the next level by getting their hands dirty with coding recipes in DynamoDB.
What You Will Learn
- Design DynamoDB tables to achieve high read and write throughput
- Discover best practices like caching, exponential back-offs and auto-retries, storing large items in AWS S3, storing compressed data etc.
- Effectively use DynamoDB Local in order to make your development smooth and cost effective
- Implement cost effective best practices to reduce the burden of DynamoDB charges
- Create and maintain secondary indexes to support improved data access
- Integrate various other AWS services like AWS EMR, AWS CloudSearch, AWS Pipeline etc. with DynamoDB
In Detail
AWS DynamoDB is an excellent example of a production-ready NoSQL database. In recent years, DynamoDB has been able to attract many customers because of its features like high-availability, reliability and infinite scalability. DynamoDB can be easily integrated with massive data crunching tools like Hadoop /EMR, which is an essential part of this data-driven world and hence it is widely accepted. The cost and time-efficient design makes DynamoDB stand out amongst its peers. The design of DynamoDB is so neat and clean that it has inspired many NoSQL databases to simply follow it.
This book will get your hands on some engineering best practices DynamoDB engineers use, which can be used in your day-to-day life to build robust and scalable applications. You will start by operating with DynamoDB tables and learn to manipulate items and manage indexes. You will also discover how to easily integrate applications with other AWS services like EMR, S3, CloudSearch, RedShift etc. A couple of chapters talk in detail about how to use DynamoDB as a backend database and hosting it on AWS ElasticBean. This book will also focus on security measures of DynamoDB as well by providing techniques on data encryption, masking etc.
By the end of the book you'll be adroit in designing web and mobile applications using DynamoDB and host it on cloud.
Style and approach
An easy-to-follow guide, full of real-world examples, which takes you through the world of DynamoDB following a step-by-step, problem-solution based approach.
Table of contents
-
DynamoDB Cookbook
- Table of Contents
- DynamoDB Cookbook
- Credits
- About the Author
- Acknowledgments
- About the Reviewers
- www.PacktPub.com
- Preface
-
1. Taking Your First Steps with DynamoDB
- Introduction
- Signing up to the DynamoDB console
- Creating the DynamoDB table using the console
- Loading data into the table using the console
- Querying data using the DynamoDB console
- Deleting the DynamoDB table using the console
- Analyzing DynamoDB metric on CloudWatch
- Downloading and setting up DynamoDB Local
- Using DynamoDB Local JavaScript Shell
- Setting up AWS Command Line Interface for DynamoDB
- Setting up the Eclipse IDE
-
2. Operating with DynamoDB Tables
- Introduction
- Creating a table using the AWS SDK for Java
- Creating a table using the AWS SDK for .Net
- Creating a table using the AWS SDK for PHP
- Updating a table using the AWS SDK for Java
- Updating a table using the AWS SDK for .Net
- Updating a table using the AWS SDK for PHP
- Listing tables using the AWS SDK for Java
- Listing tables using the AWS SDK for .Net
- Listing tables using the AWS SDK for PHP
- Deleting a table using the AWS SDK for Java
- Deleting a table using the AWS SDK for .Net
- Deleting a table using the AWS SDK for PHP
-
3. Manipulating DynamoDB Items
- Introduction
- Putting an item into the DynamoDB table using the AWS SDK for Java
- Putting an item into the DynamoDB table using the AWS SDK for .Net
- Putting an item into the DynamoDB table using the AWS SDK for PHP
- Getting an item from the DynamoDB table using the AWS SDK for Java
- Getting an item from the DynamoDB table using the AWS SDK for .Net
- Getting an item from the DynamoDB table using the AWS SDK for PHP
- Updating an item in the DynamoDB table using the AWS SDK for Java
- Updating an item in the DynamoDB table using the AWS SDK for .Net
- Updating an item in the DynamoDB table using the AWS SDK for PHP
- Deleting an item from the DynamoDB table using the AWS SDK for Java
- Deleting an item from the DynamoDB table using the AWS SDK for .Net
- Deleting an item from the DynamoDB table using the AWS SDK for PHP
- Getting multiple items using the AWS SDK for Java
- Getting multiple items using the AWS SDK for .Net
- Getting multiple items using the AWS SDK for PHP
- Batch write operations using the AWS SDK for Java
- Batch write operations using the AWS SDK for .Net
- Batch write operations using the AWS SDK for PHP
-
4. Managing DynamoDB Indexes
- Introduction
- Creating a DynamoDB table with a Global Secondary Index using the AWS SDK for Java
- Creating a DynamoDB table with a Global Secondary Index using the AWS SDK for .Net
- Creating a DynamoDB table with a Global Secondary Index using the AWS SDK for PHP
- Querying a Global Secondary Index using the AWS SDK for Java
- Querying a Global Secondary Index using the AWS SDK for .Net
- Querying a Global Secondary Index using the AWS SDK for PHP
- Creating a DynamoDB table with a Local Secondary Index using the AWS SDK for Java
- Creating a DynamoDB table with a Local Secondary Index using the AWS SDK for .Net
- Creating a DynamoDB table with a Local Secondary Index using the AWS SDK for PHP
- Querying a Local Secondary Index using the AWS SDK for Java
- Querying a Local Secondary Index using the AWS SDK for .Net
- Querying a Local Secondary Index using the AWS SDK for PHP
- Using a Global Secondary Index for quick lookups
-
5. Exploring Higher Level Programming Interfaces for DynamoDB
- Introduction
- Creating a data model for the DynamoDB item using the object persistence model in Java
- Putting items into the DynamoDB table using the object persistence model in Java
- Retrieving items from the DynamoDB table using the object persistence model in Java
- Creating a custom object for the DynamoDB table using the object persistence model in Java
- Querying items from the DynamoDB table using the object persistence model in Java
- Scanning items from the DynamoDB table using the object persistence model in Java
- Saving items into the DynamoDB table using the object persistence model in .Net
- Retrieving items from the DynamoDB table using the object persistence model in .Net
- Creating a custom object for the DynamoDB table using the object persistence model in .Net
- Querying items from the DynamoDB table using the object persistence model in .Net
- Scanning items from the DynamoDB table using the object persistence model in .Net
-
6. Securing DynamoDB
- Introduction
- Creating users using AWS IAM
- Creating a DynamoDB full access group using AWS IAM
- Creating a DynamoDB read-only group using AWS IAM
- Validating the DynamoDB access controls using the AWS IAM policy simulator
- Creating the custom policy to allow the DynamoDB console access using AWS IAM
- Creating a fine-grained access control policy using AWS IAM
- Implementing the client-side encryption for the DynamoDB data
- Implementing the client-side masking for the DynamoDB data
-
7. DynamoDB Best Practices
- Introduction
- Using a standalone cache for frequently accessed items
- Using the AWS ElastiCache for frequently accessed items
- Compressing large data before storing it in DynamoDB
- Using AWS S3 for storing large items
- Catching DynamoDB errors
- Performing auto-retries on DynamoDB errors
- Performing atomic transactions on DynamoDB tables
- Performing asynchronous requests to DynamoDB
-
8. Integrating DynamoDB with other AWS Services
- Introduction
- Importing data from AWS S3 to DynamoDB using AWS Data Pipeline
- Exporting data from AWS S3 to DynamoDB using AWS Data Pipeline
- Accessing the DynamoDB data using AWS EMR
- Querying the DynamoDB data using AWS EMR
- Performing join operations on the DynamoDB data using AWS EMR
- Exporting data to AWS S3 from DynamoDB using AWS EMR
- Logging DynamoDB operations using AWS CloudTrail
- Exporting the DynamoDB data to AWS Redshift
- Importing the DynamoDB data to AWS CloudSearch
- Performing a full text search on the DynamoDB data using CloudSearch
- 9. Developing Web Applications using DynamoDB
-
10. Developing Mobile Applications using DynamoDB
- Introduction
- Performing data modeling and table creation
- Creating an identity pool using AWS Cognito
- Creating the access policy and applying it to the AWS Cognito role
- Implementing user registration services
- Implementing user login services
- Implementing add new contact services
- Implementing view contacts services
- Index
Product information
- Title: DynamoDB Cookbook
- Author(s):
- Release date: September 2015
- Publisher(s): Packt Publishing
- ISBN: 9781784393755
You might also like
book
Mastering DynamoDB
Master the intricacies of the NoSQL database DynamoDB to take advantage of its fast performance and …
book
DynamoDB Applied Design Patterns
Apply efficient DynamoDB design patterns for high performance of applications In Detail DynamoDB provides fast and …
book
AWS Cookbook
This practical guide provides over 70 self-contained recipes to help you creatively solve common AWS challenges …
book
Serverless Architectures on AWS, Second Edition
Design low-maintenance systems using pre-built cloud services! Bring down costs, automate time-consuming ops tasks, and scale …