Allowing the movement line temporarily on partitioned table
Hello
Using oracle 11.2.0.3 and have tables that are hash of composite range partitioned.
We need to update the dates of theses for a small percentage of records 1 < %.
Normally we have movement line enabled so that can copy the lines in the temporary table, update insert_table, remove lines concerned living table and replace them with the new dates of the partition.
Another option allowing possibly temporariliy movement line.
Thoughts?
Thank you
Is there any disadvanatges to allowing it for example from performance perspective.
Haerd was a bad iade of have it activated - perhaps isn't so bad.
Tom Kyte meets ALL these questions (and more) in this blog:
https://asktom.Oracle.com/pls/asktom/f?p=100:11:0:P11_QUESTION_ID:35203106066718
If never actually cause you a row to move, then there is zero overhead. All the movmement of line enable does is give us permission to move a line, if you do not ask us to move the line - extra "nothing happens.
. . .Follow-up Friday, March 10, 2009-02:00 UTC:
Is there something wrong? Only you can answer that you have any application that expects the rowid is constant for a line? If yes - then it is false, if not - then it's probably OK.
Any overload? No, it's just allowed to change a rowid if you perform an operation that would have caused a rowid to change - alter table t shrink compact space, flashback table t to..., update t set partition_key = some_value_that_moves_row;
You can change a table instantly to activate circulation line - whatever the size of the table - it'll be instant - you have no need to do advance if you don't want, fairly easy to add later...
I recommend you to read the ENTIRE blog because there are many other issues that should relieve your concerns and good examples.
As says this quote above if you have an application that expects the ROWID is constant for a line, then you might have a problem.
ROWID is the way the FASTER to search for a line. Sometimes the ETL process are complex and multiple operations on a line by multiple, separate steps.
You can often get huge performance gains in saving the values ROWID lines collections or tables of work/temp during ETL processing. For example, a query in PL/SQL can use ' RETURN ROWID IN... "to get all of the ROWID that affects the query.
This set of ROWID can be used in the following queries to locate the exact lines directly without the need of ALL indexes or other search criteria: WHERE ROWID IN...
If the ROWID has changed during the process, it would be disastrous if these processes are written in:
1. Enter the current setting of moving the line
2. turn off the movement of the line during the process
3 re-enable line movement ONLY if it has been activated prior to the start of the process
Tags: Database
Similar Questions
-
allow the movement of the line
Hi all;
What is the reason to allow the movement of the line before running the FLASHBACK TABLE operation ?
to accomplish the Flashback and the database Point-in-time recovery
Movement of the line must be activated on the table, which indicates that the ROWID will change after the return of flame occurs.
This restriction exists because if ROWID until flame is stored by the application, then there is no guarantee that the ROWID will correspond to the same lines after the return of flame. If your application depends on ROWID, then you cannot use Flashback Table.
HTH,
Thierry
-
How to move the lob segment in a partitioned table
My Oracle 11.2, I have a partitioned table that I want to switch to a different tablespace
After invoking the script, there are still inside for the insensitive lob segment table
How to move this lob segment in a partitioned table?CREATE TABLE BONGO.AAA_3 ( ID NUMBER, DATUM DATE, OBJEKAT BLOB ) TABLESPACE BONGODATA_HUGE PCTUSED 40 PCTFREE 10 INITRANS 1 MAXTRANS 255 LOGGING PARTITION BY RANGE (DATUM) ( PARTITION P_MAXVALUE VALUES LESS THAN (MAXVALUE) LOGGING NOCOMPRESS TABLESPACE BONGODATA_HUGE LOB (OBJEKAT) STORE AS ( TABLESPACE BONGODATA ENABLE STORAGE IN ROW CHUNK 8192 RETENTION NOCACHE STORAGE ( INITIAL 64K NEXT 1M MINEXTENTS 1 MAXEXTENTS UNLIMITED PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT ) ) PCTUSED 40 PCTFREE 10 INITRANS 1 MAXTRANS 255 STORAGE ( INITIAL 64K NEXT 1M MINEXTENTS 1 MAXEXTENTS UNLIMITED FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT ) ) NOCOMPRESS NOCACHE NOPARALLEL MONITORING;
or, is there a package for data move in storage?
concerningALTER TABLE current_table MOVE PARTITION nom_partition
TABLESPACE destination_table_space
LOB (column_name) STORE AS (TABLESPACE current_tablespace); -
Hi all
We use JDeveloper Studio Edition Version 12.1.3.0.0 and deployed on GlassFish Server Open Source Edition 3.1.2.2 (build 5) and connect to the SQLServer database.
We created a table ADF programming related to a SortableModel created programmatically to a bean.
We need to select and highlight the first row in the table just after making it to retrieve data based on the first line.
We tried the based on the following thread: How to call the bean support just after JSFF / page fragment loads? and a few other posts online, but it does not work very well.
W has created a hidden text in the bottom of the JSF model as follows:
< af:table varStatus = "rowStat" Summary = "table" value = "#{pageFlowScope.crudBean.dynamicTable.collectionModel} '"
Rows = "#{pageFlowScope.crudBean.dynamicTable.collectionModel.RowCount} '"
contentDelivery = 'immediate' var = 'row' rendered = 'true '.
Binding = "#{backingBeanScope.crudBackingBean.tasksTable} '"
selectionListener = "#{backingBeanScope.crudBackingBean.customListener} '"
"rowSelection ="single"id ="t1"partialTriggers =": pt_gr2 "columnStretching =" column: clmn0 ">
< af:forEach items = "#{pageFlowScope.crudBean.dynamicTable.columnNames}" var = 'name' varStatus 'vs' = > "
< af:column sortable = "true" sortProperty rowHeader = "#{name}" = "no style" headerText = "#{pageFlowScope.crudBean.dynamicTable.columnLabel [name]}" "
inlineStyle = "width: 100px;" ID = "clmn$ {vs.index}" >
< af:activeOutputText value = "#{row [name]}" id = "aot1" / >
< / af:column >
< / af:forEach >
< / af:table >
....
< af:outputText id = "hiddenOutputTextId" visible = "false" value = "#{backingBeanScope.crudBackingBean.afterPageLoad} '"
Binding="#{backingBeanScope.crudBackingBean.hiddenOutputText}"/ >
And we have added the code to the bean to support below:
public String getAfterPageLoad() {}
If (!.) {AdfFacesContext.getCurrentInstance () .isPostback ()}
selectFirstRowInTasksTable();
}
Return afterPageLoad;
}
public void selectFirstRowInTasksTable() {}
try {}
RKS RowKeySet = new RowKeySetImpl();
RowKeySet rksEmpty = new RowKeySetImpl();
Model CollectionModel = tasksTable.getValue ((CollectionModel));
ROWCOUNT int = model.getRowCount ();
If (rowcount > 0) {}
model.setRowIndex (0);
Key of the object = model.getRowKey ();
RKS. Add (Key);
tasksTable.setSelectedRowKeys (rks);
SelectionEvent selectEvent =
new SelectionEvent (tasksTable.getSelectedRowKeys (), rks, tasksTable);
selectEvent.queue ();
customListener (selectEvent); / / to retrieve data
AdfFacesContext.getCurrentInstance () .addPartialTarget (tasksTable);
}
} catch (Exception e) {}
}
}
I think that () selectEvent.queue; should work even without calling the customerListener, but it is not working in all cases.
What is the problem in my code?
Have you tried to bind property of 'selectedRowKeys' to selection configuration / bean there?
Something like:
public RowKeySet getSelectedRKS() { if (rks == null) { // make first record as selected // create RowKeySet and assign it to rks variable(where rks is variable defined in bean with some scope higher than request scope) } return rks; }
Dario
-
Need to retrieve the last line/record in a table
Hello
I have a requirement like getting the ending balance of the last record in the table and the same insertion in the opening balance of the immediatetly created the next record.
In simple terms, I need to extract a value from the last line of the recording.
For example, I use the query below
Select rownum emp, empno, ename
where rownum = (select count (rownum) from emp);
But, the above query does not return all of the recording.
Therefore, need help on this.
Kind regards
Shivakumar has
Published by: shiva March 27, 2011 22:14Hello
Strictly speaking there is no such LAST or FIRST folder until that order you them.
But check the following:SELECT * FROM emp MINUS SELECT * FROM emp WHERE rownum<=(SELECT count(empno)-1 FROM emp);
Kind regards
Lakshmi. -
Highlight on the selected line disappear when af:table lose focus?
Hello
I have a strange problem:
I have an af:table select single line based on the VO and an af:inputText in a jsf page.
When I select a row in the table, then click on in the inputText at the entrance, the highlight on the selected line in the table disappear!
The currently selected line is always a controlled beans, but it seems that it is not that any line is selected in the user interface.
Is this a bug of af: table?
My test page:
< af:form id = "f1" >
< af:panelGroupLayout id = "pgl1" layout = "scroll" >
< af:table value = "#{bindings." Var ViewObj1.collectionModel}"="row ".
lines = ' #{bindings. " ViewObj1.rangeSize}.
emptyText = "#{bindings." ViewObj1.viewable? "{'No data to display.': 'Access Denied.'}".
fetchSize = "#{bindings." ViewObj1.rangeSize}.
rowBandingInterval = '0 '.
selectedRowKeys = ' #{bindings. " ViewObj1.collectionModel.selectedRow}.
selectionListener = "#{bindings." ViewObj1.collectionModel.makeCurrent}.
rowSelection = "single" id = "t1" >
< af:column sortProperty = "EmpDeptid" sortable = "false".
headerText = "#{bindings." ViewObj1.hints.EmpDeptid.label}.
ID = "c8" >
< af:outputText value = "#{rank." EmpDeptid}"id ="ot3">
< af:convertNumber groupingUsed = "false".
model = ' #{bindings. " ViewObj1.hints.EmpDeptid.format}"/ >
< / af:outputText >
< / af:column >
< af:column sortProperty = "EmpHireDate" sortable = "false".
headerText = "#{bindings." ViewObj1.hints.EmpHireDate.label}.
ID = 'c4' >
< af:outputText value = "#{rank." EmpHireDate}"id ="ot7">
< af:convertDateTime pattern = "#{bindings." ViewObj1.hints.EmpHireDate.format}"/ >
< / af:outputText >
< / af:column >
< af:column sortProperty = "EmpId" sortable = "false".
headerText = "#{bindings." ViewObj1.hints.EmpId.label}.
ID = "c7" >
< af:outputText value = "#{rank." EmpId}"id ="ot6"/ >
< / af:column >
< af:column sortProperty = "EmpJob" sortable = "false".
headerText = "#{bindings." ViewObj1.hints.EmpJob.label}.
ID = "c1" >
< af:outputText value = "#{rank." EmpJob}"id ="ot1"/ >
< / af:column >
< af:column sortProperty = "EmpLineid" sortable = "false".
headerText = "#{bindings." ViewObj1.hints.EmpLineid.label}.
ID = "c5" >
< af:outputText value = "#{rank." EmpLineid}"id ="ot4">
< af:convertNumber groupingUsed = "false".
model = ' #{bindings. " ViewObj1.hints.EmpLineid.format}"/ >
< / af:outputText >
< / af:column >
< af:column sortProperty = "EmpSex" sortable = "false".
headerText = "#{bindings." ViewObj1.hints.EmpSex.label}.
ID = "c6" >
< af:outputText value = "#{rank." EmpSex}"id ="ot2"/ >
< / af:column >
< / af:table >
< af:panelFormLayout id = "pfl1" >
< f: facet = 'footer' name / >
< af:inputText label = "Label 1" id = "it1" / >
< / af:panelFormLayout >
< / af:panelGroupLayout >
< / af:form >
Thank you
660Hello
This seems an expected behavior of the skin of the merger.
The selected line inactive thoroughly clear yellow that is hard to recognize on some screens.solution:
create a custom look (extend the skin of 'fusion') and create css, like this:
AF | : the table-row data: selected: inactive af | : given the column cell.
AF | : the table-row data: selected: inactive af | column: banded-data-cell
{
background-color: blue;
}concerning
PeterPublished by: hofespet on November 6, 2010 12:45
-
Hello
In EPMA, is there an equivalent of "Allow moves" construction of Dimension load rules?
It always creates shared members. I use Interfact Tables and version 9.3.1
Thank youHello
You may consider to select 'replace' option "merge". Therotically he must rebuild the dimension based on the structure given in the tables of the interface.See you soon,.
Alp -
Protect a document while allowing the insertion of data in a table and the points on a graph.
I created a Word document that contains a table and a chart. Can I protect document but allow data entry in the table and allow points appear in the table using Adobe?
Hi brianh89327665,
While you can apply a permissions password to a PDF file to prevent things such as printing and editing the document, you can not apply it selectively to parts of the PDF file.
Best,
Sara
-
Adding cells of the footer line of an object table
I'm trying to the sum of the values of a column and the display in the footer row but no success, it. Any advice?
I tried to add the lines individually "cell2 [0] + cell2 [1] + cell2 [2]" and I tried adding the "sum(cell2[*])".
Here is the updated file...
https://Acrobat.com/#d=czb6OFGhZF5eJXYHKy0QjQ
The changes I made were...
(1) renamed all the lines so they all have the same name "Row1".
(2) in the case of calculate it, I changed the code a little so it looks like this.
sum (Table2.Row1 [*]. Cell4);
Let me know if you have any questions...
Thank you
Srini
-
Table of Flashback and the movement of the line!
Hello Experts,
I have a doubt in the next box.
Movement of the line must be activated for all tables to be able to use the Flashback table feature unless you are flashing back the table
TO
BEFORE
DROP
. According to my understanding, you can not enable Row movement for a table that is not partitioned. This finish not FLASHBACK table with activated line movement, you can and you can't activate a movement row for a table that is not partitioned. So, how can I use FLASHBACK table to NOT partitioned table function?Please see the error message when I tried to enable ROW movement for a non-partitioned table below.
SQL error: ORA-14066: illegal option for a not partitioned index organized table
14066 00000 - "illegal option for a table held in index unpartitioned.
* Cause: An attempt was made to issue a CREATE or ALTER TABLE
command on an unpartitioned ITO, but the order contains a
option that is legal only for partitioned tables organized by index.
These options are: ENABLE ROW MOVEMENT and DISABLE ROW.
Thank you
No - your question is about FLASHBACK and IOT.
So, how can I use FLASHBACK table to NOT partitioned table function?
I have already posted the link to doc as telss you that you cannot enable row movement for a not partitioned IOT.
View sample data for this table (in the form of INSERT statements) and queries, DML and FLASHBACK that you try to use this table that is a failure.
-
Disable LOGGING for partition table based on the automatic INTERVAL
Hello
I created a database table of paritioned range interval with NOLOGGING as the default attribute for the table as well as the tablespace definition.
When ORACLE automatically creates a new partition for this table, it activates the LOGGING for this automatic partition even if the table definition says anything else.
How can I go about changing this behavior? Is it still possible?
FYI my platform is 11 GR 1 (11.1.0.7) material on SUN SOLARIS 10 SPARC.
Any help will be appreciated.Right, so refer to a new feature of Oracle 11 g partitioning called 'partitioning interval. "
+"+
+ The interval partitioning: A new strategy of partitioning in Oracle Database 11g, +.
+ Interval partitioning extends the functionality of the method range to define equipartitioned +.
+ ranges using a definition of the interval. Rather than specify individual +.
+ going to explicitly, Oracle will create any partition automatically as needed.
+ every time the data of a partition are inserted for the first time. Interval +.
+ a lot of partitioning improves maneuverability of a partitioned table. For +.
example, + a partitioned table interval could be set so that Oracle creates a +.
+ new partition for each month in a calendar year; a partition is then automatically +.
+ created for "September 2007" as soon as the first record in this month is inserted.
+ in the database. +
+ The techniques available for a partitioned table interval are interval, interval-+.
+ List, range-Hash, and interval range. +
+"+In order to disable interval partitioning on the transactions table, use: ALTER TABLE transactions SET INTERVAL ();
http://download.Oracle.com/docs/CD/B28359_01/server.111/b32024/part_admin.htm
Disable partitioning interval on this table, create a procedure to run every day we'll say, to create a new partition and chop the old partition of the appropriate table. I presume that the automatic partitioning interval creates the partition with the logging by default option without checking the parameters in the table. I have seen no information on this in the Oracle documentation.
Hope that helps.
Ogan
-
Local primary key on reference partitioned Table
Oracle running on Red Hat Linux Rel6 11.2.0.3.
I'm on a closed network, so the following must be typed manually.
I have a table of documents which is essentially the following:
(entire annual <-primary key)
whole Source_ID,
load_dt date,
date of doc_dt,
doc_info clob,
...)
which is partitioned on column source_id.
I created a partitioned table of reference as follows:
create table doc_entities_prt)
whole doc_entity_id
all annual,
whole entity_id,
forced doc_ent_fk (annual) references to documents (annual)
tablespace...
allow the movement of the line
benchmark score (doc_ent_fk);
The annual column in the child table is not unique. The doc_entity_id column is unique. I want to set the primary key on doc_entities_prt as a local index on the doc_entity_id column. I was not able to find the proper syntax to get there, and now I'm wondering if this is even possible? Any ideas appreciated.
Oops, I missed part that you want to base the PK of this index. No, it is not possible and has nothing to do with the partitoning reference. A unique index can be partitioned only if it includes a partitioning column. You can create a non-unique without partitioning column partitioned index, but then you can't create PK supported by such an index for the same reason - oracle would not be able to verify uniquenes based on this index partition and controls of the cross-partition are not supported:
SQL > create table documents)
2 whole annual,
3 whole source_id,
load_dt date 4.
date of doc_dt 5.
6 doc_info clob
7 )
8 partition by range (source_id)
9 (
10 partition p1 values less than (10),
11 partition p2 values less than (100)
12)
13.Table created.
SQL > create index unique documents_pk
2 on documents (annual)
(3) local
partition 4 p1,
5 partition p2
6 )
7.
on documents (annual)
*
ERROR on line 2:
ORA-14039: partitioning columns must be a subset of the columns of a unique key
indexSQL > create index documents_pk
2 on documents (annual)
(3) local
partition 4 p1,
5 partition p2
6 )
7.The index is created.
SQL > alter table documents
2 Add the constraint documents_pk
3 key (annual) elementary school
4 using index documents_pk
5.
change the documents table
*
ERROR on line 1:
ORA-14196: specified Index cannot be used to apply the constraint.SQL >
SY.
-
Converts the ref cursor effect of function table
I have a function named fn_get_emp(), whose return type is sys_refcursor. When I select fn_get_emp of double; I get the output to the format of the cursor. I want to convert to the table like format so that I can use in my insert statements insert into foo select * from fn_get_emp();
Please note that the columns in the output of the fn_get_emp() is not fixed.
Published by: user10566312 on January 30, 2012 22:25Here are the steps in the package DBMS_SQL, you need to turn your Ref Cursor a cursor DBMS_SQL.
http://docs.Oracle.com/CD/E11882_01/AppDev.112/e25788/d_sql.htm#CHDJDGDG
and then the rest of the documentation of the DBMS_SQL package gives many examples of how to treat this a cursor dbms_sql.
Here is an example to use the package dbms_sql to process a request and produce some projection of sql and the database is in the query to CSV file...
As user sys:
CREATE OR REPLACE DIRECTORY TEST_DIR AS '\tmp\myfiles' / GRANT READ, WRITE ON DIRECTORY TEST_DIR TO myuser /
As myuser:
CREATE OR REPLACE PROCEDURE run_query(p_sql IN VARCHAR2 ,p_dir IN VARCHAR2 ,p_header_file IN VARCHAR2 ,p_data_file IN VARCHAR2 := NULL) IS v_finaltxt VARCHAR2(4000); v_v_val VARCHAR2(4000); v_n_val NUMBER; v_d_val DATE; v_ret NUMBER; c NUMBER; d NUMBER; col_cnt INTEGER; f BOOLEAN; rec_tab DBMS_SQL.DESC_TAB; col_num NUMBER; v_fh UTL_FILE.FILE_TYPE; v_samefile BOOLEAN := (NVL(p_data_file,p_header_file) = p_header_file); BEGIN c := DBMS_SQL.OPEN_CURSOR; DBMS_SQL.PARSE(c, p_sql, DBMS_SQL.NATIVE); d := DBMS_SQL.EXECUTE(c); DBMS_SQL.DESCRIBE_COLUMNS(c, col_cnt, rec_tab); FOR j in 1..col_cnt LOOP CASE rec_tab(j).col_type WHEN 1 THEN DBMS_SQL.DEFINE_COLUMN(c,j,v_v_val,2000); WHEN 2 THEN DBMS_SQL.DEFINE_COLUMN(c,j,v_n_val); WHEN 12 THEN DBMS_SQL.DEFINE_COLUMN(c,j,v_d_val); ELSE DBMS_SQL.DEFINE_COLUMN(c,j,v_v_val,2000); END CASE; END LOOP; -- This part outputs the HEADER v_fh := UTL_FILE.FOPEN(upper(p_dir),p_header_file,'w',32767); FOR j in 1..col_cnt LOOP v_finaltxt := ltrim(v_finaltxt||','||lower(rec_tab(j).col_name),','); END LOOP; -- DBMS_OUTPUT.PUT_LINE(v_finaltxt); UTL_FILE.PUT_LINE(v_fh, v_finaltxt); IF NOT v_samefile THEN UTL_FILE.FCLOSE(v_fh); END IF; -- -- This part outputs the DATA IF NOT v_samefile THEN v_fh := UTL_FILE.FOPEN(upper(p_dir),p_data_file,'w',32767); END IF; LOOP v_ret := DBMS_SQL.FETCH_ROWS(c); EXIT WHEN v_ret = 0; v_finaltxt := NULL; FOR j in 1..col_cnt LOOP CASE rec_tab(j).col_type WHEN 1 THEN DBMS_SQL.COLUMN_VALUE(c,j,v_v_val); v_finaltxt := ltrim(v_finaltxt||',"'||v_v_val||'"',','); WHEN 2 THEN DBMS_SQL.COLUMN_VALUE(c,j,v_n_val); v_finaltxt := ltrim(v_finaltxt||','||v_n_val,','); WHEN 12 THEN DBMS_SQL.COLUMN_VALUE(c,j,v_d_val); v_finaltxt := ltrim(v_finaltxt||','||to_char(v_d_val,'DD/MM/YYYY HH24:MI:SS'),','); ELSE v_finaltxt := ltrim(v_finaltxt||',"'||v_v_val||'"',','); END CASE; END LOOP; -- DBMS_OUTPUT.PUT_LINE(v_finaltxt); UTL_FILE.PUT_LINE(v_fh, v_finaltxt); END LOOP; UTL_FILE.FCLOSE(v_fh); DBMS_SQL.CLOSE_CURSOR(c); END;
This allows the header line and the data to write into files separate if necessary.
for example
SQL> exec run_query('select * from emp','TEST_DIR','output.txt'); PL/SQL procedure successfully completed.
Output.txt file contains:
empno,ename,job,mgr,hiredate,sal,comm,deptno 7369,"SMITH","CLERK",7902,17/12/1980 00:00:00,800,,20 7499,"ALLEN","SALESMAN",7698,20/02/1981 00:00:00,1600,300,30 7521,"WARD","SALESMAN",7698,22/02/1981 00:00:00,1250,500,30 7566,"JONES","MANAGER",7839,02/04/1981 00:00:00,2975,,20 7654,"MARTIN","SALESMAN",7698,28/09/1981 00:00:00,1250,1400,30 7698,"BLAKE","MANAGER",7839,01/05/1981 00:00:00,2850,,30 7782,"CLARK","MANAGER",7839,09/06/1981 00:00:00,2450,,10 7788,"SCOTT","ANALYST",7566,19/04/1987 00:00:00,3000,,20 7839,"KING","PRESIDENT",,17/11/1981 00:00:00,5000,,10 7844,"TURNER","SALESMAN",7698,08/09/1981 00:00:00,1500,0,30 7876,"ADAMS","CLERK",7788,23/05/1987 00:00:00,1100,,20 7900,"JAMES","CLERK",7698,03/12/1981 00:00:00,950,,30 7902,"FORD","ANALYST",7566,03/12/1981 00:00:00,3000,,20 7934,"MILLER","CLERK",7782,23/01/1982 00:00:00,1300,,10
The procedure allows for the header and the data to separate files if necessary. Just by specifying the file name "header" will put the header and the data in a single file.
Adapt to the exit of styles and different types of data are needed.
-
Collection of statistics on partitioned and non-partitioned tables
Hi all
My DB is 11.1
I find that the collection of statistics on partitioned tables are really slow.
I used the following script:TABLE_NAME NUM_ROWS BLOCKS SAMPLE_SIZE LAST_ANALYZED PARTITIONED COMPRESSION ------------------------------ ---------- ---------- ----------- ------------- ----------- ----------- O_FCT_BP1 112123170 843140 11212317 8/30/2011 3:5 NO DISABLED LEON_123456 112096060 521984 11209606 8/30/2011 4:2 NO ENABLED O_FCT 115170000 486556 115170 8/29/2011 6:3 YES SQL> SELECT COUNT(*) FROM user_tab_subpartitions 2 WHERE table_name =O_FCT' 3 ; COUNT(*) ---------- 112
It costs 2 minutes for the first two tables to gather statistics respectively, but more than 10 minutes for the partitioned table.BEGIN DBMS_STATS.GATHER_TABLE_STATS(ownname => user, tabname => O_FCT', method_opt => 'for all columns size auto', degree => 4, estimate_percent =>10, granularity => 'ALL', cascade => false); END; /
Time of collection of statistics represents a large part of the time of the whole lot.
Most of the work of the lot are at full load, which case all partitions and subpartitions will be affected and we cannot collect just specified partitions.
Does anyone have experiences on this subject? Thank you very much.
Best regards
Leon
Published by: user12064076 on August 30, 2011 01:45Hi Leon
Why don't collect you statistics to the partition level? If your data partitions will not change after a day (score range date for ex), you can simply do to the partition level
GRANULARITY-online 'SCORE' for partition level and
GRANULARITY-online 'SUBPARTITION' for subpartition levelYou collect global stats whenever you can not require.
Published by: user12035575 on August 30, 2011 01:50
-
A few reasons why we should allow no movement of the row of a table?
I'm curious to know if there is a reason why we should not allow movement row for a given table request?
A lot of features like the return of flame, etc. requires movement line is activated?
are there specific situations that we should not do. I talk about this in general, but if you ask for the specific oracle version, it is oracle 11.2.0.3
THX
Delphine
It seems that Jonathan Lewis is interested also:
Maybe you are looking for
-
If anyone had any problems please let me know.
-
Retrieve a number contact name
Hello. Given a phone number, I want to search the telephone directory and retrieve contact corresponding to the number in order to get the names of the contacts. I found many examples of how to get a contact based on their names, but I don't know whe
-
BlackBerry Smartphones BB Storm
While I was reading on the BB site, he says that the storm comes with DataViz. My does not have it. How to do it?
-
When I use a sequence of nest in the source Panel and try to insert a clip in the timeline, the video and audio are not related. Before this update (2015.1), I did not have this problem.
-
Is - this HP Advsior s/w advises to update the drivers?
Hello I think that I had installed the driver for my device that was not compatible, so let me HP Advsisor tips for updating the pilot/s?