RavenDB High Performance


RavenDB High Performance
eBook: $23.99
Formats: PDF, PacktLib, ePub and Mobi formats
$20.39
save 15%!
Print + free eBook + free PacktLib access to the book: $63.98    Print cover: $39.99
$39.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Overview
Table of Contents
Author
Reviews
Support
Sample Chapters
  • Learn how to build your application for scalability and high availability
  • Make highly interactive applications that support client-side notifications, faceted search, search suggestions, and more
  • Take advantage of advanced RavenDB APIs to make your application fly

Book Details

Language : English
Paperback : 124 pages [ 235mm x 191mm ]
Release Date : August 2013
ISBN : 178216698X
ISBN 13 : 9781782166986
Author(s) : Brian Ritchie
Topics and Technologies : All Books, Open Source

Table of Contents

Preface
Chapter 1: A Different Kind of Database
Chapter 2: Optimizing the Data Model
Chapter 3: Optimizing the API
Chapter 4: Monitoring and Tuning
Chapter 5: Scaling Out
Chapter 6: When Failure is not an Option
Chapter 7: Deploying to the Cloud
Chapter 8: Extending RavenDB
Chapter 9: Optimizing the User Experience
Index
  • Chapter 1: A Different Kind of Database
    • Explosive growth
    • Semi-structured data
    • Architecture changes
    • Rethinking the database
      • Document databases
    • A document database for the .NET platform
      • RavenDB architecture
        • Storing documents
        • Searching and retrieving documents
    • Summary
    • Chapter 2: Optimizing the Data Model
      • Thinking in a document centric world
        • A pattern-based approach to modeling relationships
          • One-to-one relationships
          • One-to-many relationships
          • Many-to-many relationships
      • Modeling relationships using keys
      • Data modeling by example
      • Efficiently accessing documents
        • Working with indexes
        • Materialized views
        • Aggregating data using reduce
        • Efficiently loading related documents
      • Handling changing data over time
      • Efficiently storing large chunks of data
      • Summary
      • Chapter 3: Optimizing the API
        • Optimizing large data loads
          • Reading large result sets
        • Being smart and lazy
        • Sometimes it is all about the little things
          • Patching meets scripting
          • Using patching to migrate document schema
        • Doing nothing is the fastest way to do something
          • Getting aggressive about doing nothing
        • Summary
        • Chapter 4: Monitoring and Tuning
          • Profiling isn't just for crime solvers
          • Profiling using Glimpse
            • Securing Glimpse
          • Monitoring with performance counters
          • Looking inside using server and database statistics
          • Looking under the hood
          • Tuning the server
            • Less I/O = more speed
            • Tuning the settings
          • Summary
          • Chapter 5: Scaling Out
            • Sharding
              • Sharding in the dark
              • Sharding based on the data
              • Sharding based on – whatever you like!
            • Scaling out reporting to a relational database
            • Summary
            • Chapter 6: When Failure is not an Option
              • Replication
                • Master-slave
                • Master-master
                • Multi-master
                • Configuring replication
                • Handling conflicts
                  • Automatically handling conflicts
                  • Handling node failures
              • Failover clustering
                • Read stripping
              • Summary
              • Chapter 7: Deploying to the Cloud
                • Platform as a Service (PaaS)
                • Infrastructure as a Service (IaaS)
                • Database as a Service (DaaS)
                  • Getting started is easy
                    • AppHarbor Integration
                • Summary

                    Brian Ritchie

                    Brian Ritchie is a software architect with a track record of developing large scale enterprise systems and leading development teams through difficult scalability challenges. Brian has 20 years of experience in Software Development and is currently Chief Architect at PaySpan, Inc. which provides innovative reimbursement solutions to healthcare payers and providers. Brian is active in the development community giving presentations to local user groups and code camps. He has also contributed to Mono (the open source version of .NET) and various other open source projects. You can follow him on Twitter at http://twitter.com/brian_ritchie and read his blog at http://weblogs.asp.net/britchie.

                    Submit Errata

                    Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.

                    Sample chapters

                    You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

                    Frequently bought together

                    RavenDB High Performance +    Pentaho Data Integration Cookbook - Second Edition =
                    50% Off
                    the second eBook
                    Price for both: $37.50

                    Buy both these recommended eBooks together and get 50% off the cheapest eBook.

                    What you will learn from this book

                    • Model data using documents
                    • Utilize the best APIs for optimizing data access
                    • Monitor a RavenDB instance
                    • Detect performance problems and tune your configuration
                    • Scale out to multiple nodes using sharding
                    • Replicate to a relational database for reporting
                    • Distribute load using read striping
                    • Create high availability through multi-node replication
                    • Use Failover Clustering for high availability
                    • Deploy RavenDB to the cloud
                    • Create client-side notifications from RavenDB using SignalR
                    • Extend the RavenDB server with your own custom code

                    In Detail

                    RavenDB is an exciting technology that challenges developers to reconsider their old ways of thinking about databases. In this day and age, Internet-scale applications require this fresh perspective. RavenDB High Performance moves beyond the basics and guides you through building scalable applications using the rich features and extensibility of RavenDB.

                    RavenDB High Performance cuts through the noise and focuses on the key information you need to build scalable applications on the RavenDB document database. The book discusses every aspect of building a high performance system, from modeling your data to deploying it in a clustered environment. Examples are provided to make this information easy to apply to your specific application scenario.

                    Beginning with the NoSQL movement, RavenDB High Performance delves into the forces pushing developers beyond the traditional relational database solutions. From there, the book focuses on the design and development of web-based applications on RavenDB. It gives clear advice and examples to guide the reader through this new and exciting technology. Data modeling through documents is discussed in detail. This understanding is critical for building clean code and scalable applications. Once this foundation is established, the author focuses on key APIs that optimize data access and give end users great experiences. Scaling out and high availability techniques are also discussed in detail.

                    RavenDB High Performance brings together the resources you need for building scalable applications on RavenDB in an easy to understand and use format. Advice, diagrams, and code will help you quickly understand the concepts that you will apply to your next application.

                    Approach

                    RavenDB High Performance is comprehensive yet concise tutorial that developers can use to maximize the efficiency and optimization of RavenDB itself.

                    Who this book is for

                    This book is for developers & software architects who are designing systems in order to achieve high performance right from the start. A basic understanding of RavenDB is recommended, but not required. While the book focuses on advanced topics, it does not assume that the reader has a great deal of prior knowledge of working with RavenDB.

                    Code Download and Errata
                    Packt Anytime, Anywhere
                    Register Books
                    Print Upgrades
                    eBook Downloads
                    Video Support
                    Contact Us
                    Awards Voting Nominations Previous Winners
                    Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
                    Resources
                    Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software