Relational Anti-Patterns: How Not to Design your Database
When designing your database, what looks like the best relational design can be a trap. Join us as we expose these database anti-patterns. We'll model shoes at a fictional shoe store and show both a naive design and more flexible alternatives. We'll discuss how to represent trees, and see that the simplest solution is the slowest and hardest to query. We'll explore scenarios where a polymorphic relationship looks like a good choice, but isn't (and one where it is). Along the way we'll cover:
* Using Entity-Attribute-Value for design flexibility
* Naive Trees and when not to use them
* Materialized Path and Closure Tree for a much nicer tree experience
* Polymorphic Relationships and when they're a problem
* Alternative patterns Exclusive Arcs, Base Parent Table and others
Join us and discover the rich world of relational database design patterns and anti-patterns. Whether you're building a new application or refactoring an old one, knowing these pitfalls and their alternatives will save you from sloppy querying and poor performance.