
MongoDB Applied Design Patterns
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
Whether you're building a social media site or an internal-use enterprise application, this hands-on guide shows you the connection between MongoDB and the business problems it's designed to solve. You'll learn how to apply MongoDB design patterns to several challenging domains, such as ecommerce, content management, and online gaming. Using Python and JavaScript code examples, you'll discover how MongoDB lets you scale your data model while simplifying the development process.
Many businesses launch NoSQL databases without understanding the techniques for using their features most effectively. This book demonstrates the benefits of document embedding, polymorphic schemas, and other MongoDB patterns for tackling specific big data use cases, including:
- Operational intelligence: Perform real-time analytics of business data
- Ecommerce: Use MongoDB as a product catalog master or inventory management system
- Content management: Learn methods for storing content nodes, binary assets, and discussions
- Online advertising networks: Apply techniques for frequency capping ad impressions, and keyword targeting and bidding
- Social networking: Learn how to store a complex social graph, modeled after Google+
- Online gaming: Provide concurrent access to character and world data for a multiplayer role-playing game
More details
Other editions
Additional editions

Content
- Intro
- Copyright
- Table of Contents
- Preface
- Audience
- Assumptions This Book Makes
- Contents of This Book
- Part I: Design Patterns
- Part II: Use Cases
- Conventions Used in This Book
- Using Code Examples
- Safari® Books Online
- How to Contact Us
- Acknowledgments
- Part I. Design Patterns
- Chapter 1. To Embed or Reference
- Relational Data Modeling and Normalization
- What Is a Normal Form, Anyway?
- So What's the Problem?
- Denormalizing for Performance
- MongoDB: Who Needs Normalization, Anyway?
- MongoDB Document Format
- Embedding for Locality
- Embedding for Atomicity and Isolation
- Referencing for Flexibility
- Referencing for Potentially High-Arity Relationships
- Many-to-Many Relationships
- Conclusion
- Chapter 2. Polymorphic Schemas
- Polymorphic Schemas to Support Object-Oriented Programming
- Polymorphic Schemas Enable Schema Evolution
- Storage (In-)Efficiency of BSON
- Polymorphic Schemas Support Semi-Structured Domain Data
- Conclusion
- Chapter 3. Mimicking Transactional Behavior
- The Relational Approach to Consistency
- Compound Documents
- Using Complex Updates
- Optimistic Update with Compensation
- Conclusion
- Part II. Use Cases
- Chapter 4. Operational Intelligence
- Storing Log Data
- Solution Overview
- Schema Design
- Operations
- Sharding Concerns
- Managing Event Data Growth
- Pre-Aggregated Reports
- Solution Overview
- Schema Design
- Operations
- Sharding Concerns
- Hierarchical Aggregation
- Solution Overview
- Schema Design
- MapReduce
- Operations
- Sharding Concerns
- Chapter 5. Ecommerce
- Product Catalog
- Solution Overview
- Operations
- Sharding Concerns
- Category Hierarchy
- Solution Overview
- Schema Design
- Operations
- Sharding Concerns
- Inventory Management
- Solution Overview
- Schema
- Operations
- Sharding Concerns
- Chapter 6. Content Management Systems
- Metadata and Asset Management
- Solution Overview
- Schema Design
- Operations
- Sharding Concerns
- Storing Comments
- Solution Overview
- Approach: One Document per Comment
- Approach: Embedding All Comments
- Approach: Hybrid Schema Design
- Sharding Concerns
- Chapter 7. Online Advertising Networks
- Solution Overview
- Design 1: Basic Ad Serving
- Schema Design
- Operation: Choose an Ad to Serve
- Operation: Make an Ad Campaign Inactive
- Sharding Concerns
- Design 2: Adding Frequency Capping
- Schema Design
- Operation: Choose an Ad to Serve
- Sharding
- Design 3: Keyword Targeting
- Schema Design
- Operation: Choose a Group of Ads to Serve
- Chapter 8. Social Networking
- Solution Overview
- Schema Design
- Independent Collections
- Dependent Collections
- Operations
- Viewing a News Feed or Wall Posts
- Commenting on a Post
- Creating a New Post
- Maintaining the Social Graph
- Sharding
- Chapter 9. Online Gaming
- Solution Overview
- Schema Design
- Character Schema
- Item Schema
- Location Schema
- Operations
- Load Character Data from MongoDB
- Extract Armor and Weapon Data for Display
- Extract Character Attributes, Inventory, and Room Information for Display
- Pick Up an Item from a Room
- Remove an Item from a Container
- Move the Character to a Different Room
- Buy an Item
- Sharding
- Afterword
- Index
- About the Author
System requirements
File format: PDF
Copy-Protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our eBook Help page.