the big idea
what was wrong with early databases (network and hierarchical)
- the user’s operations were coded directly in terms of data structures
- these data structures closely mirrored the way the data was actually stored
- when developer changed the data structures for performance,the queries had to be rewritten
the solution
- have an abstract data model
- queries and insertions all expressed in terms of abstract model
- hide the details of the actual data structures from the user