much bigger table after compression?

I got a partitioned table and want to compress it in basic mode. For each partition, I alter table move partition compress, statistics calculated and the number of blocks after that compression is much larger than before compression. Why is this? Here's the code I'm running for my test. I would appreciate an explanation, I was expecting smaller. Is this what I misread it or neglected? Oracle 11.2.0.4.0

Thank you

create table x hash partition (col) (x 1 partition, partition x 2, x 3 partition, partition x 4) as

Select level double collar connect by level < = 100000;

Start

DBMS_STATS.gather_table_stats ('oracle', 'x', level = > 4);

end;

Select table_name, sum (blocks)

of user_tab_partitions

where table_name in ('X')

Table_name group;

TABLE-NAMESUM (BLOCKS)
X385

ALTER table move partition x 1 x compress 4 Parallels;

ALTER table move partition x 2 x compress 4 Parallels;

ALTER table move partition x 3 x compress 4 Parallels;

ALTER table move partition x 4 x compress 4 Parallels;

Start

DBMS_STATS.gather_table_stats ('oracle', 'x', level = > 4);

end;

Select table_name, sum (blocks)

of user_tab_partitions

where table_name in ('X')

Table_name group;

TABLE-NAMESUM (BLOCKS)
X16384

It is because in ways parallel each slave thinks he is alone and wastes space.  For an example of figure it out, see Autoallocate and PX | Notebook of the Oracle

Edit: I was looking for this one: PX and the allocation system. Notebook of the Oracle

Tags: Database

Similar Questions

  • Analyze tables after creating indexes

    Hi all

    I created new clues on the production environment, we must analyze tables after creating indexes. Why and what analysis do?

    Thanks for the help.
    Select * from V$version;
    
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
    PL/SQL Release 10.2.0.4.0 - Production
    "CORE     10.2.0.4.0     Production"
    TNS for HPUX: Version 10.2.0.4.0 - Production
    NLSRTL Version 10.2.0.4.0 - Production

    There are so many different options and you'll certainly want to tweak your stats based on your system.
    The best thing to do is to read about dbms_stats:
    http://download.Oracle.com/docs/CD/B19306_01/server.102/b14211/stats.htm#PFGRF30102
    http://download.Oracle.com/docs/CD/B19306_01/AppDev.102/b14258/d_stats.htm#CIHEHDFB

    Here are a few examples to give you an idea of what they look like and how to perform:

    BEGIN
      DBMS_STATS.GATHER_TABLE_STATS(OWNNAME          => 'schema_name',
                                    TABNAME          => 'table_name',
                                    ESTIMATE_PERCENT => DBMS_STATS.AUTO_SAMPLE_SIZE, --> For really big tables oracle can just do a specific percent
                                    METHOD_OPT       => 'for all columns size 1', --> Defines Histograms, size one disables histograms
                                    DEGREE           => 12, --> The degree of parallelism so you'll see 12 parallel threads gathering stats
                                    CASCADE          => TRUE); --> gather stats on the table's indexes also
    END; 
    
    BEGIN
      DBMS_STATS.GATHER_INDEX_STATS(OWNNAME          => 'schema_name',
                                    INDNAME          => 'index_name',
                                    ESTIMATE_PERCENT => 50,
                                    DEGREE           => 4);
    END; 
    

    You can also do

    DBMS_STATS.gather_schema_stats
    DBMS_STATS.gather_database_stats

    and much more...

    I really want to focus on the need to do your homework on them,
    read the docs I linked and adjust your statistical parameters to fit your db objects and how they are accessed/used.
    Having accurate and meaningful statistics are very important to the performance of the database.

  • How to recover lost e-mails (partial) after compressing files

    I use windows XP sps, three days ago, I made an oulook express process of compressiom files, after that a windows command prompt I was asked to do.

    Unfortunately, some of the emails (Jan. 2011 - August 2011) was found missing in outmail storage file, after the file compression. I think they were

    automatically removed during the compression of files. Although I found a backup (master) folder in the trash, I still can not return emails lost after running

    recovery in the trash. Can someone help me recover lost emails?

    For your information: until the compression of files - outmail storage folder size is approx. 1.2 GB / after compression: 827 MB

    Thank you

    OE does not compress.  It compact, which means that it removes the space in the file.  This should be done regularly, otherwise it will be too fat and become corrupted, what happened to you.

    See point 2 here: www.oehelp.com/OETips.aspx#2 and you can try to manually import the file bak (just give it another name - see www.oehelp.com/backup.aspx#wm).  If this does not help, then my DBXpress program (www.oehelp.com/DBXpress/) may be able to recover lost messages.

    Steve

  • How to recover email files lost after compressing files

    I am using windows XP sp3, two days ago, I performed an outlook express file compression process, after only a quick jump

    and asked me to do. Unfortunately, a part of the e-mail files (year 2011) were found missing in the outmail storage box after file compression.

    I think that they were deleted automatically during file compression. Although I found a backup file in the trash, I can't yet recover

    the e-mails lost after recovery.

    For your information: before compressing files - size storage box outmail - abt, 1.2 GB / after compression 827 MB

    MY mailbox: * address email is removed from the privacy *

    It is a common problem with OE because if we let the dbx files grow beyond a few hundred megabytes, they are subject to corruption.  You should do an immediate backup of your messages in the event of further loss.  So, if you have bak files in the trash or in the message store directory, you can try to recover them.

    For references, see points 2, 3, 4 and 6 here: www.oehelp.com/OETips.aspx#2 and import the bak files see here: www.oehelp.com/backup.aspx#imp1 and if you were unable to recover what was lost, then see here: www.oehelp.com/DBXpress/ the latter is able to scan the entire drive for messages and bypassing the file system and if something can get back them It can.

    Steve

  • Analyze the table after loading

    Hi gurus

    Let me know how we analyze the target table after loading to finish using an interface.

    Concerning
    Sree

    Hi Mary,

    There are two ways to do it,

    1. customize your IKM own target of Analyze table step added.

    2. create a procedure of ODI which will analyze the target table and can be called after the success of the loading data.

    Thank you
    Guru

  • HOWTO updating table after closing a popup

    With the help of JDev 11.1.1.3

    I have a table and a popup. The table is filled with chronogram a datacontrol.
    The popup has a form indicating the details of the selected record in the table. I also use this popup to create new records.

    I have problems when you press the 'OK' button in the dialog box. The record is saved in the database, a commit is executed but my table does not show the new record. I need to press F5 before recording.
    I tried to set a partialTrigger at the table of the popup, but it does not work.

    This is the dialogEvent code:
        public void enqueteListener(oracle.adf.view.rich.event.DialogEvent dialogEvent) {
           if(dialogEvent.getOutcome() != DialogEvent.Outcome.no) {
             BindingContainer bindings =  BindingContext.getCurrent().getCurrentBindingsEntry();
             OperationBinding operationBinding = bindings.getOperationBinding("Commit");
             operationBinding.execute();
             
             operationBinding = bindings.getOperationBinding("Execute");
             operationBinding.execute();
           }
           else {
             BindingContainer bindings =  BindingContext.getCurrent().getCurrentBindingsEntry();
             OperationBinding operationBinding = bindings.getOperationBinding("Rollback");
             operationBinding.execute();
           }
        }
    As you can see that the commit is executed and after that I run the Execute to refresh the table, but it doesn't seem to work...

    How can I get that I have is more useless to press F5 if the record show upward directly in the table after click on the OK button in the pop-up?

    You add partial trigger to the table in your code. If your table is related to an attribute in the bean you can add

    RequestContext.getCurrentInstance().addPartialTarget(getTable());
    

    where getTable() returns the component "richeTableau". If you do not link the table to the bean, you can search the tree of components for the id of the table to get the part.

    Timo

  • What is the best way to refresh the table after autosubmit (10.1.3.4)

    What is the best way to refresh the table after autosubmit?

    I have a page that contains a table where if one of the fields is changed it autosubmitted where the view object changes some attributes, based on the field having been changed. I need these modified attributes that appear in the table. But without doing anything, the only way to see these values is to cause the iterator updated table.

    I've been refreshing the table is having a method in a grain of beacking called "getSystemSettingIter.getCurrentRow ();". This seems to be a bit of a hack for me and I was wondering if there is a better way to get the table to update.

    Thanks in advance!

    Have you tried setting between the two partial page refresh?
    http://www.Oracle.com/pls/as111120/lookup?ID=ADFUI385

    http://download.Oracle.com/docs/CD/E15523_01/Web.1111/b31974/web_form.htm#CACEIEEI

  • PPR for the updating of the table after a click in a butto in Jdeveloper 10.1.3 - thanks

    Hi people,

    I looked through many messages about refreshing the page, but still did not solve my problem. Please help me. It's quite URGENT.

    I have a table with a command button. After you click the data insertion is engaged and the table is supposed to be updated to reflect the changes.

    Now I use PPR as my solution: the button is the initiator and the table is the target. I put the button property: part delivery = true and its id as a partial release of the table value

    What I missed, please?

    Note: reloading of the entire page is not a solution for me. (The table is incorporated within a region of showOneTab and there are other tables in different tabs)

    Thanks in advance!

    Assuming that nothing wrong with the JavaScript syntax, the explanation might be: If you ActionListener Installer (data transaction method) and javaScript on a button-click the button, the button click javaScript will not be executed. (???)

    This is not the case. In my application, the two actions of script and java onclick button are executed. Javascript onclick fires first, then the action of the button. It should be the same for actionlistener as well.

    Regarding the updating of the table after a click of a button inside the table, you can do this by forcing the partial relaxation of the table of a bean to support using addPartialTarget.

    On the actionListener to the button call the below the backup method of bean.

    Here is the code example:

        public void btnSample_actionListener(ActionEvent actionEvent) {
           // First execute the method on the button
           BindingContainer bindings = getBindings();
            OperationBinding operationBinding = bindings.getOperationBinding("buttonMethod");
            Object result = operationBinding.execute();
    
            //Refresh the iterator of table and partial trigger the table
            OperationBinding operationBindingTab =
                bindings.getOperationBinding("RefreshTable");
            Object resultTab = operationBindingTab.execute();
            AdfFacesContext.getCurrentInstance().addPartialTarget(myTable);
    

    RefreshTable is an action that runs the Execute method on the table iterator.

    Thank you
    Mitesh.

  • erase a table after test

    Hi all

    I've just been busy with a vi and have developed a way to test between two bays and the missing numbers in the first table from the second of output. I take these numbers of two lists in separate text files. These lists are placed in tables and then compared against each other. Dealing with the im problem is that, after a Labview execution, it stores the values of the last time and place on top of the previous next, and therefore the tables get bigger and bigger and bigger. I need the berries to run once, clear and then be able to run again that gives new results. The difficulty is all the time will change the text of a code to outside files, and the output array must keep up-to-date with entry tables. This is my code so far.

    Thank you very much

    Jingles

    Looks like you have a couple of things going on that are causing the trouble.

    First of all. These nodes of feedback - they are "globally initialized' default right-click on initializer see Terminal and write them an empty array (Alternatively replace with shift register and initialize empty.

    In the second place. You can avoid the two loops and replace them with a table size, multiply the elements of the array and reshape the table

    This is a PNG of two "bugs".

  • Reduce of hwm after compression advanced on EBS R12

    Hello.

    How can I reduce the size of the tablespace after apply advanced option compression without moving tables, it is possible to do it in the same table space?

    I hope this is normal?

    2740161 wrote:

    Hello.

    How can I reduce the size of the tablespace after apply advanced option compression without moving tables, it is possible to do it in the same table space?

    I hope this is normal?

    It depends on.

    If objects reside in the block just below the HWM, then you cannot "reduce" the tablespace.

  • Tables after migration

    Hello
    in tools of 8.49 on Win 2003 server, I migrated/copied RECDB to PRDDB a project by using the application designer.
    There are some files in project. Then connection to PRDDB in application designer I rebuilt/created the audit tables recreate the tables even if they contain data option. This means that the paintings were dropped. But after that when I ask PRDDB tables, I see them with the structure before migration (in fact, I added two new columns, but they are not in PRDDB) and the new columns are not present.
    What should I do to have the new columns in PRDDB for tables?

    Thank you very much.

    Hello:

    It seems that you have chosen 'Script Build file' (which is checked by default) instead of "script Execute and build" on the dialog box create in application designer. If you chose the second option, check the build log / SQL Build log file to see if any errors were encountered. In your case, it would be preferable to use Alter table instead of the option create a tables.

    Thank you
    Sameer.

  • Missing messages in OUtlook Express after compression

    Dear Brian,
     
    Nice day
     
    Help, please!
     
    I have a problem with Microsoft Outlook 6, I'm on a windows xp professional SP3.
     
    What has happened is only a pop window up asked me to compress old files, I said yes and it took a long time to compress, I got bored and press cancil, is the result: half the files of othe my express email outlook are empty xompletely, all emails in them have disappeared. It is a professional computer and emails were accumilating for years, they are very important to me.
     
    I wanted to ask this question on the page of microsoft, but for some reason any, that he would not believe that I am connected and it ask me to connect.
     
    Please, please help me, its really important and I'm desperate :((

    It would be very nice of you to respond to my email * address email is removed from the privacy *, as I'm naïve, how to be notified or find your answer, and I stopped using hotmail almost 7 years ago: S

    I know that I'm you disturbing too, but I'm hopeful that you are kind enough to try to help me. Thank you very much!

    Who is Brian?

    Two reasons the most common for what you describe is disruption of the compacting process, (never touch anything until it's finished), or bloated folders. More about that below.

    Why OE insists on compacting folders when I close it? :
    http://www.insideoe.com/FAQs/why.htm#compact
     
    Why mail disappears:
    http://www.insideoe.com/problems/bugs.htm#mailgone
     
    About file Corruption:
    http://www.Microsoft.com/Windows/IE/community/columns/filecorruption.mspx

    Recovery methods:

    If you use XP/SP2 or SP3, and are fully patched, then you should have a backup of your dbx files in the Recycle Bin (or possibly the message store), copied as bak files.

    To restore a folder bak on the message store folder, first find the location of the message store.

    Tools | Options | Maintenance | Store folder will reveal the location of your Outlook Express files. Note the location and navigate on it in Explorer Windows or, copy and paste in start | Run.

    In Windows XP, the .dbx files are by default marked as hidden. To view these files in the Solution Explorer, you must enable Show hidden files and folders under start | Control Panel | Folder options | View.

    Close OE and in Windows Explorer, click on the dbx to the file missing or empty file, then drag it to the desktop. It can be deleted later once you have successfully restored the bak file. Minimize the message store.

    Open OE and, if the folder is missing, create a folder with the * exact * same name as the bak file you want to restore but without the .bak. For example: If the file is Saved.bak, the new folder should be named saved. Open the new folder, and then close OE. If the folder is there, but just empty, continue to the next step.

    First of all, check if there is a bak file already in the message. If there is, and you have removed the dbx file, go ahead and rename it in dbx.

    If it is not already in the message, open the trash and do a right-click on the file bak for the folder in question and click on restore. Open the message store up and replace the .bak by .dbx file extension. Close the message store and open OE. Messages must be in the folder.

    If messages are restored successfully, you can go ahead and delete the old dbx file that you moved to the desktop.
     
    If you have not then bak copies of your dbx files in the Recycle Bin:

    DBXpress run in extract disc Mode is the best chance to recover messages:
    http://www.oehelp.com/DBXpress/default.aspx

    And see:
    http://www.oehelp.com/OETips.aspx#4

    A general warning to help avoid this in the future:

    Do not archive mail in default OE folders. They finally are damaged. Create your own folders defined by the user for mail storage and move your mail to them. Empty the deleted items folder regularly. Keep user created folders under 300 MB, and also empty as is possible to default folders.

    Disable analysis in your e-mail anti-virus program. It is a redundant layer of protection that devours the CPUs, slows down sending and receiving and causes a multitude of problems such as time-outs, account setting changes and has even been responsible for the loss of messages. Your up-to-date A / V program will continue to protect you sufficiently. For more information, see:
    http://www.oehelp.com/OETips.aspx#3

    And backup often.

    Outlook Express Quick Backup (OEQB Freeware)
    http://www.oehelp.com/OEBackup/default.aspx

  • Updating of the table after insert shows empty cells

    Hello experts,

    I'm trying to insert some custom values of certain fields in a table displayed on my page. The table comes a VO based entity with a sequence number and a few constraints.

    The sequence numbers batteries managed automatically by the database.

    The entry fields are related to a bean managed to get the value with 'GetValue' and then I create a string for the entry. The string then gets cut in the VO as some attributes with the following SQL calculation example:

    REGEXP_SUBSTR (attribut3, "[^,] +' 1, 5")

    But it is on the ViewObject/database layer.

    After I call the method of the VO Impl to create the new line like this:

    Managed bean:

    OperationBinding operationBinding = bindings.getOperationBinding ("addRow");

    operationBinding.getParamsMap () .put ("Value1", someInt);

    operationBinding.getParamsMap () .put ("Value2", someIntToo);

    operationBinding.getParamsMap () .put ("Value3", someString);

    operationBinding.execute ();


    Impl VO:


    ' public void addRow (integer value1, value2 Integer, String value3) {}


    ViewObject vo = this;

    NewRow row = vo.createRow ();


    newRow.setAttribute ("attribut1", value1);

    newRow.setAttribute ("attribut2", value2);

    newRow.setAttribute ("attribut3", value3);


    vo.insertRow (newRow);

    this.getDBTransaction () .commit ();

    }

    I capture without exception again, but when I place everything correctly and trigger the code bean managed via a button action, the table shows the new line with the correct integers, but the channel cut in two by the calculation of SQL from the top shows only blank cells. After that research with the filter of the table and remove the search filter once again, the strings appear correctly.

    For example, after you insert:

    table1.PNG

    Then, after 'refreshment' with the filter:

    table2.PNG

    What can I do about it? I can't really put the data through the InsertWithParams, because I need build the string with the Java Code.

    It only does not show data after insertion, PartialTrigger (s) also will not work.

    You must re-run the sql query after validation (with: vo.executeQuery ())

    Dario

  • How to refresh the table after changing model

    12.1.3 JDEV

    My Table of the ADF is limited to a list of dataRows in my SampleDataModel class.

    My button is limited to a method of createDataRow of SampleDataModel class.

    Then click the button, a new item is added to the list of dataRows.

    There is a partial trigger button on the table.

    I expect after the button clicked, the table is updated with the newly added row.

    But what I see is: new dataRow is added to the list of dataRows and the flashes of the table, but it does not show the line.

    Anything I missed? Thank you.

    < af:toolbar id = 't3' >

    < af:button actionListener = "#{bindings.createDataRow.execute}" = "createDataRow" text "

    Disabled = "#{!}" Bindings.createDataRow.Enabled}"id ="b7"partialSubmit ="true"/ >

    < / af:toolbar >

    < af:table value = "#{bindings.dataRows.collectionModel}" var = 'row' "

    Rows = "#{Bindings.DataRows.rangeSize} '"

    emptyText = "#{bindings.dataRows.viewable?" "{'No data to display.': 'Access Denied.'}".

    rowBandingInterval = '0 '.

    selectedRowKeys = "#{bindings.dataRows.collectionModel.selectedRow} '"

    selectionListener = "#{bindings.dataRows.collectionModel.makeCurrent} '"

    rowSelection = 'unique' fetchSize = "#{bindings.dataRows.rangeSize}" id = "t1" "

    "partialTriggers =": b7 "editingMode ="clickToEdit">

    How you have implemented the createDataRow method to add the line?

    A table using an iterator in the pagedef, you have updated this iterator?

    Timo

  • ODI 12 c: do I have to reimport the target tables after that I did some clues on them

    Hello

    I created a map after import target tables in my ODI 12 C studio. The mapping is complete and it works without any errors. Now I intend to create some clues that I have an obligation to report. SO, I have to reimport these after creating indexes.

    Thank you

    SM

    Hello

    Here's the thing. The indexes that you created, if you plan to use as a unique index, or as your key to updating ODI you can go ahead and add the template manually in or hit the table again. However, if these indices are purely to make your report more quickly and will have no impact on you data loading then it is pointless to ODI. In the future when you make changes to the table and refresh it in ODI indexes will be added automatically.

    Thank you

    Ajay

Maybe you are looking for