Definition
An ODS object serves as a storage location for consolidated and cleansed transaction data on a document (atomic) level.
It describes a consolidated dataset from one or more InfoSources. This dataset can be analyzed with a BEx query or an InfoSet query.
An ODS object contains key fields (for example, document number/item) and data fields that can also contain character fields (for example, order status, customer) as key figures. The data from an ODS object can be updated with a delta update into InfoCubes and/or other ODS objects in the same system or across different systems.
Unlike multi-dimensional data storage using InfoCubes, the data in ODS objects is stored in transparent, flat database tables. Fact tables or dimension tables are not created.
Use
The cumulative update of key figures is supported for ODS objects, just as it is with InfoCubes, but with ODS objects it is also possible to overwrite data fields. This is particularly important with document-related structures, since changes made to documents in the source system do not apply solely to numeric fields such as order quantity, but also to non-numeric fields such as goods receiver, status, and delivery date. To map these changes in the BW ODS objects, the relevant fields in the ODS objects must also be overwritten and set to the current value.
Structure
Every ODS object is represented on the database by three transparent tables:
Active data: A table containing the active data (A table)
New data: A table containing new data or data that has been modified since the last activation (M table)
Change log: The change log for delta updates from the ODS object into other ODS objects or InfoCubes.

The tables containing active data and new data have the same structure and are constructed according to the ODS object definition, meaning that key fields and data fields are specified at the same time as the ODS object is defined.
When you update ODS object data, the records are stored initially in the table with the new data. For data that is loaded into BW more frequently than once a day, for example, it is possible to update several requests, one after the other.
The data from one or more requests is transferred in a single activation step out of the table containing the new data and into the table containing the active data. The new data is deleted from the corresponding table. The table with the active data is, therefore, the main table for ODS objects. It contains the data for reporting. When you activate the data, the changes are sent to the change log so that the data in the related ODS objects or InfoCubes is updated accordingly.

The graphic below shows how data is updated in an ODS object and the effect of the activation step.

Integration
Integration with data flow
The diagram below shows the data flow in BW, enhanced with ODS objects. The data flow consists of three steps:

Integration with the Administrator Workbench - Modeling
Metadata
The ODS objects are fully integrated with BW Metadata. They are transported just like InfoCubes, and installed from Business Content. The ODS objects are grouped with the InfoCubes in the data target view of the Administrator Workbench - Modeling, and are displayed in a tree. They also appear in the data flow display.
Update
The update rules define the rules that are used to write to an ODS object. They are very similar to the update rules for InfoCubes. The most important difference is how the
data fields are updated. When you update requests in an ODS object, you have an overwrite option as well as an addition option. The requests have to be serialized to ensure that they are loaded in a logical sequence.The delta process that is defined for the DataSource, also influences the update. Depending on the
delta process, the system decides whether it is necessary to serialize by request or by data packet. When you are loading flat files, you have to select a suitable delta process from the transfer structure maintenance, this ensures that you use the correct type of update.Unit fields and currency fields operate just like normal key figures, meaning that they must be explicitly filled by a rule.
Scheduling and Monitoring
The processes for scheduling InfoPackages for updating into InfoCubes and ODS objects are identical.
It is also possible to schedule the activation of ODS object data and the update from the ODS object in the related InfoCubes or ODS objects.
The individual steps, including the processing of the ODS object, are logged in the Monitor. Logs detailing the activation of the new records from the existing request in the ODS object, are also stored in the Monitor.
Loadable DataSources
In full-update mode, every transaction DataSource contained in an ODS object is updated. In delta-update mode, only those DataSources that are flagged as ODS-delta compatible are updated.