簇表BSEG和透明表BSID/BSAD

先看个链接解释:池表,簇表,透明表

BSEG属于表簇RFBLG。

看它的where used 能看到里面有好多簇表。

 为啥BSEG是个簇表? 这个俺不知道,听说是因为之前Oracle有限制,只能处理一定列数的表,但是BSEG又是个特别多列的表,所以只能把它在数据库层进行压缩?

簇表是一个特殊的表类型,它的数据不是直接存储的,而是存在表簇里。以压缩的格式存储,压缩和解压都在应用层实现。表簇里有好多类似的表,这样允许冗余数据的高性能存储?(待究)这就导致它不能用OpenSQL的一些join语句了。

在这里能看到簇表的表簇。也就是说簇表BSEG的数据实际存储在表簇RFBLG里。簇表一般都有很多列数据,BSEG有300多列。

 

但是表簇里RFBLG就只有很少的列。 看Key对应的都是5个,但是BSEG是BUZID,表簇里是PAGENO。对于不是Key的列字段呢,都被压缩放进VARDATA里了。

而作为一个簇表,不能建次级索引,但是又得经常基于它里面的一些字段进行查询,所以建了这些索引表:BSAK, BSIK, BSAS, BSIS, BSAD, BSID

让你能在不知道凭证编号,或者公司代码,只知道总账账号的时候能查询到BSEG的数据。

通过下面这个表关系能看到。这个表关系还是很好的。我就是找不到电子版的了。

这个表关系图里面通过看表前缀和后缀,能看出来,BSI表示open items BSA表示cleared items。

后缀是账户类型字段KOART,K表示Kreditor->Vendor, D表示Debtor->Customer , S表示GL。

这些索引表是为了为了提供直接访问BSEG的索引,这个BSEG包含了AR,AP,GL的数据,但是如果我们想从公司和供应商编号找数据,那就到BSIK或者BSAK去找。如果知道公司和总账账号,那就去BSIS或者BSAS找。

从BW的角度去看,比如AR的数据源0FI_AR_4。应收账款就是从表BSID和BSAD来的。

 

 但是如果你去fb03,这些都是保存到BSEG的。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaomici

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值