Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Accessing Cluster Tables.

Former Member
0 Kudos

Hi Gurus,

I have a doubt pertaining to how the access of database takes place for cluster tables.

For example the following cluster tables "BSEC,BSED,BSEG,BSES,BSET belong to the table cluster RFBLG which in turn has the Primary key fields BUKRS,BELNR,GJAHR.

Now assuming there are entries in the above cluster tables for key BUKRS = 1000, BELNR = 7894566, GJAHR = 2011. This means that all the entries of the above cluster tables for this key will be compressed into a single entry(or multiple, continues entries with incremental pagenos) in the RFBLG table cluster.

My query is how the below select statements will be processed in a single program/Report...

.

SELECT SINGLE * FROM BSEG INTO LS_BSEG WHERE BUKRS = '1000' AND BELNR = '7894566' AND GJHAR = '2011'.

"How will be the access filtered only for the BSEG table entry from the compressed data in Table Cluster RFBLG.

.

SELECT SINGLE * FROM BSET INTO LS_BSET WHERE BUKRS = '1000' AND BELNR = '7894566' AND GJHAR = '2011'.

"Whether this select also will hit the database for the given primary key. If so, then the logic of storing bulk of related data in one chunck is not optimised..

"How will be the access filtered only for the BSET table entry from the compressed data in Table Cluster RFBLG.

My idea was if a SELECT..is done on a table cluster(Eg:RFBLG), then the entire compressed data for all the cluster tables is retrieved and then stored in a memory/buffer. Based on some control data in the RFBLG, the required table contents must be filtered(First select of BSEG). For all subsequent cluster tables SELECT.. queries for the same primary key, the data must be picked from the buffer/memory and the filter logic should be used.

A clear Explanation of how the Cluster Table access works will be extremely helpful.

Regards,

Bhawar.

Bhawar

1 REPLY 1

Sandra_Rossi
Active Contributor
0 Kudos

Hi,

not sure to understand why it would be useful to know. If you want to decode it by yourself to accelerate, I wouldn't recommend you to do so, because it could be changed without further notice (it wouldn't surprise me that there were some conversions in some past upgrades). These tables are kind of obsolete (now we can store XSTRING combined with compression algorithms in ABAP).

You'd better convert them to normal tables if really needed (be very careful to not lose data during conversion!), these docs may help you:

- [SAP note 77282 (Database problems with Cluster table VBFA)|https://service.sap.com/sap/support/notes/77282 ]

- [SAP note 325130 (Conversion of Tables EDIDOC & CDCLS, Rel. 4.6C/D)|https://service.sap.com/sap/support/notes/325130 ]

- [SAP note 90922 (Restarting pool/cluster conversions)|https://service.sap.com/sap/support/notes/90922 ]

- [SAP note 24864 (No conversion of the table BSEG)|https://service.sap.com/sap/support/notes/24864 ]

- [SAP Library: Conversion process|http://help.sap.com/saphelp_nw70/helpdata/en/cf/21f1b8446011d189700000e8322d00/frameset.htm ]

Sandra

PS: I guess you read the SAP library, this doesn't bring an answer to your questions, but is useful to understand the content of table clusters -> [SAP Library: Pooled and Cluster Tables|http://help.sap.com/saphelp_nw70/helpdata/en/cf/21f083446011d189700000e8322d00/frameset.htm ]