Pooled table performance

I have a statement like this , which is taking a lot of time.
SELECT MATNR DATAB KNUMH
FROM A005
APPENDING TABLE IT_COND
FOR ALL ENTRIES IN IT_ZCOSTHISTFINAL
WHERE KAPPL = 'V'
AND KSCHL = 'PR00'
AND MATNR = IT_ZCOSTHISTFINAL-MATNR.
how can i improve the performance of this statement

Hi,
Are you saying you have many sales organizations..
Then build a range for the sales organzations and use it in the where clause..
Thanks,
Naren

Similar Messages

  • How to extract data from a pool table?

    Hello,
    I want to create an generic extractor for table T030, but this is a pool/cluster table and it is not possible to create a view for such a table.
    Do somebody know how to solve this problem? Does there exist function modules to read the data from a pool data?
    Thanks
    Theodor

    Function Module would be your best bet..considering thats the best way as far as performance is taken into consideration.
    But there is a work around too...
    If the other table u use in the join is not a clusture table then u can create a view on that table and u can add append structure to this  with fields from the clusture table and use an exit to populate it.
    Try it Will Work...used this technique when I used KONV.* This Procedure does not decrease performance considerably.
    at least in my case as thre were only a few fields i needed from pool table
    Hope this Helps
    Anand Raj

  • Inforation on Pool tables and cluster tables required.

    I want to know about the pool tables and cluster tables like how to create them and how to look the tables associated with the given tables. Like for the table BSEG we have other tables linked BSID etc. I'm new to this concept please guide me.

    <b>Pooled Table:</b>
    A pooled table in R/3 has a many-to-one relationship with a table in the database (see Figures 3.1 and 3.2). 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.
    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
    1. 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:
    2. Secondary indexes cannot be created.
    3. You cannot use the ABAP/4 constructs select distinct or group by.
    4.You cannot use native SQL.
    5.You cannot specify field names after the order by clause. order by primary key is the only permitted variation.
    For creation of pooled /cluster table, have  a look at below link.
    http://help.sap.com/saphelp_erp2004/helpdata/en/81/415d363640933fe10000009b38f839/frameset.htm
    For creation of table pool /cluster, have  a look at below link.
    http://help.sap.com/saphelp_erp2004/helpdata/en/81/415d363640933fe10000009b38f839/frameset.htm
    Have a look at below link.
    http://www.sap-img.com/abap/the-different-types-of-sap-tables.htm
    Best Regards,
    Vibha
    *Please mark all the helpful answers

  • Cluster and pooled tables

    when we will use cluster table , pooled table and transparent tables...

    FOr Tables
    http://www.erpgenie.com/abap/tables.htm
    For Tables
    <b>Pooled Tables, Table Pools, Cluster Tables, and Table Clusters</b>
    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.
    <b>Table Pools</b>
    From the point of view of the underlying DBMS as from the point of view of the ABAP dictionary, a table pool is a transparent table containing a group of pooled tables which, when created, were  assigned to this table pool.
    Field              Type                Description
    TABNAME CHAR(10)   Table                 name
    VARKEY CHAR(n)    Maximum key length n =< 110
    DATALN INT2(5) Length of the VARDATA record returned
    VARDATA RAW(m) Maximum length of the data varies according to DBMS
    <b>Table Clusters</b>
    Similarly to pooled tables, cluster tables are logical tables which, when created, are assigned to a table cluster. Therefore, a table cluster, or just cluster, groups together several tables of type clusters.Several logical rows from different cluster tables are brought together in a single physical record. The records
    from the cluster tables assigned to a cluster are thus stored in a single common table in the database.A cluster contains a transparent cluster key which must be located at the start of the key of all logical cluster tables to be included in the cluster. As well, a cluster contains a long field (VARDATA), which contains the
    data of the cluster tables for this key. If the data does not fit into a field, continuation records are created.
    Field Type Description
    CLKEY1 CHAR(*) First key fields
    CLKEY2 CHAR(*) Second key field
    CLKEYN CHAR(*) nth key field
    PAGENO INT2(5) Number of the next page
    TIMESTMP CHAR(14) Time stamp
    PAGELG INT2(5) Length of the VARDATA record returned
    VARDATA RAW(*) Maximum length of the data section; varies according to database system
    <b>Working with Tables</b>
    The dictionary includes many functions for working with tables. There are five basic operations you can perform on tables: display, create, delete, modify, copy. Please do not confuse displaying a  table with displaying the table entries (table contents). In order to display a table, it must previously exist; otherwise the system will display an  error message in the status bar. For the following example, the table TABNA is used. To display this table, from the main dictionary screen, enter the table name in the Object name
    input field with the radio button selected next to Tables. Then, click on the Display button at the bottom of the screen, or press the F7 function key,  or, alternatively,
    select Dictionary object Display from the menu.
    In this screen, you can see table information such as
    ¨ Table type, shown next to the name of the object. In the example, it is a transparent table.
    ¨ Short text description.
    ¨ Name of the user who made the last change, and the date of the change.
    ¨ Master language.
    ¨ Table status. On the screen, you can see this table is saved and active.
    ¨ Development class. For information on development classes, refer to Chap. 6.
    Delivery class, which sets the maintenance group for the table. It controls how tables will behave during client copy procedures, upgrades, and so forth.¨
    Tab. Maint. Allowed flag, which indicates whether you can generate a screen for maintaining table entries.
    ¨Then, on the lower part of the screen, you can see the table fields with all associated characteristics such as:
    ¨ Field name.
    ¨ Key indicator. When set, this field is the primary key, or part of it.
    ¨ Data element.
    ¨ Basic data type.
    ¨ Length.
    ¨ Check table.
    ¨ Short text, describing the field.
    Additional information about the table can be displayed by selecting the corresponding functions from the menu or directly from the application toolbar, such as keys, indexes, or technical settings.
    Regards,
    Balaji
    **Rewards for helpful answers

  • Can we join the transparent and pooled tables?

    hi friends,
    i have a doubt that is when we want to get the data from transparent and pooled tables it is not possible to join the tables.
    so should we go with nested select statements or is there any way to get the data? with better performance
    if i go with nested select statements it takes a lot time thats y i need a better way
    for example i want the data from BKPF and BSEG based on BELNR
    please send me how can we get it
    regards
    jagadish

    hi rob
    thanks for response
    see the below code once
    SELECT * FROM bkpf
              WHERE gjahr = p_gjahr
              AND ( monat BETWEEN lv_1st_mth AND gw_prev_monat ).
    *- Selection with cost center
          IF  gw_kostl NE SPACE.
                 s_kostl = s_kostl+3(10).
                 SELECT * FROM bseg
                      WHERE bukrs = bkpf-bukrs
                      AND   belnr = bkpf-belnr
                      AND   gjahr = bkpf-gjahr
                      AND   kokrs = p_kokrs
                      AND   kostl IN s_kostl
                      AND   buzei = '001'
                      AND   lstar <> ' '.
                 MOVE bseg-lstar TO itab2-lstar .
                 MOVE bkpf-bukrs TO itab2-bukrs.
                 MOVE bkpf-belnr TO itab2-belnr.
                 MOVE bkpf-gjahr TO itab2-gjahr.
                 MOVE bkpf-monat TO itab2-monat.
                 MOVE bkpf-budat TO itab2-budat.
                 MOVE bseg-kokrs TO itab2-kokrs.
                 MOVE bseg-buzei TO itab2-buzei.
                MOVE bseg-wrbtr TO itab2-wrbtr.
    *Changed----
                 IF bseg-shkzg = 'H'.
                   lv_wrbtrcd = 0 - bseg-wrbtr.
                   itab2-wrbtr = lv_wrbtrcd.
                 ELSEIF bseg-shkzg = 'S'.
                   MOVE bseg-wrbtr TO itab2-wrbtr.
                 ENDIF.
                 MOVE bseg-fdwbt TO itab2-fdwbt.
                 MOVE bseg-sgtxt TO itab2-sgtxt.
                 MOVE bseg-kostl TO itab2-kostl.
                 APPEND itab2.
                 ENDSELECT.
          ELSE.
                 s_kostl = p_estat+0(4).
                 SELECT * FROM bseg
                      WHERE bukrs = bkpf-bukrs
                      AND   belnr = bkpf-belnr
                      AND   gjahr = bkpf-gjahr
                      AND   kokrs = p_kokrs
                      AND   kostl IN s_kostl
                      AND   buzei = '001'
                      AND   lstar <> ' '.
                 IF bseg-kostl+0(4) = s_kostl.
                     MOVE bseg-lstar TO itab2-lstar.
                     MOVE bkpf-bukrs TO itab2-bukrs.
                     MOVE bkpf-belnr TO itab2-belnr.
                     MOVE bkpf-gjahr TO itab2-gjahr.
                     MOVE bkpf-monat TO itab2-monat.
                     MOVE bkpf-budat TO itab2-budat.
                     MOVE bseg-kokrs TO itab2-kokrs.
                     MOVE bseg-buzei TO itab2-buzei.
                    MOVE bseg-wrbtr TO itab2-wrbtr.
    *Changed----
                 IF bseg-shkzg = 'H'.
                   lv_wrbtrcd = 0 - bseg-wrbtr.
                   itab2-wrbtr = lv_wrbtrcd.
                 ELSEIF bseg-shkzg = 'S'.
                   MOVE bseg-wrbtr TO itab2-wrbtr.
                 ENDIF.
                     MOVE bseg-fdwbt TO itab2-fdwbt.
                     MOVE bseg-sgtxt TO itab2-sgtxt.
                     MOVE bseg-kostl TO itab2-kostl.
                     APPEND itab2.
                 ENDIF.
                 ENDSELECT.
          ENDIF.
          ENDSELECT.
    regards
    jagadish

  • Pooled table and clustred table

    pooled table and clustred table

    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.
    Table Pools
    From the point of view of the underlying DBMS as from the point of view of the ABAP dictionary, a table pool is a transparent table containing a group of pooled tables which, when created, were assigned to this table pool.
    Field Type Description
    TABNAME CHAR(10) Table name
    VARKEY CHAR(n) Maximum key length n =< 110
    DATALN INT2(5) Length of the VARDATA record returned
    VARDATA RAW(m) Maximum length of the data varies according to DBMS
    Table Clusters
    Similarly to pooled tables, cluster tables are logical tables which, when created, are assigned to a table cluster. Therefore, a table cluster, or just cluster, groups together several tables of type clusters.Several logical rows from different cluster tables are brought together in a single physical record. The records
    from the cluster tables assigned to a cluster are thus stored in a single common table in the database.A cluster contains a transparent cluster key which must be located at the start of the key of all logical cluster tables to be included in the cluster. As well, a cluster contains a long field (VARDATA), which contains the
    data of the cluster tables for this key. If the data does not fit into a field, continuation records are created.
    Field Type Description
    CLKEY1 CHAR(*) First key fields
    CLKEY2 CHAR(*) Second key field
    CLKEYN CHAR(*) nth key field
    PAGENO INT2(5) Number of the next page
    TIMESTMP CHAR(14) Time stamp
    PAGELG INT2(5) Length of the VARDATA record returned
    VARDATA RAW(*) Maximum length of the data section; varies according to database system
    Working with Tables
    The dictionary includes many functions for working with tables. There are five basic operations you can perform on tables: display, create, delete, modify, copy. Please do not confuse displaying a table with displaying the table entries (table contents). In order to display a table, it must previously exist; otherwise the system will display an error message in the status bar. For the following example, the table TABNA is used. To display this table, from the main dictionary screen, enter the table name in the Object name
    input field with the radio button selected next to Tables. Then, click on the Display button at the bottom of the screen, or press the F7 function key, or, alternatively,
    select Dictionary object Display from the menu.
    In this screen, you can see table information such as
    ¨ Table type, shown next to the name of the object. In the example, it is a transparent table.
    ¨ Short text description.
    ¨ Name of the user who made the last change, and the date of the change.
    ¨ Master language.
    ¨ Table status. On the screen, you can see this table is saved and active.
    ¨ Development class. For information on development classes, refer to Chap. 6.
    Delivery class, which sets the maintenance group for the table. It controls how tables will behave during client copy procedures, upgrades, and so forth.¨
    Tab. Maint. Allowed flag, which indicates whether you can generate a screen for maintaining table entries.
    ¨Then, on the lower part of the screen, you can see the table fields with all associated characteristics such as:
    ¨ Field name.
    ¨ Key indicator. When set, this field is the primary key, or part of it.
    ¨ Data element.
    ¨ Basic data type.
    ¨ Length.
    ¨ Check table.
    ¨ Short text, describing the field.
    Additional information about the table can be displayed by selecting the corresponding functions from the menu or directly from the application toolbar, such as keys, indexes, or technical settings
    Standard table:
    The key access to a standard table uses a sequential search. The time required for an access is linearly dependent on the number of entries in the internal table.
    You should usually access a standard table with index operations.
    Sorted table:
    The table is always stored internally sorted by its key. Key access to a sorted table can therefore use a binary search. If the key is not unique, the entry with the lowest index is accessed. The time required for an access is logarithmically dependent on the number of entries in the internal table.
    Index accesses to sorted tables are also allowed. You should usually access a sorted table using its key.
    Hash table:
    The table is internally managed with a hash procedure. All the entries must have a unique key. The time required for a key access is constant, that is it does not depend on the number of entries in the internal table.
    You cannot access a hash table with an index. Accesses must use generic key operations (SORT, LOOP, etc.).
    Index table:
    The table can be a standard table or a sorted table.
    Index access is allowed to such an index table. Index tables can be used to define the type of generic parameters of a FORM (subroutine) or a function module.
    Just have a look at these links:
    http://help.sap.com/saphelp_nw04/helpdata/en/90/8d7304b1af11d194f600a0c929b3c3/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/74/83015785d811d295a800a0c929b3c3/frameset.htm
    For creating cluster tables first u have to create table pool ...
    create a table and specify the fields and other tecnical settings and
    then Goto EXTRAS --> Change Table Category and selct the Pooled table and activate it...
    Then Create another table And specify the required fileds and also the settings and then
    Goto EXTRAS --> Change Table Category and selct the Cluaster table and in Delivery and
    Maintainence Properties mention the Pooled table that u created and activate it...
    Regards
    Sreeni

  • Cluster tables , pool tables ,hashed tables?

    give me the examles of cluster and pool tables  & hashed tables ?

    <b>I. Transparent tables (BKPF, VBAK, VBAP, KNA1, COEP)</b>
    Allows secondary indexes (SE11->Display Table->Indexes)
    Can be buffered (SE11->Display Table->technical settings) Heavily updated tables should not be buffered.
    <b>
    II. Pool Tables (match codes, look up tables)</b>
    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
    <b>III. Cluster Tables (BSEG,BSEC)</b>
    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
    <b>IV. Buffered Tables (includes both Transparent & Pool Tables)</b>
    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.
    regards,
    srinivas
    <b>*reward for useful answers*</b>

  • Joining of cluster  and pooled tables ,transparent tables

    Hi,
    I wanted to do join between  cluster  ,pooled and transparent tables  but inner join won't allow  to join between  transparent or cluster tables or pooled tables .  The requirements are that join should take place dynamically  between transparent ,cluster ,pooled tables .I have written the Function module for joining multiple tables for transparent tables but unable to implement same for the transparent and cluster or pooled tables.How to handle the joining of tables between pooled or cluster  and transparent tables kindly provide me the answer .
    Thanks,
    jahnavi.

    Hi Jahnavi,
    My suggestion would be... if you want to retrieve the data between cluster tables and transparent tables.. its better to go for views instead of cluster tables then that would be easier for you to retrieve the data
    let us take one example BSEG its a cluster table where as there is one view VBSEGK it contains almost all the important fields needed so that u can make use of those or you can look into BSIK and BSAK tables so it better to avoid the cluster tables while retriving the data from the performance point of view

  • What are hte pooled tables

    Hello,
    I dont know what are the pooled tables in ABAP. Please any one help me to know this question.
    I will be thankfull to all,
    By
    satish

    Hi,
    Here i am giving the definitions and differences between
    different table types in SAP.
    It gives you clear idea.
    You can also go thru. below link
    http://web.mit.edu/ist/org/admincomputing/dev/sap_table_types.htm
    <b>I. Transparent tables</b> (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.
    <b>II. Pool Tables</b> (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
    <b>III. Cluster Tables</b> (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
    <b>IV. Buffered Tables</b> (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
    Hope this clears your doubt.
    Note: Please reward the points for helpful answers.
    Regards,
    Gopinath Addepalli

  • Inner join command is not supporting pooled table

    Hi Forum,
    I'm new to abap. I tried passing fields of two tables into a single table using inner join command. But one of the tables is a pooled table so the command "inner join" is not supporting that. How to pass the fields in those two tables into a single table? Kindly help me out.
    Rgrds,
    Mahathi

    Hi ....
    U can't perform JOIN with Pooled or Cluster tables
    trying to join A018 and KONP .... here A018 is Pooled table... Look at below threads...
    Re: abap query join A018/KONP
    Can't perform join table
    Hope it will solve your problem..
    <b>Reward points if useful.</b>
    Thanks & Regards
    ilesh 24x7

  • Clustertable and pooled table

    hi guru
    which type of data is store in cluster table and pooled table?
    what is relation between cluster and pooled table

    Hi,
    . 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.
    "Major difference betwen Standard tables,Pooled tables and Cluster Tables?
    1.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.
    2.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.
    3.A clustered and a pooled table cannot be read from outside SAP because certain data are clustered and pooled in one field.
    4.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.
    5.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.
    6.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.
    7.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.
    8.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.
    9.A structure is a table without data. It is only filled by program logic at the moment it is needed starting from tables.
    10.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.
    'The table which store information about Structures and Tables are as follows:
    DD02L - table properties
    DD02T - table texts
    DD03L - field properties
    DD03T - field texts
    Creating cluster/pool tables:
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/21f0b7446011d189700000e8322d00/content.htm
    creating transparent tables
    http://help.sap.com/saphelp_nw04/helpdata/en/cf/21eb6e446011d189700000e8322d00/frameset.htm
    Thanks,
    Reward If Helpful.

  • About pool table??

    what for pooled and cluster table used and how to create it???

    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.
    "Major difference betwen Standard tables,Pooled tables and Cluster Tables?
    1.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.
    2.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.
    3.A clustered and a pooled table cannot be read from outside SAP because certain data are clustered and pooled in one field.
    4.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.
    5.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.
    6.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.
    7.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.
    8.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.
    9.A structure is a table without data. It is only filled by program logic at the moment it is needed starting from tables.
    10.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.
    'The table which store information about Structures and Tables are as follows:
    DD02L - table properties
    DD02T - table texts
    DD03L - field properties
    DD03T - field texts
    Creating Pooled Tables/Cluster Tables Locate the document in its SAP Library structure
    Procedure
       1. In the initial screen of the ABAP Dictionary select object type Table, enter a table name and choose This graphic is explained in the accompanying text Create.
          The field maintenance screen for the table is displayed. Table type Transparent table is set as default.
       2. Make the necessary entries in the Short description and Delivery class fields on the Attributes tab page. Then define the fields of the table.
          Proceed as when Structure link creating a transparent table. Save your entries.
       3. Choose Extras
          ® Change table category.
          A dialog box appears in which you have to select the table type Pooled table or Cluster table.
       4. Choose This graphic is explained in the accompanying textSelect.
          You return to the field maintenance screen for the table. Field Pool/cluster name is displayed on the Attributes tab page in addition to the standard fields.
       5. Enter the name of the
          table pool or table cluster to which you want to assign the pooled table or cluster table in field Pool/cluster name
          Note that the total key length of a pooled table may not exceed the key length of the associated table pool. The key of a cluster table must correspond to the key of the associated table cluster.
       6. Proceed as when creating a transparent table (see
          Structure link Creating Tables). Remember that you cannot create indexes for pooled or cluster tables.
    Note
    All the attributes of the Structure link technical settings can be maintained for pooled tables and cluster tables. Before you can access these attributes, however, you must convert the table to a transparent table.
    Leaving content frame
    creating pool/cluster tables
    regards,
    srinivas
    *reward for useful answers*</b>

  • Wat is the exact differences between clustered table and pooled table

    hi,
       can you tell me ravi...wat is the exact differences between clustered table and pooled table
    with regards//
    anilreddyg

    Hi Anil Reddy
    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.
    Table Pools
    From the point of view of the underlying DBMS as from the point of view of the ABAP dictionary, a table pool is a transparent table containing a group of pooled tables which, when created, were assigned to this table pool.
    Field Type Description
    TABNAME CHAR(10) Table name
    VARKEY CHAR(n) Maximum key length n =< 110
    DATALN INT2(5) Length of the VARDATA record returned
    VARDATA RAW(m) Maximum length of the data varies according to DBMS
    Table Clusters
    Similarly to pooled tables, cluster tables are logical tables which, when created, are assigned to a table cluster. Therefore, a table cluster, or just cluster, groups together several tables of type clusters.Several logical rows from different cluster tables are brought together in a single physical record. The records
    from the cluster tables assigned to a cluster are thus stored in a single common table in the database.A cluster contains a transparent cluster key which must be located at the start of the key of all logical cluster tables to be included in the cluster. As well, a cluster contains a long field (VARDATA), which contains the
    data of the cluster tables for this key. If the data does not fit into a field, continuation records are created.
    Field Type Description
    CLKEY1 CHAR(*) First key fields
    CLKEY2 CHAR(*) Second key field
    CLKEYN CHAR(*) nth key field
    PAGENO INT2(5) Number of the next page
    TIMESTMP CHAR(14) Time stamp
    PAGELG INT2(5) Length of the VARDATA record returned
    VARDATA RAW(*) Maximum length of the data section; varies according to database system
    Working with Tables
    The dictionary includes many functions for working with tables. There are five basic operations you can perform on tables: display, create, delete, modify, copy. Please do not confuse displaying a table with displaying the table entries (table contents). In order to display a table, it must previously exist; otherwise the system will display an error message in the status bar. For the following example, the table TABNA is used. To display this table, from the main dictionary screen, enter the table name in the Object name
    input field with the radio button selected next to Tables. Then, click on the Display button at the bottom of the screen, or press the F7 function key, or, alternatively,
    select Dictionary object Display from the menu.
    In this screen, you can see table information such as
    ¨ Table type, shown next to the name of the object. In the example, it is a transparent table.
    ¨ Short text description.
    ¨ Name of the user who made the last change, and the date of the change.
    ¨ Master language.
    ¨ Table status. On the screen, you can see this table is saved and active.
    ¨ Development class. For information on development classes, refer to Chap. 6.
    Delivery class, which sets the maintenance group for the table. It controls how tables will behave during client copy procedures, upgrades, and so forth.¨
    Tab. Maint. Allowed flag, which indicates whether you can generate a screen for maintaining table entries.
    ¨Then, on the lower part of the screen, you can see the table fields with all associated characteristics such as:
    ¨ Field name.
    ¨ Key indicator. When set, this field is the primary key, or part of it.
    ¨ Data element.
    ¨ Basic data type.
    ¨ Length.
    ¨ Check table.
    ¨ Short text, describing the field.
    Additional information about the table can be displayed by selecting the corresponding functions from the menu or directly from the application toolbar, such as keys, indexes, or technical settings
    Standard table:
    The key access to a standard table uses a sequential search. The time required for an access is linearly dependent on the number of entries in the internal table.
    You should usually access a standard table with index operations.
    Sorted table:
    The table is always stored internally sorted by its key. Key access to a sorted table can therefore use a binary search. If the key is not unique, the entry with the lowest index is accessed. The time required for an access is logarithmically dependent on the number of entries in the internal table.
    Index accesses to sorted tables are also allowed. You should usually access a sorted table using its key.
    Hash table:
    The table is internally managed with a hash procedure. All the entries must have a unique key. The time required for a key access is constant, that is it does not depend on the number of entries in the internal table.
    You cannot access a hash table with an index. Accesses must use generic key operations (SORT, LOOP, etc.).
    Index table:
    The table can be a standard table or a sorted table.
    Index access is allowed to such an index table. Index tables can be used to define the type of generic parameters of a FORM (subroutine) or a function module.
    Just have a look at these links:
    http://help.sap.com/saphelp_nw04/helpdata/en/90/8d7304b1af11d194f600a0c929b3c3/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/74/83015785d811d295a800a0c929b3c3/frameset.htm
    Regards
    Sreeni

  • How to get the data from Pooled Table T157E.

    Hi Experts,
    How to get the data from Pooled Table T157E.
    Any help.
    Thanks in Advance,
    Ur's Harsha.

    create some internal table similar to T157E and pass all data as per SPRAS.
    After that use internal table in your program as per the requirement.
    Regds,
    Anil

  • Select query taking too much time to fetch data from pool table a005

    Dear all,
    I am using 2 pool table a005 and a006 in my program. I am using select query to fetch data from these table. i.e. example is mentioned below.
    select * from a005 into table t_a005 for all entries in it_itab
                       where vkorg in s_vkorg
                       and     matnr in  s_matnr
                       and     aplp   in  s_aplp
                       and     kmunh = it_itab-kmunh.
    here i can't create index also as tables are pool table...If there is any solutions , than please help me for same..
    Thanks ,

    it would be helpful to know what other fields are in the internal table you are using for the FOR ALL ENTRIES.
    In general, you should code the order of your fields in the select in the same order as they appear in the database.  If you do not have the top key field, then the entire database is read. If it's large then it's going to take a lot of time.  The more key fields from the beginning of the structure that you can supply at faster the retrieval.
    Regards,
    Brent

Maybe you are looking for

  • Speed test: PL/SQL vs. Java Stored Procedures

    I performed tests on these two procedures: =========================================== // Create a Statement Statement stmt = conn.createStatement (ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); // Query the table ResultSet rset = st

  • ITunes restore error message after iphone upgrade to OS5

    Since installing iphone OS5 I've been getting a message when connecting to itunes that my restore was interrupted and would I like to continue to restore from my last backup. I've tried restoring several times and I keep getting the same error messag

  • The database logon information for this report is either incomplete

    Hello All I have installed a full licensed version of crystal reports server 2008 onto a windows server 2003 virtual server. I am getting the following error message when trying to run some reports when i am logged in as the adminstrator 'The databas

  • Cannot install apps in my ipad2

    i cant install apps on my ipad2

  • Crystal Reports 2008 Loading Failed Error in Windows 7

    Hi, We are using Crystal Reports 2008 in our application. These are working fine in XP Professional OS. But the Same code is not working in Windows 7 operating system. When I debug, I found report Load is failing. Error is at below line of code. CR.L