Advanced Weapons and Tactics
summary
Hiding a relational database behind an ORM causes real performance and scalability problems, and ODB claims to fix that without falling back to raw JOINs or SQL. The implementation shows soft delete and soft add for schema evolution, change-tracking containers and lazy pointers to avoid tons of statements, sessions as lightweight object caches, views for single-statement joins and aggregates, optimistic concurrency via object versioning, and bulk operations with batch sizing and a multiple-exceptions report for partial failures.
AI-written summary · about
chapters (29)
- 0:00Intro
- 0:15Schema Evolution
- 0:42Versioned Namespace?
- 2:15Data Migration
- 2:42Soft-Delete
- 4:29Soft-Add
- 10:36Change-Tracking Containers
- 11:44Object Cache
- 15:39Lazy Pointers
- 21:03Object Sections
- 26:15Declaring Views
- 29:16Using Views
- 30:36Aggregate View
- 31:56Stored Procedure Call
- 32:38Native Query
- 35:43Optimistic Concurrency
- 37:05Declaring Optimistic Classes
- 37:46Using Optimistic Classes
- 40:34Polymorphism
- 41:51Declaring Polymorphic Classes
- 45:58Bulk Operations
- 47:38Pimpl Idiom
- 49:57Virtual Data Members
- 51:13Accessor/Modifier Expressions
- 52:55Index Definition
- 53:56Prepared and Cached Queries
- 54:59Other Features
- 57:29Customizations
- 59:53Maybe Future
related talks
46mBeyond Good and ORMs
59mHow much database abstraction do I need?
59mDoctrine ORM Good Practices and Tricks
23mI Would Never Use an ORM
01h 00mPitfalls of relational DB access in .NET: rethinking micro-ORMs
52mThe SQL inside the ORM/Builder box | Claudio Zizza
44mORM Insights - How not to hurt yourself?
36mORM is an Offensive Anti-Pattern
