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…mehr
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
Rick Copeland is the Principal Consultant and Founder at Arborian Consulting, a business focusing on MongoDB and Python custom development and training. Rick is a frequent speaker at MongoDB events, an avid MongoDB enthusiast, and is a charter member of 10gen's "Masters of MongoDB." In the non-MongoDB side of things, Rick is also a well-known Python developer and member of the Python Software Foundation, having contributed to a number of open-source projects and spoken at various evens and user groups. Rick is also the author of Essential SQLAlchemy, a book published by O'Reilly that introduces the reader to the excellent SQLAlchemy Python database toolkit.
Inhaltsangabe
Preface Audience Assumptions This Book Makes Contents of This Book Conventions Used in This Book Using Code Examples Safari® Books Online How to Contact Us Acknowledgments Design Patterns Chapter 1: To Embed or Reference 1.1 Relational Data Modeling and Normalization 1.2 MongoDB: Who Needs Normalization, Anyway? 1.3 Conclusion Chapter 2: Polymorphic Schemas 2.1 Polymorphic Schemas to Support Object-Oriented Programming 2.2 Polymorphic Schemas Enable Schema Evolution 2.3 Polymorphic Schemas Support Semi-Structured Domain Data 2.4 Conclusion Chapter 3: Mimicking Transactional Behavior 3.1 The Relational Approach to Consistency 3.2 Compound Documents 3.3 Using Complex Updates 3.4 Optimistic Update with Compensation 3.5 Conclusion Use Cases Chapter 4: Operational Intelligence 4.1 Storing Log Data 4.2 Pre-Aggregated Reports 4.3 Hierarchical Aggregation Chapter 5: Ecommerce 5.1 Product Catalog 5.2 Category Hierarchy 5.3 Inventory Management Chapter 6: Content Management Systems 6.1 Metadata and Asset Management 6.2 Storing Comments Chapter 7: Online Advertising Networks 7.1 Solution Overview 7.2 Design 1: Basic Ad Serving 7.3 Design 2: Adding Frequency Capping 7.4 Design 3: Keyword Targeting Chapter 8: Social Networking 8.1 Solution Overview 8.2 Schema Design 8.3 Operations 8.4 Sharding Chapter 9: Online Gaming 9.1 Solution Overview 9.2 Schema Design 9.3 Operations 9.4 Sharding Afterword Where Do I Go from Here? Index Colophon