---
description: Write Optimized DSO is used when a Data storage object is required for storing lowest granularity records such as address and when overwrites functionality is not needed. It consists of the table of
title: What is Write Optimized DSO in SAP?
image: https://www.guru99.com/images/what-is-write-optimized-dso-in-sap.png
---

[Skip to content](#main)

**⚡ Smart Summary**

A Write-Optimized DSO in SAP BW stores data in a single active table with no activation step or change log, making it ideal for the fast initial staging of large volumes of lowest-granularity source data.

- 🗄️ **Active Table Only:** A write-optimized DSO has only the active data table, with no change log.
- ⚡ **No Activation:** Data is available immediately because there is no separate activation step.
- 📥 **Initial Staging:** It is mainly used as the first staging layer for large source data volumes.
- 🔑 **Technical Key:** Request ID, data package, and record number form a unique technical key.
- 🔁 **No Aggregation:** Every record is inserted as new; records are not aggregated or overwritten.
- 🤖 **AI Assistance:** AI speeds high-volume staging and flags duplicate records during the load.

Read More

![What is Write Optimized DSO in SAP](https://www.guru99.com/images/what-is-write-optimized-dso-in-sap.png)

## What is a Write-Optimized DSO?

A write-optimized DSO is used when a storage object is required for the lowest-granularity records and overwrite functionality is not needed. It consists of the active data table only, so no activation is needed, which speeds up the data process. The data is available immediately for further processing, and it is used as a temporary storage area for a large set of data.

The write-optimized DSO is primarily designed to be the initial staging of source system data, from where the data can be transferred to a standard DSO or the [InfoCube](https://www.guru99.com/what-is-an-infocube-how-to-create-one.html).

1. The PSA receives data unchanged from the source system.
2. Data is posted at document level; after loading into standard DSOs, data is deleted.
3. Data is posted to the corporate-memory write-optimized DSO from the pass-through write-optimized DSO.
4. Data is distributed from the write-optimized pass-through DSO to [standard DSOs](https://www.guru99.com/what-is-standard-dso-how-to-create-one.html) as per business requirement.

[![Write-Optimized DSO in SAP]()](https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_1.jpg)

## Write-Optimized DSO Properties

- It is used for the initial staging of source system data.
- Data stored is of lowest granularity.
- Data loads can be faster since there is no separate activation step.
- Every record has a technical key, so aggregation of records is not possible. New records are inserted every time.

## Creation of a Write-Optimized DSO

**Step 1)**

1. Go to transaction code RSA1.
2. Click the OK button.

[![Creation of Write-Optimized DSO]()](https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_2.jpg)

**Step 2)**

1. Navigate to the Modeling tab -> InfoProvider.
2. Right click on InfoArea.
3. Click on “Create DataStore Object” from the context menu.

[![Creation of Write-Optimized DSO]()](https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_3.jpg)

**Step 3)**

1. Enter the Technical Name.
2. Enter the Description.
3. Click on the “Create” button.

[![Creation of Write-Optimized DSO]()](https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_4.jpg)

**Don't Miss:**

- [What is SAP BI? Module, Full Form, Definition](https://www.guru99.com/introduction-sap-bi.html)
- [SAP InfoSet Tutorial: What is, Create, Joins](https://www.guru99.com/what-is-infoset.html)
- [What Is an Infocube in SAP BI/BW? How To Create One?](https://www.guru99.com/what-is-an-infocube-how-to-create-one.html)
- [SAP BI/BW Tutorial for Beginners](https://www.guru99.com/sap-bi.html)

**Step 4)** Click on the Edit button of “Type of DataStore Object”.

[![Creation of Write-Optimized DSO]()](https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_5.jpg)

**Step 5)** Choose the type “Write-Optimized”.

[![Creation of Write-Optimized DSO]()](https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_6.jpg)

Technical keys include Request ID, Data package, and Record number. No additional objects can be included under this. Semantic keys are similar to key fields; however, here uniqueness is not considered for overwrite functionality. They are instead used in conjunction with the setting “Do not check uniqueness of data”. The purpose of the semantic key is to identify errors in incoming records or duplicate records. Duplicate records are written into the error stack in the subsequent order and can be handled or re-loaded by defining a semantic group in the DTP. Semantic groups need not be defined if there is no possibility of duplicate or error records.

[![Creation of Write-Optimized DSO]()](https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_7.jpg)

If you do not check the box “Allow Duplicate Data Record”, the data coming from the source is checked for duplication; if the same record (semantic keys) already exists in the DSO, the current load is terminated. If you select the check box, duplicate records are loaded as new records and the semantic keys have no relevance.

[![Creation of Write-Optimized DSO]()](https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_8.jpg)

**Step 6)** Activate the [DSO](https://www.guru99.com/what-is-dso-why-use-it.html).

[![Creation of Write-Optimized DSO]()](https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_9.jpg)

## FAQs

🆚 What is the difference between a write-optimized and a standard DSO?

A write-optimized DSO has only the active table, needs no activation, and loads quickly, but cannot overwrite records. A standard DSO has three tables, requires activation, and supports overwrite and delta handling through its change log.

🔑 What is the technical key in a write-optimized DSO?

The technical key is made of the Request ID, data package, and record number. SAP adds it automatically so every record is unique and inserted as new. Because of this technical key, records are never aggregated or overwritten.

🔁 What are semantic keys and the error stack in a write-optimized DSO?

Semantic keys identify duplicate or error records without enforcing uniqueness for overwrite. Duplicate records are routed to the error stack, where they can be corrected or reloaded using a semantic group defined in the DTP.

🤖 Can AI speed up large-volume data staging?

Yes. Intelligent automation parallelizes and schedules high-volume loads, while machine learning predicts bottlenecks. In SAP Datasphere, AI streamlines staging pipelines, so write-optimized layers ingest large data sets faster and more reliably.

🧠 How does AI handle duplicate records during data loads?

Machine learning compares incoming records against existing data to flag likely duplicates before they reach reporting layers. Combined with semantic keys and the error stack, this intelligent checking keeps the staged data clean.

#### Summarize this post with:

ChatGPTPerplexityGrokGoogle AI

**Stay Updated on AI** **Get Weekly AI Skills, Trends, Actionable Advice.**

##### Sign up for the newsletter

Subscribe for Free

You have successfully subscribed.  
Please check your inbox.

![AI-Newsletter]() Chosen by over **350,000+** professionals

[Scroll to top](#wrapper)

×

Search for:

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.guru99.com/#organization","name":"Guru99","sameAs":["https://www.facebook.com/Guru99Official","https://twitter.com/guru99com"],"logo":{"@type":"ImageObject","@id":"https://www.guru99.com/#logo","url":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","contentUrl":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","caption":"Guru99","inLanguage":"en-US"}},{"@type":"WebSite","@id":"https://www.guru99.com/#website","url":"https://www.guru99.com","name":"Guru99","publisher":{"@id":"https://www.guru99.com/#organization"},"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https://www.guru99.com/images/what-is-write-optimized-dso-in-sap.png","url":"https://www.guru99.com/images/what-is-write-optimized-dso-in-sap.png","width":"700","height":"250","caption":"What is Write Optimized DSO in SAP?","inLanguage":"en-US"},{"@type":"BreadcrumbList","@id":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":"1","item":{"@id":"https://www.guru99.com","name":"Home"}},{"@type":"ListItem","position":"2","item":{"@id":"https://www.guru99.com/sap-bi","name":"SAP - BI"}},{"@type":"ListItem","position":"3","item":{"@id":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html","name":"What is Write Optimized DSO in SAP?"}}]},{"@type":"WebPage","@id":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#webpage","url":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html","name":"What is Write Optimized DSO in SAP?","dateModified":"2026-10-09T16:19:31+05:30","isPartOf":{"@id":"https://www.guru99.com/#website"},"primaryImageOfPage":{"@id":"https://www.guru99.com/images/what-is-write-optimized-dso-in-sap.png"},"inLanguage":"en-US","breadcrumb":{"@id":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#breadcrumb"}},{"@type":"Person","@id":"https://www.guru99.com/author/editorial","name":"Editorial Team","url":"https://www.guru99.com/author/editorial","image":{"@type":"ImageObject","@id":"https://www.guru99.com/images/favicon-new-logo.png","url":"https://www.guru99.com/images/favicon-new-logo.png","caption":"Editorial Team","inLanguage":"en-US"},"sameAs":["https://www.guru99.com/editorial-team"],"worksFor":{"@id":"https://www.guru99.com/#organization"}},{"articleSection":"SAP - BI","headline":"What is Write Optimized DSO in SAP?","description":"Write Optimized DSO is used when a Data storage object is required for storing lowest granularity records such as address and when overwrites functionality is not needed. It consists of the table of","keywords":"sap-bi","speakable":{"@type":"SpeakableSpecification","cssSelector":[".entry-title",".summary"]},"@type":"Article","author":{"@id":"https://www.guru99.com/author/editorial","name":"Editorial Team"},"dateModified":"2026-10-09T16:19:31+05:30","image":{"@id":"https://www.guru99.com/images/what-is-write-optimized-dso-in-sap.png"},"copyrightYear":"2026","name":"What is Write Optimized DSO in SAP?","subjectOf":[{"@type":"HowTo","name":"How To Write-Optimized DSO","description":"Creation Of Write-Optimized DSO:","step":[{"@type":"HowToStep","name":"Go to transaction code RSA1","text":"Click the OK button.","image":"https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_2.jpg","url":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#step1"},{"@type":"HowToStep","name":"Navigate to Modelling tab-&gt;Info Provider.","text":"Click on 'Create Data Store Object' from the context menu.","image":"https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_3.jpg","url":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#step2"},{"@type":"HowToStep","name":"Enter the Technical Name.","text":"Click on the 'Create' button.","image":"https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_4.jpg","url":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#step3"},{"@type":"HowToStep","name":"Choose the Type 'Write-Optimized'.","text":"Technical keys include Request ID, Data package, Record number. No additional objects can be included under this.","image":"https://www.guru99.com/images/sap/SAP_BI/sap_bi_10_6.jpg","url":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#step4"}]},{"@type":"FAQPage","mainEntity":[{"@type":"Question","name":"What is the difference between a write-optimized and a standard DSO?","acceptedAnswer":{"@type":"Answer","text":"A write-optimized DSO has only the active table, needs no activation, and loads quickly, but cannot overwrite records. A standard DSO has three tables, requires activation, and supports overwrite and delta handling through its change log."}},{"@type":"Question","name":"What is the technical key in a write-optimized DSO?","acceptedAnswer":{"@type":"Answer","text":"The technical key is made of the Request ID, data package, and record number. SAP adds it automatically so every record is unique and inserted as new. Because of this technical key, records are never aggregated or overwritten."}},{"@type":"Question","name":"What are semantic keys and the error stack in a write-optimized DSO?","acceptedAnswer":{"@type":"Answer","text":"Semantic keys identify duplicate or error records without enforcing uniqueness for overwrite. Duplicate records are routed to the error stack, where they can be corrected or reloaded using a semantic group defined in the DTP."}},{"@type":"Question","name":"Can AI speed up large-volume data staging?","acceptedAnswer":{"@type":"Answer","text":"Yes. Intelligent automation parallelizes and schedules high-volume loads, while machine learning predicts bottlenecks. In SAP Datasphere, AI streamlines staging pipelines, so write-optimized layers ingest large data sets faster and more reliably."}},{"@type":"Question","name":"How does AI handle duplicate records during data loads?","acceptedAnswer":{"@type":"Answer","text":"Machine learning compares incoming records against existing data to flag likely duplicates before they reach reporting layers. Combined with semantic keys and the error stack, this intelligent checking keeps the staged data clean."}}]}],"@id":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#schema-558176","isPartOf":{"@id":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#webpage"},"publisher":{"@id":"https://www.guru99.com/#organization"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"https://www.guru99.com/what-is-write-optimized-dso-how-to-create-one.html#webpage"}}]}
```
