SAP BW - DataStore 对象和类型

在本章中,我们将讨论各种DataStore对象及其子模块.

什么是DataStore对象?

一个DSO (DataStore Object)被称为存储位置,用于以最低粒度级别保持清理和合并的事务或主数据,并且可以使用 BEx查询分析此数据.

DataStore对象包含关键值,DSO的特征字段和数据可以使用Delta更新或其他DataStore对象甚至主数据进行更新.这些DataStore对象通常存储在二维透明数据库表中.

DSO架构

DSO组件由以下三个表组成 :

  • 激活队列 : 这用于在激活数据之前存储数据.密钥包含请求ID,包ID和记录号.激活完成后,请求将从激活队列中删除.

  • 活动数据表 : 此表用于存储当前活动数据,此表包含为数据建模定义的语义键.

  • 更改日志 :  ;激活对象时,对活动数据所做的更改将重新存储在此更改日志中.更改日志是PSA表,并在PSA树下的Administration Workbench中维护.

DSO Architecture

将新数据加载到DSO并将技术密钥添加到记录中时.然后将请求添加到激活队列.它可以手动或自动触发.

DataStore对象的类型

您可以将DataStore对象定义为以下类型 :

  • 标准DSO

  • 直接更新DSO

  • 写优化DSO

类型结构数据提供SID生成
标准DataStore对象由三个表组成:激活队列,活动数据表,更改日志来自数据传输过程
写优化数据存储对象仅包含活动数据表从数据传输流程
用于直接更新的DataStore对象仅包含Active数据表来自API

标准DataStore对象

创建标准DSO,转到RSA Workbench.

使用 T代码:RSA1

RSA Workbench

转到建模选项卡 →  InfoProvider → 选择InfoArea → 右键单击并单击"创建DataStore对象".

选择InfoArea

输入DataStore对象的技术名称和描述.

DataStore对象的类型 → 这用于选择DSO类型.它默认采用标准DSO.

单击创建(F5)按钮.

DataStore对象

要更改DSO类型,请转到设置选项卡,如以下屏幕截图所示.单击编辑图标,在打开的新窗口中,您可以更改DataStore对象并选择类型.

设置选项卡

SID生成

为每个主数据值生成SID.单击编辑以更改SID生成的设置.

SID Generation

创建一个SID

您可以选择以下选项 :

  • 报告期间

  • 激活期间或

  • 从不创建SID

独特数据记录 : 此选项用于确保DSO保留唯一值.

将质量状态设置为OK : 这允许您在数据加载完成后设置质量状态.

创建SID

关键字段和数据字段 : 关键字段用于添加唯一记录.要添加密钥字段,请右键单击密钥字段并选择InfoObject直接输入.

密钥字段

在新窗口中,在InfoObjects上输入技术名称,然后单击继续.您可以看到InfoObject已添加到关键字段部分下.

Insert InfoObject

以下是DSO中的关键字段InfoObject.完成此DSO结构后,您可以激活该DSO.

激活DSO


对象TDSO已激活

直接更新DataStore对象

用于直接更新的DataStore对象允许您在加载后立即访问数据以进行报告和分析.它与标准DSO的不同之处在于它处理数据的方式.此数据以与加载到DataStore对象相同的格式存储,以便应用程序直接更新.

直接更新DSO的结构

这些数据存储包含一个活动数据表,不存在更改日志区域.使用API从外部系统检索数据.

以下API存在 : 去;

  • RSDRI_ODSO_INSERT : 这些用于插入新数据.

  • RSDRI_ODSO_INSERT_RFC : 它与RSDRI_ODSO_INSERT类似,可以远程调用.

  • RSDRI_ODSO_MODIFY : 这用于插入具有新密钥的数据.对于系统中已有密钥的数据,数据会发生变化.

  • RSDRI_ODSO_MODIFY_RFC : 这类似于RSDRI_ODSO_MODIFY,可以远程调用.

  • RSDRI_ODSO_UPDATE : 此API用于更新现有数据.

  • RSDRI_ODSO_UPDATE_RFC : 这类似于RSDRI_ODSO_UPDATE,可以远程调用.

  • RSDRI_ODSO_DELETE_RFC : 此API用于删除数据.

福利

在直接更新DSO中,数据易于访问.您可以在加载后立即访问数据以进行报告和分析.

缺点

  • 由于此DSO的结构包含一个活动数据表而没有更改日志,因此不允许对InfoProviders进行delta更新.

  • BI系统不支持数据加载过程,因此DSO不会显示在管理部分或监视器中.

创建直接更新DataStore,转到管理工作台.使用 T-Code:RSA1

RSA1 Workbench

转到建模标签 →  InfoProvider → 选择InfoArea → 右键单击并单击"创建DataStore对象".

创建DataStore对象

输入DataStore对象的技术名称和描述.

DataStore对象的类型 : 这用于选择DSO类型.它默认采用标准DSO.

点击创建(F5)按钮.

对象类型

要更改DSO类型,请转到设置选项卡,如以下屏幕截图所示.单击"编辑"图标,在打开的新窗口中,您可以更改DataStore对象并选择其类型.选择Direct Update DataStore,然后单击Continue.

Direct Update DataStore

定义DataStore后,单击激活按钮激活DSO.

编辑DataStore