Application Development and Automation 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: 
Read only

Difference between cluster and transparent table.....

Former Member
0 Likes
1,056

Hi experts!

i just want to ask the difference between cluster table and transparent table? and why cant i join the two table? pls help, i want to join table CDHDR and CDPOS..how can i do it? tnx!

regards,

mackoy

1 ACCEPTED SOLUTION
Read only

seshatalpasai_madala
Product and Topic Expert
Product and Topic Expert
0 Likes
632

Hi,

CLUSTER TABLE is a table which has one TABLE in the DATABASE mapped to several tables declared in the Data Dictionary.

That is Severl DDIC tables data will be stored in One database table.

That is the reason why you cannot JOIN a cluster table as the underlying databse table has data from othertables also.

Cluster table is to group some of the related tables and to store the data in archive format.

For a normal transperent table there is one Databse table. so you can JOIN with a normal transperent table.

Regards,

Sesh

3 REPLIES 3
Read only

Former Member
0 Likes
632

Hi

Check these threads

Regards

Ravish Garg

<b>

Reward if useful</b>

Read only

seshatalpasai_madala
Product and Topic Expert
Product and Topic Expert
0 Likes
633

Hi,

CLUSTER TABLE is a table which has one TABLE in the DATABASE mapped to several tables declared in the Data Dictionary.

That is Severl DDIC tables data will be stored in One database table.

That is the reason why you cannot JOIN a cluster table as the underlying databse table has data from othertables also.

Cluster table is to group some of the related tables and to store the data in archive format.

For a normal transperent table there is one Databse table. so you can JOIN with a normal transperent table.

Regards,

Sesh

Read only

Former Member
0 Likes
632

SAP Table Types

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.

also refer the link for examples

regards,

srinivas

*reward for useful answers*