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 Pool & Cluster tables?

Former Member
0 Likes
3,741

Hi,

I wanted to know the difference between Pool & Cluster tables?

While programming we use only Transparent tables,so whats the need for the existence of 3 different types of tables.

Please advice.

Thanks!!!

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,366

Hi,

Transparent Table:

Exists with the same structure both in dictionary as well as in database exactly with the same data and fields.

Pooled Table:

Pooled tables are logical tables that must be assigned to a table pool when they are defined. Pooled tables are used to store control data. Several pooled tables can be cominied in a table pool. The data of these pooled tables are then sorted in a common table in the database.

Cluster Table:

Cluster tables are logical tables that must be assigned to a table cluster when they are defined. Cluster tables can be used to strore control data. They can also be used to store temporary data or texts, such as documentation.

A transparent table is a table that stores data directly. You can read these tables directly on the database from outside SAP with for instance an SQL statement.

Transparent table is a one to one relation table i.e. when you create one transparent table then exactly same table will create in data base and if is basically used to store transaction data.

A clustered and a pooled table cannot be read from outside SAP because certain data are clustered and pooled in one field.

One of the possible reasons is for instance that their content can be variable in length and build up. Database manipulations in Abap are limited as well.

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.

A structure is a table without data. It is only filled by program logic at the moment it is needed starting from tables.

A view is a way of looking at the contents of tables. It only contains the combination of the tables at the basis and the way the data needs to be represented. You actually call directly upon the underlying tables.

http://www.datamanagementgroup.com/Resources/Articles/Article_0106_2.asp

more info

http://help.sap.com/saphelp_erp2004/helpdata/en/81/415d363640933fe10000009b38f839/frameset.htm

http://cma.zdnet.com/book/abap/ch03/ch03.htm

Check this links.

http://help.sap.com/saphelp_40b/helpdata/en/4f/991f82446d11d189700000e8322d00/applet.htm

http://www.techinterviews.com/?p=198

Regards,

Priyanka.

9 REPLIES 9
Read only

Former Member
0 Likes
1,367

Hi,

Transparent Table:

Exists with the same structure both in dictionary as well as in database exactly with the same data and fields.

Pooled Table:

Pooled tables are logical tables that must be assigned to a table pool when they are defined. Pooled tables are used to store control data. Several pooled tables can be cominied in a table pool. The data of these pooled tables are then sorted in a common table in the database.

Cluster Table:

Cluster tables are logical tables that must be assigned to a table cluster when they are defined. Cluster tables can be used to strore control data. They can also be used to store temporary data or texts, such as documentation.

A transparent table is a table that stores data directly. You can read these tables directly on the database from outside SAP with for instance an SQL statement.

Transparent table is a one to one relation table i.e. when you create one transparent table then exactly same table will create in data base and if is basically used to store transaction data.

A clustered and a pooled table cannot be read from outside SAP because certain data are clustered and pooled in one field.

One of the possible reasons is for instance that their content can be variable in length and build up. Database manipulations in Abap are limited as well.

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.

A structure is a table without data. It is only filled by program logic at the moment it is needed starting from tables.

A view is a way of looking at the contents of tables. It only contains the combination of the tables at the basis and the way the data needs to be represented. You actually call directly upon the underlying tables.

http://www.datamanagementgroup.com/Resources/Articles/Article_0106_2.asp

more info

http://help.sap.com/saphelp_erp2004/helpdata/en/81/415d363640933fe10000009b38f839/frameset.htm

http://cma.zdnet.com/book/abap/ch03/ch03.htm

Check this links.

http://help.sap.com/saphelp_40b/helpdata/en/4f/991f82446d11d189700000e8322d00/applet.htm

http://www.techinterviews.com/?p=198

Regards,

Priyanka.

Read only

former_member196299
Active Contributor
0 Likes
1,366

hi ,

Pooled Table :-

A pooled table in R/3 has a many-to-one

relationship.

When you look at a pooled table in R/3, you see a

description of a table.

R/3 uses table pools to hold a large number (tens to

thousands) of very small tables (about 10 to 100

rows each).

Table pools reduce the amount of database resources

needed when many small tables have to be open at the

same time.

SAP uses them for system data.

You might create a table pool if you need to create

hundreds of small tables that each hold only a few

rows of data.

Pooled tables are primarily used by SAP to hold

customizing data.

Cluster Table :-

A cluster table is similar to a pooled table.

It has a many-to-one relationship with a table in

the database.

Many cluster tables are stored in a single table in

the database called a table cluster.

It holds many tables within it.

The tables it holds are all cluster tables.

Like pooled tables, cluster tables are another

proprietary SAP construct.

They are used to hold data from a few (approximately

2 to 10) very large tables.

They would be used when these tables have a part of

their primary keys in common, and if the data in

these tables are all accessed simultaneously.

Table clusters contain fewer tables than table pools

and, unlike table pools, the primary key of each

table within the table cluster begins with the same

field or fields.

A cluster is advantageous in the case where data is

accessed from multiple tables simultaneously and

those tables have at least one of their primary key

fields in common.

Cluster tables reduce the number of database reads

and thereby improve performance.

Pooled and cluster tables are usually used only by

SAP and not used by customers, probably because of

the proprietary format of these tables within the

database and because of technical restrictions

placed upon their use within ABAP/4 programs.

Cluster table can only be read and display via your

ABAP program.

regards,

Ranjita

Read only

Former Member
0 Likes
1,366

hi,

<b>Pooled table</b>

A pooled table in R/3 has a many-to-one relationship with a table in the database.

For one table in the database, there are many tables in the R/3 Data Dictionary.

The table in the database has a different name than the tables in the DDIC, it has a different number of fields,

and the fields have different names as well. Pooled tables are an SAP proprietary construct.

When you look at a pooled table in R/3, you see a description of a table.

However, in the database, it is stored along with other pooled tables in a single table called a table pool.

A table pool is a database table with a special structure that enables the data of many R/3 tables to be stored within it.

It can only hold pooled tables.

R/3 uses table pools to hold a large number (tens to thousands) of very small tables (about 10 to 100 rows each). Table pools reduce the amount of database resources needed when many small tables have to be open at the same time. SAP uses them for system data. You might create a table pool if you need to create hundreds of small tables that each hold only a few rows of data. To implement these small tables as pooled tables, you first create the definition of a table pool in R/3 to hold them all. When activated, an associated single table (the table pool) will be created in the database. You can then define pooled tables within R/3 and assign them all to your table pool.Pooled tables are primarily used by SAP to hold customizing data.

<b>Cluster Table</b>

A cluster table is similar to a pooled table. It has a many-to-one relationship with a table in the database.

Many cluster tables are stored in a single table in the database called a table cluster.

A table cluster is similar to a table pool. It holds many tables within it. The tables it holds are all cluster tables.

Like pooled tables, cluster tables are another proprietary SAP construct.

They are used to hold data from a few (approximately 2 to 10) very large tables.

They would be used when these tables have a part of their primary keys in common,

and if the data in these tables are all accessed simultaneously. The data is stored logically.

Table clusters contain fewer tables than table pools and, unlike table pools,

the primary key of each table within the table cluster begins with the same field or fields.

Rows from the cluster tables are combined into a single row in the table cluster.

The rows are combined based on the part of the primary key they have in common.

Thus, when a row is read from any one of the tables in the cluster,

all related rows in all cluster tables are also retrieved, but only a single I/O is needed.

A cluster is advantageous in the case where data is accessed from multiple tables simultaneously

and those tables have at least one of their primary key fields in common.

Cluster tables reduce the number of database reads and thereby improve performance.

Restrictions on Pooled and Cluster Tables

Pooled and cluster tables are usually used only by SAP and not used by customers,

probably because of the proprietary format of these tables within the database

and because of technical restrictions placed upon their use within ABAP/4 programs.

On a pooled or cluster table:

  • Secondary indexes cannot be created.

  • You cannot use the ABAP/4 constructs select distinct or group by.

  • You cannot use native SQL.

  • You cannot specify field names after the order by clause. order by primary key is the only permitted variation.

Regards

Reshma

Read only

Former Member
0 Likes
1,366

Hi,

<b>pooled tables</b>

A pooled table in R/3 has a many-to-one relationship with a table in the database . For one table in the database, there are many tables in the R/3 Data Dictionary. The table in the database has a different name than the tables in the DDIC, it has a different number of fields, and the fields have different names as well. Pooled tables are an SAP proprietary construct.

<b>Cluster tables</b>

A cluster table is similar to a pooled table. It has a many-to-one relationship with a table in the database. Many cluster tables are stored in a single table in the database called a table cluster.

rgds,

bharat.

Read only

Former Member
0 Likes
1,366

please go through in the ABAP 21 Days book it was simply superurb ........

with easy explaination and screen flow of difference b't all the table types..........

even screen shots ..... in the 3 or 4 th chapter ....

Regadrs.

Girish

Read only

Former Member
0 Likes
1,366

HI,

<b>A pooled table</b> in R/3 has a many-to-one relationship

with a table in the database. For one table in the

database, there are many tables in the R/3 Data

Dictionary. The table in the database has a different

name than the tables in the DDIC, it has a different

number of fields, and the fields have different names

as well. Pooled tables are an SAP proprietary

construct.

<b>cluster table</b> is similar to a pooled table. It has a

many-to-one relationship with a table in the database.

Many cluster tables are stored in a single table in

the database called a table cluster.

For more info.

Check this URL.

http://www.sap-img.com/abap/the-different-types-of-sap-tables.htm

Reward if it useful.

Read only

Former Member
0 Likes
1,366

hi,

Pooled Tables, Table Pools, Cluster Tables, and Table Clusters:-

These types of tables are not transparent in the sense that they are not legible or manageable directly using the underlying database system tools. They are managed from within the R/3 environment from the ABAP dictionary and also at runtime when they are loaded into application memory.Pool and cluster tables are logical tables. Physically, these logical tables are arranged as records of transparent tables. The pool and cluster tables are grouped together in other tables, which are of the transparent type. The tables that group together pool tables are known as table pools, or just pools; similarly, table clusters, or just

clusters, are the tables which group cluster tables.Not all operations that can be performed over transparent tables can be executed over pool or cluster tables.

For instance, you can manage these tables using Open SQL calls from ABAP, but not Native SQL.These tables are meant to be buffered and loaded in memory, because they are commonly used for storing internal control information and other types of data with no external (business) relevance. SAP recommends that tables of pool or cluster type be used exclusively for control information such as

program parameters, documentation, and so on. Transaction and application data should be stored in transparent tables

and please go through these links,

<b>http://www.is-edu.hcmuns.edu.vn/WebLib/Books/Database/0-672-31217-4/ch03/ch03.htm#TableClustersandClusterTables</b>

<b>

http://www.erpgenie.com/abap/tables.htm</b>;

Read only

Former Member
0 Likes
1,366

hi,

<b>Pool Tables</b>

1) Many to One Relationship.

2) Table in the Dictionary has the different name, different number of fields, and the fields have the different name as in the R3 Table definition.

3) It can hold only pooled tables.

<b>cluster Tables:</b>

1) These are logical tables that are arranged as records of transparent tables.

2) One cannot use Native SQL on these tables (only Open SQL).

3) They are not manageable directly using database system tools.

These two table are used to store system data and onother for configural data.

if u want to fetch the data from DB table u need to go for trasperent tables only.

Bcoz transperent tables are one - one relation.

Thanks,

Madhukar