Skip to Content

Archived discussions are read-only. Learn more about SAP Q&A

pool and cluster table data like control data and documentation data


wht is control data and documentation data which are stored in pool and cluster table what is the purpose of control and documentation data?

Former Member
Former Member replied

SELECT * FROM CDHDR where obectclas = 'EINKBELEG'

AND objectid = <PO number>



Several logical data records from different cluster tables can be stored together in one physical

record in a table cluster.

A cluster key consists of a series of freely definable key fields and a field (Pageno) for

distinguishing continuation records. A cluster also contains a long field (Vardata) that contains

the contents of the data fields of the cluster tables for this key. If the data does not fit into the long

field, continuation records are created. Control information on the structure of the data string is

still written at the beginning of the Vardata field.

The records of all cluster tables with the same key are stored under one key in the assigned table

cluster. The values of the key fields are stored in the corresponding key fields of the table cluster.

The values of all data fields of the assigned cluster tables are written as a string to the Vardata

field of the table cluster. Besides the actual data values, the data string contains information on

the structure of the data and which table it comes from. If the string exceeds the maximum length

of the Vardata field, a continuation record is written with the same key values. The continuation

records for a key are distinguished by their value in field Pageno. The actual length of the string

in the Vardata field is stored in the Pagelg field by the database interface.

You need the structural information stored in the ABAP Dictionary to read the data from a pooled

table or cluster table correctly. These tables can therefore only be processed using Open SQL

with the cluster interface, and not with Native SQL directly in the database.


The following are the table types used in SAP :

I. Transparent tables (BKPF, VBAK, VBAP, KNA1, COEP)

Allows secondary indexes (SE11->Display Table->Indexes)

Can be buffered (SE11->Display Table->technical settings) Heavily updated tables should not be buffered.

II. Pool Tables (match codes, look up tables)

Should be accessed via primary key or

Should be buffered (SE11->Display Table->technical settings)

No secondary indexes

Select * is Ok because all columns retrieved anyway

III. Cluster Tables (BSEG,BSEC)

Should be accessed via primary key - very fast retrieval otherwise very slow

No secondary indexes

Select * is Ok because all columns retrieved anyway. Performing an operation on multiple rows is more efficient than single row operations. Therefore you still want to select into an internal table. If many rows are being selected into the internal table, you might still like to retrieve specific columns to cut down on the memory required.

Statistical SQL functions (SUM, AVG, MIN, MAX, etc) not supported

Can not be buffered

IV. Buffered Tables (includes both Transparent & Pool Tables)

While buffering database tables in program memory (SELECT into internal table) is generally a good idea for performance, it is not always necessary. Some tables are already buffered in memory. These are mostly configuration tables. If a table is already buffered, then a select statement against it is very fast. To determine if a table is buffered, choose the 'technical settings' soft button from the data dictionary display of a table (SE12). Pool tables should all be buffered.

More at this link.

A clustered and a pooled table cannot be read from outside SAP

because certain data are clustered and pooled in one field.

But pool and cluster table is a many to one relationship table.

This means many pool table store in a database table which is know as table pool

All the pool table stored table in table pool does not need to have any foreign key relationship

but in the case of cluster table it is must.

And pool and cluster table is basically use to store application data.

Table pool can contain 10 to 1000 small pool table which has 10 to 100 records.

But cluster table can contain very big but few (1 to 10) cluster table.

For pool and cluster table you can create secondary index

and you can use select distinct, group for pool and cluster table.

You can use native SQL statement for pool and cluster table.

There is not ne to post multiple; use the pencil icon to correct your posting.

No real difference in practical use; new SAP tables usually are transparent tables. Cluster tables can not be joined in the select statement, this is one major difference.

pool tables: used with billiard

transparent tables sit at table and see your feet trough

cluster tables storage area with stuffed with tables all over


retreive data from table pool and table cluster

Pool and Cluster tables

Please give me reward points...

0 View this answer in context

Helpful Answer

Not what you were looking for? View more on this topic or Ask a question