Hash Cluster Tables vs Partitioning
Hi All,
Can we create partition on Cluster tables?
As per understanding Cluster can give excellent performance if used carefully, in our case we need to purge our data also.
We can purge the partitions easly.
Can you help me for the comparion of these two objects?
Thanks
Sandeep
No , Oracle does not support this.
http://download.oracle.com/docs/cd/B28359_01/server.111/b32024.pdf (page 4-19).
The rules for partitioning indexes are similar to those for tables:
■ An index can be partitioned unless:
– The index is a cluster index.
– The index is defined on a clustered table
Thanks
http://swervedba.wordpress.com/
Similar Messages
-
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> -
Primary key constraint for index-organized tables or sorted hash cluster
We had a few tables dropped without using cascade constraints. Now when we try to recreate the table we get an error message stating that "name already used by an existing constraint". We cannot delete the constraint because it gives us an error "ORA-25188: cannot drop/disable/defer the primary key constraint for index-organized tables or sorted hash cluster" Is there some sort of way around this? What can be done to correct this problem?
What version of Oracle are you on?
And have you searched for the constraint to see what it's currently attached to?
select * from all_constraints where constraint_name = :NAME; -
Issue with single table hash cluster
I'm still learning lots about html db so please do bear with me...
I have a table that is part of a single table hash cluster. The cluster and table are created like so:
create cluster webmon.owm_system
db_id number(3),
env_id number(3)
size 171
hashkeys 1009
single table
pctfree 2
pctused 96;
create table webmon.owm_system
tier_id number(3) not null,
host_id number(3) not null,
port number(4) not null,
sid varchar2(8) not null,
admin_user varchar2(32) not null,
admin_auth varchar2(48) not null,
primary_dba_id number(3) not null,
secondary_dba_id number(3) not null,
primary_bac_id number(3) not null,
secondary_bac_id number(3) not null,
version_id number(3) not null,
log_mode_id number(3) not null,
db_id number(3) not null,
env_id number(3) not null,
admin_conn varchar2(32) null,
constraint owm_system_pk primary key (db_id, env_id)
cluster webmon.owm_system
db_id,
env_id
);I have created a form (and report) to view and edit the data in the table. When I click the "Apply Changes" button on the form after editing data, I get an error. The SQL that is sent to the database is incorrect.
Here is the (reformatted) incorrect SQL that is sent (captured in a database trace file):
update
"WEBMON"."OWM_SYSTEM"
set
"SECONDARY_DBA_ID" = :DML_BV0001,
"DB_ID" = :DML_BV0002,
"DB_ID" = :DML_BV0003, /* This should not be here */
"ENV_ID" = :DML_BV0004,
"ENV_ID" = :DML_BV0005, /* This should not be here */
"HOST_ID" = :DML_BV0006,
"PORT" = :DML_BV0007,
"SID" = replace(:DML_BV0008,'%null%',null),
"ADMIN_USER" = replace(:DML_BV0009,'%null%',null),
"ADMIN_AUTH" = replace(:DML_BV0010,'%null%',null),
"ADMIN_CONN" = replace(:DML_BV0011,'%null%',null),
"VERSION_ID" = :DML_BV0012,
"LOG_MODE_ID" = :DML_BV0013,
"TIER_ID" = :DML_BV0014,
"PRIMARY_DBA_ID" = :DML_BV0015,
"PRIMARY_BAC_ID" = :DML_BV0016,
"SECONDARY_BAC_ID" = :DML_BV0017
where
"DB_ID" = :p_rowid
and
"ENV_ID" = :p_rowid2Why are the DB_ID and ENV_ID columns in the statement twice? That is the error.
Now, if I create the table as just a basic, non-clustered table like this:
create table webmon.owm_system
tier_id number(3) not null,
host_id number(3) not null,
port number(4) not null,
sid varchar2(8) not null,
admin_user varchar2(32) not null,
admin_auth varchar2(48) not null,
primary_dba_id number(3) not null,
secondary_dba_id number(3) not null,
primary_bac_id number(3) not null,
secondary_bac_id number(3) not null,
version_id number(3) not null,
log_mode_id number(3) not null,
db_id number(3) not null,
env_id number(3) not null,
admin_conn varchar2(32) null,
constraint owm_system_pk primary key (db_id, env_id)
);Everything works as expected. The (correct) SQL sent in this case is:
update
"WEBMON"."OWM_SYSTEM"
set
"SECONDARY_DBA_ID" = :DML_BV0001,
"DB_ID" = :DML_BV0002,
"ENV_ID" = :DML_BV0003,
"HOST_ID" = :DML_BV0004,
"PORT" = :DML_BV0005,
"SID" = replace(:DML_BV0006,'%null%',null),
"ADMIN_USER" = replace(:DML_BV0007,'%null%',null),
"ADMIN_AUTH" = replace(:DML_BV0008,'%null%',null),
"ADMIN_CONN" = replace(:DML_BV0009,'%null%',null),
"VERSION_ID" = :DML_BV0010,
"LOG_MODE_ID" = :DML_BV0011,
"TIER_ID" = :DML_BV0012,
"PRIMARY_DBA_ID" = :DML_BV0013,
"PRIMARY_BAC_ID" = :DML_BV0014,
"SECONDARY_BAC_ID" = :DML_BV0015
where
"DB_ID" = :p_rowid
and
"ENV_ID" = :p_rowid2The "real" system in question has a fairly large number of single table hash clusters. I'm leary of continuing my explorations if there is a problem with using single table hash clusters. On the other hand, I'm quite open to the idea that I've done something wrong!
Any pointers? Is there anyway to change the SQL that is being generated when using the single table hash cluster? More information needed?
Thanks,
MarkMark,
Can't help with the hash table problem but as a method of dealing with it you could just make a procedure to manage the table.
Pass the value of :REQUEST (matches value of button) in and you'll be able to modify the tables.
procedure manage_owm_system (p_request varchar2,db_id number ...)is
begin
case p_request
when 'CREATE' then
insert
into ....
when 'SAVE' then
update .....
else
raise_application_error(-20001,'Unkown request');
end case;
end;
put that in a plsql reqion after submit
begin
manage_owm_system(p_request=>:REQUEST,p_dbid=>:P1_DBID .......);
end;
You need to create something similar , with out parameters, to populate the items when the pags loads.
Chris -
Hi
what is the functionality of cluster tables in payroll.
Rexhi,
For: u201CTwo Ways to Easily Access Payroll Information,u201D by Rehan Zaidi, senior SAP consultant, Siemens Pakistan. The author provides a detailed introduction of clusters, describes their structure, and explains the purpose that they serve in SAP HR.
Usage of Clusters Within HR
The HR module utilizes clusters for storing information in a variety of areas. Some of the tables available for storing data clusters are PCL1, PCL2, PCL3, PCL4, and PCL5, as shown in Table 1. Clusters provide numerous advantages. For instance, they are best for storing long texts and notes related to infotypes. The monthly payroll results and payroll directory of an employee are also stored in cluster form in table PCL2.
PCL1 TX Infotype texts
TE Travel expenses
TA General data for accounting of travel expenses
PCL2 ID Interface toolbox u2013 directory of interface results
ZL Time wage types and work schedule
RU Payroll results (US)
PCL3 TY Applicant data texts
AP Applicant actions
PCL4 P2 Log for RPCALX0 and RPTIME00
U1 Tax reporter forms for US
PCL5 PY Payroll data for personnel cost planning
CP Planning run data for personnel cost planning
STXL TX Notes related to infotypes
Table 1 HR tables that use clusters
All these tables have a predefined structure. The structure of one of these tables is shown in Figure 1.
Figure 1 Structure of table PCL1
The tables that store clusters have the following fields in common:
RELID u2013 This is a two-character field that identifies the cluster, e.g., TX, RX, etc.
SRTFD u2013 This field denotes the key passed by the application program while importing and exporting data stored in a particular cluster. This is similar to key fields for a database table that uniquely identify a record. Generally, the key is comprised of the fields mentioned between RELID and SRTF2 in the table definition. In the case of table PCLX , there is only one u2013 field SRTFD. However, in the case of table STXL, fields TDOBJECT, TDNAME, TDID, and TDSPRAS collectively make up the key.
SRTF2 u2013 This serves an additional or a duplicate key field. This field is utilized when the fields SRTFD and RELID alone are not sufficient for uniquely identifying a table record. If a record is more than one line long, then a new row is inserted with a different SRTF2. For the first (or the only) row, this field has a value of 0. If the cluster data corresponding to the same SRTFD value extends over multiple lines, new rows are inserted with an incremented value of SRTF2 such as 1, 2, 3 and so on. The system judges the size of data and the possible increment in the SRTF2 field value, so the developer need not worry about it.
CLUSTR u2013 This field shows the size (in bytes) of the data stored in a particular table row
CLUSTD u2013 This contains the actual data, for instance the infotype text, stored in compressed form
Storing data in the form of clusters lets you create logical partitions within one database table. A single table may be used for storing data from different functional areas. This relieves the developer from creating separate tables (and programming update functions) for data belonging to each application area. For example, PCL1 table comprises of clusters TX and TE for storing infotype text and data of travel expenses, respectively. A two-character ID in field RELID identifies each cluster. Via clusters, a single table may be used to store data (such as long text related to a variety of application areas) under a separate cluster ID with a single key value. Otherwise, this information (e.g., long text, internal tables, and flat data structures) would have to be stored in separate table. Data may be exported to and imported from the table via the usage of EXPORT and IMPORT statements, respectively. For more information about these two ABAP commands, refer to the SAP documentation (SAP Library>mySAP Technology Components>SAP Web Application Server>ABAP Programming and Runtime (BC-ABA)>The ABAP Programming Language>Saving Data Externally>Saving Data Objects as Clusters>Data Clusters in the Database).
Rupa Prasad -
Hi,
I am fetching data from BSEG table , by using for all entries . But it is taking long time. Is there any other to do it for tables like BSEG ( Cluster tables ). Please help me .
Regards,
PrasadHi Prasad
You could use hashed tables to
retrieve data from BSEG. That will be faster.
According to the analysis on how sap retrieves the data from a cluster table (like bseg),it's almost the same to use a
loop at ht_bkpf -> select from bseg ... endloop
or
select ... from bseg
for all entries in ht_bkpf where ....
Regards
Inder -
How to Extract Data for a Maintenance View, Structure and Cluster Table
I want to develop 3 Reports
1) in First Report
it consists only two Fields.
Table name : V_001_B
Field Name1: BUKRS
Table name : V_001_B
Field Name2: BUTXT
V_001_B is a Maintenance View
For this one I don't Find any Datasource
For this Maintenance View, How to Extract the Data.
2)
For the 2nd Report also it consists Two Fields
Table name : CSKSZ
Field Name1: KOSTL (cost center)
Table name : CSKSZ
Field Name2: KLTXT (Description)
CSKSZ is a Structure
For this one I don't Find any Datasource
For this Structure How to Extract the Data
3)
For the 3rd Report
in this Report all Fields are belonging to a Table BSEG
BSEG is a Cluster Table
For this one also I can't Find any Datasource,
I find very Few Objects in the Datasource.
For this One, How to Extract the Data.
Please provide me step by step procedure.
Thanks
PriyaHi sachin,
I don't get your point can you Explain me Briefly.
I have two Fields for the 1st Report
BUKRS
BUTXT
In the 2nd Report
KOSTL
KLTXT
If I use 0COSTCENTER_TEXT Data Source
I will get KOSTL Field only
what about KLTXT
Thanks
Priya -
How to get the data from a cluster table to BW
Dear All,
I want to extract the data from R/3 to BW by using 2 tables and one Cluster B2.
Actually my report contains some fields from PA2001, PA2002 and one cluster table B2 (Table ZES). Can I create View by using these 3 tables? If it is not possible how can I get the data from the cluster? Can I create generic datasource by using cluster tables directly?
In SE11 Transaction the Cluster (table ZES) is showing invalid table.
I referred some Forums, but no use.
Can any body tell me procedure to get the data from a cluster (table ZES) ?
Waiting for you results.
Thanks and regards
RajeshHI Siggi,
Thank you for your reply..
I am also planning to do FM to get the data. But it is saying that the Cluster table ZES does not exist (ZES is the the standard table, in SE11 also).
How can I use the Fields from the that table.?
What can I do now, can you please explain me about this point.
Waiting for your reply.
Thanks and Regards
Rajesh
Message was edited by:
rajesh -
About cluster table in sql server or SAP
Hello Gurus,
we have a cluster table "KONV" in our sql server 2008 , is that feature for cluster table native feature in sql server or in sap?
because some professonal said there is no concept for cluster table in sql server just like oracle database. so please help me for
clarification.
Many thanks,I agree, this is ABAP Dictionary specific way of data encapulation, not the DB type dependant one. Basically it stores the data in RAW or LRAW format.
Also be aware that we distinguish b/w [data clusters|http://help.sap.com/saphelp_nw04/helpdata/en/fc/eb3bf8358411d1829f0000e829fbfe/frameset.htm] and [cluster tables|http://help.sap.com/saphelp_nw04/helpdata/en/cf/21f083446011d189700000e8322d00/content.htm].
Regards
Marcin -
Edit next extent size of the Cluster table
Hi Guys
I need to change the next extent size of the a table.
I ran se14 but i am not able to get into edit mode, because there is no button for edit mode.
Reason: Cluster table
Two questions:
1. Why there is no Edit button? Is it because this table doesnot exixt at DB level.
2. How can i change the next extent size for a Cluster table from sql prompt or from brtools if possible.
Information:
I am facing this issue only in DEV, QAS boxes, where as in Production its fine.
Regards
Ricky
Edited by: Ricky kayshap on Dec 9, 2008 3:52 PMHi,
Cluster Tables doesn't exist in DB, Because of that you can't make changes to extents at DB level.
if you experiencing some space issue. I woud suggest to check the underline Transparent tables and make changes to those.
hope this helps.
Kalyan. -
How can I get data in flat file from Pool table and cluster table ?
Hi,
I am working in one Achiving project. My requirement is to get data into flat file from Cluster table and pool table.
Is there any tool avilable to download data into flat file from pool table and cluster table ?
if table name given in the selection screen then data will be downloaded into flat file.
waiting for quick response.
Best Regards,
BansidharData cannot be retrived directly form the cluster table
as the Cluster results are stored in Cluster Key say for example PCLkey
and form that Key we need to fetch the data
these clustes are not the part of PNP or PNPCE tables
for ur info kindly check -
hi all,
I am trying to create a view for the tables bkpg and bseg.but am unable to as the error is "bseg is cluster table".
can't we create view for cluster table. if can, howYou cannot create a view because BSEG is in a cluster table
For this reason SAP has provided some "secondary index" tables, look for :
BSAD Accounting: Secondary Index for Customers (Cleared Items)
BSAK Accounting: Secondary Index for Vendors (Cleared Items)
BSAS Accounting: Secondary Index for G/L Accounts (Cleared Items)
BSID Accounting: Secondary Index for Customers
BSIK Accounting: Secondary Index for Vendors
BSIM Secondary Index, Documents for Material
BSIS Accounting: Secondary Index for G/L Accounts
Regards -
How to check data in a cluster table?
Hello
I am new to BW and SDN.
I have to see data in a cluster table.
I went to SE11, selected data type as KOMV, it displayed table, but data content button is greyed out.
Can someone please tell me how to view the data?
Thanks
PriyaHi,
Thanks, I can see the data now.I am expecting that data should display in the 2LIS_VDKON extractor.There are two records for particular condition type.Item 10 and Item 20, but in RSA3, it is showing only one record for Item 20 and not showing for Item 10.
I have cleaned and filled the setup tables, but still no luck.
Can you please guide me, where else to look?
Thanks
Priya -
How to extract data from cluster table
Hi, experts,
Here I want to extract change documents, which is from tables CDHDR(header) and CDPOS(line items). The problem is that CDPOS is a cluster table so that I can't create a view to develop a generic data source.
I have search on the forum and some one said generic data source based on function module was a choice, but I think coding FM is so complex, especially including delta implementation.
Could any one give me some advice? or give me some coding samples?
Thanks a lot!Dear Sam,
I would suggest you to have a look at the function module CHANGEDOCUMENT_READ u2013 you can use this function module as a core in the developed function module for generic extractor. Unfortunately, the suggested function module can not handle import parameters for field names, so the strategy which can be applied here is to use this function module to fill the internal table based on restrictions on object class and table name and then go through filled internal table and delete records which are not relevant for fields KOFIZ or ABRSPERR.
As for delta implementation, would you please advise if delta relevant field based on timestamp generated on date and time of the change document is sufficient for your needs? If so then you can use fields UDATE and UTIME to generate timestamp on them including the field containing generated timestamp to the extract table. Next step here is to choose this field as delta relevant field in the Generic DataSource maintenance (TCode RSO2).
Please inform me if this solution suits you or if you have any questions or concerns regarding it.
My best regards,
Vadim -
How to read data from a CLUSTER STRUCTURE not cluster table.
Hi,
how to read data from a CLUSTER STRUCTURE not cluster table.
regards,
Usha.Hello,
A structre doesnt contain data.. so u cannot read from it. U need to find out table of that structure and read data from it.
Regards,
Mansi.
Maybe you are looking for
-
Passing of ResultSet to Stored Procedure(Oracle 8i) from Java
My requirement is such that I want to send a resultset to a stored procedure(In oracle8i). Through Java API's. The input parameter to the PLSQL is a ref cursor. I am trying to send the resultSet using CallableStatement of java but it is throwing an I
-
Hi buddy, can anybody help me out to know the full process of procurement and how GL,AP,& AR are integrated with eachother plz explain me elobrately with examples. Thanks & regards, GB prasad
-
I have Lenovo 3000 N200 0769 with problem in left hinge lcd , the number of it i think (41W5214) 15.4 lcd. lenove egypt (IBM) was told to me cost 100 $ but in Many sites (hinge) cost betwen 19 $ , 30$ , 80 $ i want to understand why there are a big d
-
Hi, Is it possible to give access in display for "everything" in CRM ? Does it exist a role or a profile like SAP_ALL but only in display ? which one ? Thanks for your help. Yves
-
INSANELY annoying CS4 timeline bug in Flash Presentation format
I've been using the Flash "presentation" format for three versions now, for doing very slide-like but animated training modules. Suddenly in CS4, there's a bug in the timeline where, no matter if the layer is locked or unlocked, frame 10 or 1000, an