Associative entities are represented differently in various data models
6 minute read
In the Past
A many to many relationship is represented with an associative entity. Experts and non-experts in IT field know that this is one of the most important topics in Entity-Relationship and Relational theory. Seven years ago, when I started my data modeling saga, searching for SQL joins returned numerous results and few of them were on XML data. But I could hardly find any discussion about how a join table is related to the theory of two international data model standards, namely RDF and Topic Maps. A year later, in 2010 W3C started publishing “A Direct Mapping of Relational Data to RDF”. Coincidentally, back in 2009-2010 the NoSQL movement was born and Graph Databases started becoming a hot topic but nodes and edges were shrouded in disorientation for users of relational databases.
In the Present
It is 2016 and in my opinion the situation with associative entities has become darn confusing. Edges of a Property Graph data model are bidirectional but RDF links are unidirectional. A bridge-table of an Entity-Relationship schema has links only at the many side, i.e. we have an intersection of two one-to-many relationships. Foreign keys of a bridge table can be conveyed to RDF objects but for integrity and cardinality constrains you have to use OWL. Topic Maps use bidirectional associations with roles, therefore they are closer to the property graph data model. Each data model has a query language SQL, SPARQL, TMQL, Cypher, OrientDB SQL and GraphQL. There are significant differences among them and you have to understand the model in order to process or store efficiently data.
I think I made my point, but most important is the firm decision I took to clear a bit this info-glut with a series of articles in associative data modeling written with a hands-on practice style:
The fundamental aspect that software pioneers have been missing when they invented new programming languages or new nosql databases
Have you noticed that what ever the model and data structure in databases we cannot escape from the fundamental principle of managing data allocation space with references, i.e. pointer based logic, memory addressing ?
An overview of critical points to consider when modeling with R3DM/S3DM
Both Topic Maps and RDF/OWL exhibit signs of aging. These signs do not indicate maturity levels but on the contrary they signal a re-examination of the data modeling, information representation problem
Comments on a review of AI by John Launchbury, special assistant to DIRO, DARPA
Although there has been significant progress with first and second generation AI systems in reasoning, learning and perceiving, abstraction has not been part of the game. The mechanism of abstraction can unify these other three processes.
Qlik's competitive advantage over other BI tools is that it manages associations in memory at the engine level and not at the application level. Every data point in every field of a table is associated with every other data point anywhere in the entire schema.