I understand the debate between data marts and data warehouses. But what about operational data stores? Where do those fit in that discourse?
There are still well-reasoned operational databases that will hold single-application data, but
operational data stores (ODS)
specifically refer to something constructed for receiving data from a single operational system, with light transformation and making that data available for another application -- usually a query-oriented one. The main feature of the operational data stores is the real-time nature of the data. However, many shops are now looking at the possibilities for real/right-time data warehouse loading and tacking the integration challenge there and skipping the operational data stores altogether. Shops with overengineered information management are suffering from latency issues so I'd be looking very hard at any possibility to reduce a layer, such as the operational data stores.
Read William's expert advice on the debate between data marts and data warehouses.