JSON as "schema on read"

Discipline

Databases

Form

Database Analogies

Attribution — Origin / Source

Collected by Daphne Miedema — Textbook Hellerstein, J. M., & Stonebraker, M. (2005). Readings in Database Systems. 4 ed. MIT Press.

Topic

Data storage and indexing

Domain

Within-Database

Conceptual Advantage

Draws parallels to processing as done in relational databases.

Mapping

SymbolConcept
JSON structure schema
defining what to see at runtime projection operation
schema on read relational operation"

Draws Attention To

How reading from JSON is similar to RDBMS projection

Details

Text

"JSON can be viewed in one of three ways. [...] As a mechanism for “schema on read”. In effect, the schema is very wide and very sparse, and essentially all users will want some projection of this schema. When reading from a wide, sparse schema, a user can say what he wants to see at run time. Conceptually, this is nothing but a projection operation. Hence, ’schema on read” is just a relational operation on JSON-encoded data. In summary, JSON is a reasonable choice for sparse data. In this context, I expect it to have a fair amount of “legs”. On the other hand, it is a disaster in the making as a general hierarchical data format. I fully expect RDBMSs to subsume JSON as merely a data type (among many) in their systems."

Comments or Feedback?

Do you have feedback on this notional machine? Did you find a mistake, or do you have a request for improvement? You can create an Issue on GitHub, where the description is hosted. This way we can see your feedback and address it.

For this, you need a GitHub account. Then follow this link to see the source file of this page. In there, click the ... left of the highlighted line, then pick "Reference in a new issue".

Create an Issue on GitHub