The Closed World Assumption(CWA) is an extremely important concept in the database world, despite the fact that it isn’t usually spelled out explicitly. Basically what it says is this: Everything stated by the database, either explicitly or implicitly, is true; everything else is false. This presentation explains the CWA in detail and shows why it’s preferred over its rival, The Open World Assumption(OWA). In particular, it examines the claims, sometimes heard, to the effect that the database community operates under the CWA while the semantic web community operates under the OWA. It also explains how “missing information” can be handled without any need for nulls or three-valued logic.
The presentation is divided into four modules. Module I lays some important groundwork, discussing predicates and constraints in particular and stressing the importance of database consistency. Module II considers consistency in more detail and then discusses a simple example in depth, building to the conclusion that the OWA and the relational model are fundamentally and irrevocably at odds with each other (which is why in practice we always adopt the CWA). Module III then goes into more depth on predicates and shows how to get “don’t know” answers out of the database (when appropriate) without any need for nulls or three-valued logic (3VL). Finally, Module IV shows how the CWA can even be used in connection with predicates involving negation or conjunction.
- Title: The Closed World Assumption
- Release date: August 2014
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 978149190885
You might also like
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
Design Patterns in the Real World, an Analysis-Based Approach
Alan Holub takes coders deep into the reality of Gang-of-Four design patterns, those reusable guides to …
Learning SQL, 3rd Edition
As data floods into your company, you need to put it to work right away—and SQL …
Kafka: The Definitive Guide, 2nd Edition
Every enterprise application creates data, whether it consists of log messages, metrics, user activity, outgoing messages, …