001451148 000__ 06737cam\a2200553\i\4500 001451148 001__ 1451148 001451148 003__ OCoLC 001451148 005__ 20230310004645.0 001451148 006__ m\\\\\o\\d\\\\\\\\ 001451148 007__ cr\cn\nnnunnun 001451148 008__ 221112s2022\\\\caua\\\\o\\\\\001\0\eng\d 001451148 019__ $$a1350670320 001451148 020__ $$a9781484289198$$q(electronic bk.) 001451148 020__ $$a1484289196$$q(electronic bk.) 001451148 020__ $$z1484289188 001451148 020__ $$z9781484289181 001451148 0247_ $$a10.1007/978-1-4842-8919-8$$2doi 001451148 035__ $$aSP(OCoLC)1350690372 001451148 040__ $$aEBLCP$$beng$$erda$$epn$$cEBLCP$$dORMDA$$dGW5XE$$dYDX$$dOCLCF$$dTOH 001451148 049__ $$aISEA 001451148 050_4 $$aQA76.9.D3 001451148 08204 $$a005.75/65$$223/eng/20221115 001451148 1001_ $$aMiličić, Dejan,$$eauthor. 001451148 24510 $$aIntroducing RavenDB :$$bthe database for modern data persistence /$$cDejan Miličić. 001451148 264_1 $$aBerkeley, CA :$$bApress L. P.,$$c2022. 001451148 300__ $$a1 online resource (xviii, 197 pages) :$$billustrations 001451148 336__ $$atext$$btxt$$2rdacontent 001451148 337__ $$acomputer$$bc$$2rdamedia 001451148 338__ $$aonline resource$$bcr$$2rdacarrier 001451148 500__ $$aDescription based upon print version of record. 001451148 500__ $$aIncludes index. 001451148 5050_ $$aIntro -- Table of Contents -- About the Author -- About the Technical Reviewer -- Acknowledgments -- Introduction -- Chapter 1: Getting Started with RavenDB -- A Brief History of Databases -- Problems with Relational DBMS -- Impedance Mismatch -- Object-Relational Mappers -- Normalization -- Modern Web Applications -- NoSQL -- Origins of "NoSQL" Name -- Why NoSQL? -- Characteristics -- Additional Advantages -- Challenges -- Outcome -- NoSQL Database Types -- Key-Value Stores (KVS) -- Document Stores (DS) -- Graph Databases (GD) -- Wide-Column Stores (WCS) -- Multi-Model Databases -- RavenDB 001451148 5058_ $$aHistory -- Advantages of RavenDB -- Extreme Performance -- Fully Transactional -- Auto Tuning -- Safe by Default -- High Availability -- Topologies -- How to Start? -- Creating Your First Database -- Seeding Sample Data -- Northwind Database -- Documents -- Summary -- Chapter 2: Document Modeling -- Abstraction and Generalization -- Modeling in Relational Databases -- Data Encapsulation Challenge -- Modeling in NoSQL Databases -- JSON Documents -- Properties of Well-Modeled Documents -- Aggregates -- Unit of Change and Unit of Consistency -- Distributed Systems 001451148 5058_ $$aAggregates in the Distributed System -- Aggregates as Transaction Boundaries -- Modeling in RavenDB -- Documents -- Identifiers -- Modeling Document Relationships -- One-to-One Relationship -- Embedding -- Referencing -- Referential Integrity in RavenDB -- One-to-Many Relationship -- Many-to-Many Relationship -- Summary -- Chapter 3: Querying -- Querying in RavenDB Studio -- RavenDB Query Language Basics -- Filtering -- Query by Nonexistent Property -- Query by Non-string Properties -- Filtering by Complex Properties -- Filtering by Id -- Cross-Collection Query -- Inequality Query 001451148 5058_ $$aLogical Operators -- Range Queries -- Casing -- Full-Text Searching -- Sorting -- Paging -- Advanced Querying -- Projecting Results -- Projecting with Object Literals -- Declaring Functions in Queries -- Aggregation -- Handling Relationships -- Accessing Related Documents -- Include -- Summary -- Chapter 4: Indexes -- Queries from the Perspective of a Database -- Unbounded Queries -- Paging -- Filtering -- Indexes -- Types of Indexes -- Downsides of Indexing -- RavenDB's Indexing Philosophy -- Summary -- Chapter 5: Map Indexes -- Static Indexes -- Static Map Index -- Static Index Analysis 001451148 5058_ $$aExpanding Map Index -- Indexing References -- Stored Fields -- Computed Fields -- Dynamic Fields -- Fanout Index -- Multi-Map Index -- Indexing Hierarchical Data -- Summary -- Chapter 6: MapReduce Indexes -- Grouping -- MapReduce -- Aggregation -- Static MapReduce Indexes -- Static Versus Automatic Indexes -- Moment of Initial Indexing -- Aggregation Complexity -- MultiMapReduce Indexes -- Artificial Documents -- Creating Artificial Documents -- Indexing Artificial Documents -- Summary -- Chapter 7: Full-Text Search -- Basics of Full-Text Search -- Single Term -- Multiple Terms 001451148 506__ $$aAccess limited to authorized users. 001451148 520__ $$aSimplify your first steps with the RavenDB NoSQL Document Database. This book takes a task-oriented approach by showing common problems, potential solutions, brief explanations of how those solutions work, and the mechanisms used. Based on real-world examples, the recipes in this book will show you how to solve common problems with Raven Query Language and will highlight reasons why RavenDB is a great choice for fast prototyping solutions that can sustain increasing amounts of data as your application grows. Introducing RavenDB includes code and query examples that address real-life challenges you'll encounter when using RavenDB, helping you learn the basics of the Raven Query Language more quickly and efficiently. In many cases, you'll be able to copy and paste the examples into your own code, making only minor modifications to suit your application. RavenDB supports many advanced features, such full-text search, graph queries, and timeseries; recipes in the latter portion of the book will help you understand those advanced features and how they might be applied to your own code and applications. After reading this book, you will be able to employ RavenDB's powerful features in your own projects. What You Will Learn Set up and start working with RavenDB Model your objects for persistence in a NoSQL document database Write basic and advanced queries in the Raven Query Language Index your data using map/reduce techniques Implement techniques leading to highly performant systems Efficiently aggregate data and query on those aggregations Who This Book Is For Developers accustomed to relational databases who are about to enter a world of NoSQL databases. The book is also for experienced programmers who have used other non-relational databases and want to learn RavenDB. It will also prove useful for developers who want to move away from using Object-Relational Modeling frameworks and start working with a persistence solution that can store object graphs directly. 001451148 650_0 $$aDatabase management. 001451148 650_0 $$aApplication software$$xDevelopment. 001451148 650_0 $$aComputer systems. 001451148 655_0 $$aElectronic books. 001451148 77608 $$iPrint version:$$aMiličić, Dejan$$tIntroducing RavenDB$$dBerkeley, CA : Apress L. P.,c2022$$z9781484289181 001451148 852__ $$bebk 001451148 85640 $$3Springer Nature$$uhttps://univsouthin.idm.oclc.org/login?url=https://link.springer.com/10.1007/978-1-4842-8919-8$$zOnline Access$$91397441.1 001451148 909CO $$ooai:library.usi.edu:1451148$$pGLOBAL_SET 001451148 980__ $$aBIB 001451148 980__ $$aEBOOK 001451148 982__ $$aEbook 001451148 983__ $$aOnline 001451148 994__ $$a92$$bISE