Learning Azure DocumentDB
()
About this ebook
Read more from Becker Riccardo
Windows Azure programming patterns for Start-ups: A step-by-step guide to create easy solutions to build your business using Windows Azure services with this book and ebook. Rating: 0 out of 5 stars0 ratings
Related to Learning Azure DocumentDB
Related ebooks
Building Web Services with Microsoft Azure Rating: 0 out of 5 stars0 ratingsDynamoDB Applied Design Patterns Rating: 3 out of 5 stars3/5Building Scalable Apps with Redis and Node.js Rating: 0 out of 5 stars0 ratingsData Engineering with dbt: A practical guide to building a cloud-based, pragmatic, and dependable data platform with SQL Rating: 0 out of 5 stars0 ratingsDynamoDB Cookbook Rating: 0 out of 5 stars0 ratingsAdvanced Platform Development with Kubernetes: Enabling Data Management, the Internet of Things, Blockchain, and Machine Learning Rating: 0 out of 5 stars0 ratingsInstant Pentaho Data Integration Kitchen Rating: 0 out of 5 stars0 ratingsAWS DynamoDB A Complete Guide Rating: 0 out of 5 stars0 ratingsDjango Admin Cookbook Rating: 0 out of 5 stars0 ratingsHands-On Kubernetes, Service Mesh and Zero-Trust: Build and manage secure applications using Kubernetes and Istio (English Edition) Rating: 0 out of 5 stars0 ratingsMicroservices for the Enterprise: Designing, Developing, and Deploying Rating: 0 out of 5 stars0 ratingsApache Hive Cookbook Rating: 0 out of 5 stars0 ratingsCouchbase Essentials Rating: 0 out of 5 stars0 ratingsPractical API Architecture and Development with Azure and AWS: Design and Implementation of APIs for the Cloud Rating: 0 out of 5 stars0 ratingsData Teams: A Unified Management Model for Successful Data-Focused Teams Rating: 0 out of 5 stars0 ratingsStart Concurrent: An Introduction to Problem Solving in Java with a Focus on Concurrency, 2014 Rating: 0 out of 5 stars0 ratingsLearning Apache Spark 2 Rating: 0 out of 5 stars0 ratingsPodman in Action: Secure, rootless containers for Kubernetes, microservices, and more Rating: 0 out of 5 stars0 ratingsUnderstanding Azure Data Factory: Operationalizing Big Data and Advanced Analytics Solutions Rating: 0 out of 5 stars0 ratingsBuilding Microservices Applications on Microsoft Azure: Designing, Developing, Deploying, and Monitoring Rating: 0 out of 5 stars0 ratingsMastering Kubernetes: Dive into Kubernetes and learn how to create and operate world-class cloud-native systems Rating: 0 out of 5 stars0 ratingsMicroservices: Build, Design And Deploy Distributed Services Rating: 0 out of 5 stars0 ratingsPostgreSQL Replication - Second Edition Rating: 0 out of 5 stars0 ratingsCyber Security on Azure: An IT Professional’s Guide to Microsoft Azure Security Rating: 0 out of 5 stars0 ratingsPostgreSQL Server Programming - Second Edition Rating: 0 out of 5 stars0 ratings
Internet & Web For You
Coding For Dummies Rating: 5 out of 5 stars5/5Coding All-in-One For Dummies Rating: 4 out of 5 stars4/5The Hacker Crackdown: Law and Disorder on the Electronic Frontier Rating: 4 out of 5 stars4/5Six Figure Blogging Blueprint Rating: 5 out of 5 stars5/5How to Be Invisible: Protect Your Home, Your Children, Your Assets, and Your Life Rating: 4 out of 5 stars4/5Podcasting For Dummies Rating: 4 out of 5 stars4/5Grokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5No Place to Hide: Edward Snowden, the NSA, and the U.S. Surveillance State Rating: 4 out of 5 stars4/5Everybody Lies: Big Data, New Data, and What the Internet Can Tell Us About Who We Really Are Rating: 4 out of 5 stars4/5Beginner's Guide To Starting An Etsy Print-On-Demand Shop Rating: 0 out of 5 stars0 ratingsHow To Start A Profitable Authority Blog In Under One Hour Rating: 5 out of 5 stars5/5Social Engineering: The Science of Human Hacking Rating: 3 out of 5 stars3/5The $1,000,000 Web Designer Guide: A Practical Guide for Wealth and Freedom as an Online Freelancer Rating: 4 out of 5 stars4/5The Gothic Novel Collection Rating: 5 out of 5 stars5/5JavaScript All-in-One For Dummies Rating: 5 out of 5 stars5/5The Beginner's Affiliate Marketing Blueprint Rating: 4 out of 5 stars4/5Ultimate guide for being anonymous: Avoiding prison time for fun and profit Rating: 5 out of 5 stars5/5HTML in 30 Pages Rating: 5 out of 5 stars5/5How to Disappear and Live Off the Grid: A CIA Insider's Guide Rating: 0 out of 5 stars0 ratingsCybersecurity All-in-One For Dummies Rating: 0 out of 5 stars0 ratingsThe Digital Marketing Handbook: A Step-By-Step Guide to Creating Websites That Sell Rating: 5 out of 5 stars5/5Coding with AI For Dummies Rating: 0 out of 5 stars0 ratingsMore Porn - Faster!: 50 Tips & Tools for Faster and More Efficient Porn Browsing Rating: 3 out of 5 stars3/5500 Writing Prompts for Fiction, Journaling, Blogging, and Creative Writing: Writing Prompts, #1 Rating: 0 out of 5 stars0 ratingsTor and the Dark Art of Anonymity Rating: 5 out of 5 stars5/5Cybersecurity For Dummies Rating: 5 out of 5 stars5/5Python QuickStart Guide: The Simplified Beginner's Guide to Python Programming Using Hands-On Projects and Real-World Applications Rating: 0 out of 5 stars0 ratings
Reviews for Learning Azure DocumentDB
0 ratings0 reviews
Book preview
Learning Azure DocumentDB - Becker Riccardo
Table of Contents
Learning Azure DocumentDB
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why subscribe?
Free access for Packt account holders
Instant updates on new Packt books
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Downloading the color images of this book
Errata
Piracy
Questions
1. Getting Started with DocumentDB
What is DocumentDB?
The characteristics of a schema
Having JavaScript at the core
Indexing a document
DocumentDB as a service
Understanding performance
Handling transactions
Common use cases
Building the Internet of Things
Storing user profile information
Logging information
Building mobile solutions
Exploring the data model
DocumentDB account
Creating databases
Administering users
Setting permissions
Managing collections
DocumentDB versus other databases
Azure Table storage
MongoDB
Comparison chart
Understanding the price model
Account charges
Number of collections
Request Units
Understanding storage
Expanding resources
Building your first application
Provisioning an account
Creating a database
Creating a collection
Building a console application
Setting up a solution
Saving a document
Summary
2. Setting up and Managing Your Database
Managing your keys
Recycling keys
Managing read-only keys
Using resource tokens
Creating resource tokens
Creating a collection
Creating a user and its permission
Creating a document with permissions
Creating a document without permissions
Listing permissions
Setting consistency levels
Managing alerts
Monitoring your account
Creating alerts
Summary
3. Basic Querying
Creating resources
Creating a collection
Creating a document
Using DocumentDB SQL
Using LINQ to object
Using LINQ
Updating the PersonInformation
Reading resources
Reading documents
Using the WHERE clause
Using a simple JOIN
Updating documents
Updating documents
Deleting documents
Summary
4. Advanced Querying
Using the SELECT statement
Selecting some documents
Using the FROM clause
Aliasing
Joining documents
Selecting from subdocuments
Using the WHERE clause
Binary operators
The BETWEEN keyword
Logical operators
Using the IN keyword
Conditional expressions
Using built-in functions
Building stored procedures
Building triggers
Building user-defined functions
Using LINQ to DocumentDB
Summary
5. Using REST to Access Your Database
Understanding the basics of REST
Using the GET verb
Using the POST verb
Using the PUT verb
Using the DELETE verb
Querying DocumentDB resources
Setting request headers
Generating the authorization header
Getting all databases
Adding a document
Summary
6. Using Node.js to Access Your Database
Introducing Node.js
What is Node.js?
Why use Node.js?
Preparing Visual Studio 2015
Building our first Node.js application
Creating our first app
Creating a web app
Utilizing DocumentDB from Node.js
Preparing our project
Connecting to DocumentDB
Creating a module
Creating and finding a document
Summary
7. Advanced Techniques
Introducing indexes
Explaining default indexing
Customizing indexing policies
Configuring index update mode
Consistent indexing mode
Lazy indexing mode
None indexing mode
Setting index precisions
Manipulating paths in indexes
Setting different index types
Configuring index paths
Setting the index precision
Partitioning data
Using hash partitioning
Using range partitioning
Managing performance
Using transactions
Setting consistency levels
Using strong consistency
Using bounded staleness consistency
Using session consistency
Using eventual staleness consistency
Summary
8. Putting Your Database at the Heart of Azure Solutions
Introducing an Internet of Things scenario
IoT Inc.
Technical requirements
Designing the model
Building a custom partition resolver
Building the Web API
Registering a device
Increasing search capabilities
Setting up Azure Search
Enhancing security
Creating and configuring Key Vault
Using Key Vault from ASP.NET
Encrypting sensitive data
Migrating data
Summary
Index
Learning Azure DocumentDB
Learning Azure DocumentDB
Copyright © 2015 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: November 2015
Production reference: 1161115
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-78355-246-7
www.packtpub.com
Credits
Author
Riccardo Becker
Reviewers
Rémon ter Haar
Juan Carlos Sánchez
Commissioning Editor
Neil Alexander
Acquisition Editor
Kirk D'costa
Content Development Editor
Samantha Gonsalves
Technical Editor
Madhunikita Sunil Chindarkar
Copy Editor
Roshni Banerjee
Project Coordinator
Sanchita Mandal
Proofreader
Safis Editing
Indexer
Priya Sane
Production Coordinator
Nitesh Thakur
Cover Work
Nitesh Thakur
About the Author
Riccardo Becker works full time as a principal IT architect for CGI in the Netherlands. He holds several certifications and his background in computing goes way back to 1998, when he started working with good old Visual Basic 5.0 (or was it 6.0?). Ever since, he has fulfilled several roles, such as a developer, lead developer, architect, project leader, practice manager. Recently, he decided to accept the role of a principal IT architect where he focuses on innovation, cutting-edge technology, and specifically on Microsoft Azure, the Internet of Things, and cloud computing in general.
In 2007, he joined the Microsoft LEAP program where he got a peek at the move Microsoft was about to make on their road to the cloud. Pat Helland gave him that insight, and since the first release of Microsoft Azure on PDC 2008, he started to focus on it, keeping track of the progress and the maturity of the platform. In the past few years, he has also done a lot of work on incubation with his employer, raising awareness of cloud computing in general and Microsoft Azure in particular.
I would like to thank all my colleagues who have helped me on various subjects inside the world of Azure. Special thanks go to Rémon ter Haar and Juan Carlos Sánchez who were patient enough to review my chapters. Thanks Rémon and Juan!
I would also like to thank the folks from Packt Publishing who helped me stay on track and on schedule despite some bummers and some changes that I made to the original outline.
Special thanks to my employer CGI for giving me all the opportunities and interesting projects that have helped me in realizing this book. Thanks to my daily job and the ability to focus on the subjects, I have come to the point of having enough knowledge to write this book.
This is my second published book, since I have already published Windows Azure Programming Patterns for Start-ups, also with the help of Packt Publishing.
About the Reviewers
Rémon ter Haar is highly experienced in designing and implementing Microsoft technology-based solutions. He has worked as a technical solution architect and lead developer in various projects. For the last 8 years, he has been specializing as a system integrator using Microsoft BizTalk technology and Microsoft Azure. He currently works at Motion10 (www.motion10.nl) as a BizTalk consultant. Motion10 is the leading competence center in the Netherlands when it comes to system integration, SharePoint, Office 365, BI, and Internet of Things.
He has also reviewed Windows Azure Programming Patterns for Start-ups.
Juan Carlos Sánchez is a software engineer and he writes code for fun. He loves to work in teams and is familiar with the SCRUM process and Agile Release Train.
He has experience of the following applications:
Desktop windows applications (WPF)
Cross-platform phone applications (Cordova and Ionic)
Azure: Cloud services, Active Directory, and web applications (AngularJS)
Databases: Entity Framework SQL Server, DocumentDB, and Azure Storage
He contributes to the community with his blog and code at the following links:
http://www.softwarejuancarlos.com
http://github.com/softwarejc
To my family and girlfriend—I love you.
www.PacktPub.com
Support files, eBooks, discount offers, and more
For support files and downloads related to your book, please visit www.PacktPub.com.
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at
At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.
https://www2.packtpub.com/books/subscription/packtlib
Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can search, access, and read Packt's entire library of books.
Why subscribe?
Fully searchable across every book