• Jeff, I feel your pain. I wish I could buy you a pint and share some war stories.

    I've been having thoughts about schema-on-read systems. See what you think.

    The writing of data incurs financial cost. An app writes data once.

    It is the reading of data has the potential to generate revenue.

    As data can be read many times having data in a format that can be read efficiently maximizes the opportunities to generate revenue.

    Because data can be read many times without being consumed its potential for generating ROI is limited only by the imagination.

    All data professionals know that a poorly defined data model lacking in constraints will result in bad data and poor referential integrity. Protestations that "the app will handle DRI" are optimistic.

    Schema-on-read solutions makes it really easy for an app to write data at extreme velocities because there is no schema enforcement of any kind other that what the app supports. Few use cases require the extreme data ingestion speeds that schema-on-read systems allow. Overuse of schema-on-read systems sacrifices data quality, data integrity and data usability in favour of an illusory advantage given to the once only write activity. They represent a save once, pay many times scenario.