Question about table compression

I administer several 10g databases, and have been asked to compress tables in several tablespaces. I am unfamiliar with using compression. I have read some Oracle documentation on the ALTER TABLE... MOVE COMPRESSION command, but still have several questions. Can anyone recommend a good white paper, or other documentation on how best to compress tables with existing data? Thank you in advance for your guidance!

Basically, I have questions about how to select which tables will benefit from compression. I also read somewhere that, once a table has been compressed, new updates to the compressed data will not be compressed and so I will need to re-compress the tables periodically.
I also needed to know if the ALTER TABLE statement will compress the existing data or just future inserted data. Through further research I found that by using the MOVE clause, it will compress the existing data. I will also need to rebuild the indexes once the ALTER TABLE statement is complete.
Thank you for your help and encouragement!

Similar Messages

  • Question about advance compression in Oracle 11gR2

    Hi,
    I am on Oracle 11gR2 on Solaris 10. I want to run the oracle advance compression advisor for my database and get compression ratios for the tables, how can I do it? I am looking for a sample command to run this advisor package (dbms_compression) from sqlplus.
    Can someone please suggest.
    Thanks,
    Nirav

    Thanks SriniChavali and Stefan. I can't make more answer "Helpful' so I couldn't do that for your answers! Here is my point. In Jonathan's blog i see this remarks:
    "Sadly it seems that “compress for OLTP” (formerly “compress for all operations”) doesn’t compress for all operations, it compresses only for inserts, and the benefits it has over basic compression are that (a) it leaves 10% of the block free for updates, and (b) it doesn’t require direct path inserts to trigger compression. Given the limitations on how it works you may find that the problems it brings might make it something you want to avoid.... this is at this link: http://allthingsoracle.com/compression-in-oracle-part-3-oltp-compression/
    To date I’ve only heard complaints about OLTP compression (there’s an element of self-selection there as no-one ever calls me to look at their system because it’s running so well and has no problems). A common thread in the complaints I have heard, though, is about the significant amount of row migration (once it has been noticed), the extra CPU, and ”buffer busy waits”.
    Compression for OLTP is (according to the manuals) supposed to be able to compress during updates – but it doesn’t (at least, as far as I can tell); this means that you can easily end up suffering a large number of row migrations on updates, which can result in extra random I/Os, buffer busy waits, and increased CPU and latch activity.
    If you can work out a good strategy for using OLTP compression, though, think carefully about making a choice between freelist management and ASSM – there seem to be some undesirable side effects that appear when you mix OLTP compression with ASSM."
    Note that I am not that technical and I hope I have not mis-quoted. I am trying to figure out if this is a good option or not and seeing some findings that it may not be so good and seeing at some other places notes that it is indeed very good.
    Best regards

  • Question about table DR$FND_LOBS_CTX$I

    All,
    I have questions about this table 'DR$FND_LOBS_CTX$I'
    1. What's the purpose of this table?
    2. Can we purge this table? How?
    3. Is there any harmful if purge this table?
    Thanks,
    Jackie

    I have questions about this table 'DR$FND_LOBS_CTX$I'
    1. What's the purpose of this table?There is no description about this table in MOS or eTRM -- http://etrm.oracle.com/pls/et1211d9/etrm_pnav.show_object?c_name=DR$FND_LOBS_CTX$I&c_owner=APPLSYS&c_type=TABLE
    You may also check the code in $FND_TOP/sql/aflobbld.sql
    2. Can we purge this table? How?
    3. Is there any harmful if purge this table?Please see these docs/links.
    FND_LOBS_CTX Is Having Huge Size, How To Reduce The Size Of The Index [ID 396803.1]
    http://oracle-apps-dba.blogspot.com/2008/07/how-to-enable-fndhelp-search-by.html
    If you could not find complete answers to your questions, I would suggest you log a SR.
    Thanks,
    Hussein

  • Simple question about table structure and HR in BW

    i need to following data from HR:
    current FTE, employee number, cost place
    i dont think the current FTE is stored per employee. Therefor is would need a list that contains:
    mutation start date, mutation end date, FTE, employee, cost place
    i think cost place is a custom field.
    my question : what tables names and field names do i need?
    Thanks in advanced

    Hi,
    For Head Count you can use 0HR_PA_0 datasource and the other Employee details like start date and end date you can get them from employee master data and FTE can be calculated from the Emloyee Master Data and Head count data.
    Hope this helps...
    Thanks,

  • Question about Table Locks

    Hi All,
    Is there any Oracle defined table/place from where we can know the details about Tables that have been locked in the current session?
    Thank you.

    Hi ,
    To know which all objects are locked, you can use the below query :-
    COLUMN owner FORMAT A20
    COLUMN username FORMAT A20
    COLUMN object_owner FORMAT A20
    COLUMN object_name FORMAT A30
    COLUMN locked_mode FORMAT A15
    SELECT b.session_id AS sid,
           NVL(b.oracle_username, '(oracle)') AS username,
           a.owner AS object_owner,
           a.object_name,
           Decode(b.locked_mode, 0, 'None',
                                 1, 'Null (NULL)',
                                 2, 'Row-S (SS)',
                                 3, 'Row-X (SX)',
                                 4, 'Share (S)',
                                 5, 'S/Row-X (SSX)',
                                 6, 'Exclusive (X)',
                                 b.locked_mode) locked_mode,
           b.os_user_name
    FROM   dba_objects a,
           v$locked_object b
    WHERE  a.object_id = b.object_id
    ORDER BY 1, 2, 3, 4;Anand

  • Questions about deploying compressed WAR

    I've been having issues when trying to deploy a compressed
    Flex application into my Weblogic Server. I read in the
    Installation Guide (
    http://www.adobe.com/support/documentation/en/flex/2/install.html)
    that you need to some "hacking" to make it work but i have a big
    question:
    The guide says:
    Locate the servlet definition for MessageBrokerServlet, and
    update the flex.write.path init-param element to specify an
    existing, writeable, directory path:
    <init-param>
    <param-name>flex.write.path</param-name>
    <param-value>C:/bea/flex</param-value>
    </init-param>
    I have no clue about this, i mean what is supposed to be in
    the path C:/bea/flex??? Can anyone explain what the
    "flex.write.path" means or referrers to?
    Diego

    I tried setting the write path to any folder like the example
    and i got this during the server startup:
    [Flex] [WARN] The watch-file,
    /WEB-INF/flex/services-config.xml, could not be resolved to a path
    and will be ignored.
    [Flex] [WARN] The watch-file, /WEB-INF/flex/proxy-config.xml,
    could not be resolved to a path and will be ignored.
    [Flex] [WARN] The watch-file,
    /WEB-INF/flex/remoting-config.xml, could not be resolved to a path
    and will be ignored.
    [Flex] [WARN] The watch-file,
    /WEB-INF/flex/messaging-config.xml, could not be resolved to a path
    and will be ignored.
    [Flex] [WARN] The watch-file,
    /WEB-INF/flex/data-management-config.xml, could not be resolved to
    a path and will be ignored.
    [Flex] [WARN] The touch-file, /WEB-INF/web.xml, could not be
    resolved to a path and will be ignored.
    And then when i tried to run the sample application CRM
    (which is included in the samples war when you install flex 2) i
    get this error:
    java.sql.SQLException: The url cannot be null
    so what's wrong?

  • Question about "RE-COMPRESSION" of mpeg 4 files

    First off this is a great forum. It has answered many questions. This is my first post.
    This is my workflow.
    1. I have a massive library of Betacam tapes that I am archiving ( over 2000) average length 45 minutes)
    2. I capture them from a betacam deck, thru a canopus adcvc 110, at SD, No problems.
    3. I wind up with media files that are like 15 gigs. I have over 40 terabytes of external storage, I use firewire 800 (so far, so good)
    4. I then take the media files, drag them to the timeline, edit etc, add graphics from motion etc
    5. I then simply play the timeline via firewire to a dv, video deck, and send the tape to the tv station, they closed caption it and it hits the air
    (so life is great, this works perfect)
    Here comes the question
    1. After having done that, I use the "send to compressor" function, to generate an mpeg 4 file, which instead of 12 gigs is like less than one, it looks great.
    2. This file is then uploaded to an ftp site, given a description, and then put on the website for viewing or purchase.
    3, since I have like 2000 tapes, do the math, if each one takes 12 gigs....lots of drives.
    4. Most tapes are NOT edited for television broadcast, I just find a good in and out point for a fade, compress it, shoot it to ftp and im done.
    5. Recently I have begun deleting the 12 gig files, sine I have the messages in mpeg 4...to avoud buying several petabytes of storge.
    SOOOO
    After all that, here is my question.
    If I want to edit a program that I have in the archive, that the decision has been made to broadcsat for some reason, If I drag the MPEG$ file onto the timeline, edit it from a 50 minute down to a 28:30, drop in green screen cut aways, grapics, lower thirds animated transitions between clips, titles, etc...
    Render it.
    THEN play it directly from the timeline via firewire to the mini dv deck...
    How much quality will I lose on the base video, which is mpeg 4, as compared to the 12 gig media file?
    Does it "re- compress" in some way?
    should I just suck it up and pay for storage for the 12 gig files that probably will never use for broadcast?
    or can I use an MPEG 4 file as my "main video" and not come out looking like an amature moron?
    Does any of that make sense? or is it TMI from an idiot?
    I come from the analoge days, D-3's and D-5's, grass valley 200 switcher, pinnacle dve's, 18 Ikegamis shooting NFL football. Betacams, D-1's, sattelite uplinks. all in good old NTSC 525...
    So bear with an old man.
    Any assistance would be great.
    Can I edit using an MPEG4 file and not get burned?
    Be well all.
    Michael D, Fodor.
    heritagechristiancenter.com
    San diego.
    cya stay out of the heat...

    You probably won't have a huge loss in quality-- as you say yourself, the MPEG4 looks pretty good for it's file size. I won't get into a debate about whether or not it's the best option for archival, that's another thread.
    But as long as you're editing in FCP (7), you'll want to convert it to something else before importing. ProRes is a pretty standard choice. Otherwise it'll be nothing but pain. You can still archive in MPEG-4, but for those that you pull from the archive to re-broadcast, recompress them to ProRes.

  • Question about Tables in iWeb

    Having read previous posts, I understand that tables can be made one of two ways for use in iWeb: (1) Create them in Pages or Keynote and paste them in or (2) create HTML code and use the HTML snippit widget.
    The problem I see with the first method is that the table, based upon my experimentation, are seen in iWeb as a graphic. So there's no real way to control something like print size, for instance.
    The problem with the second method is that an HTML snippit cannot be inserted within a textbox. So if a person's browser is rending text differently than I have set up a page in iWeb, text could potentially overlap the table.
    Therefore, to put a table in the middle of text, it would seem preferable to create the table in Pages or Keynote.
    So here's my question, assuming the above is correct--is there any way for a table pasted from Pages or Keynote to be treated as any other way than a graphic? I'm still concerned about text size in the graphic not matching text size on the page with all the various browsers and browser settings. I realize that this method won't create overlapping text, but it would seem that there's great potential for the table to not match the body text.

    I know that iWeb creates them in HTML. I am a little more familiar with web pages than what I my post probably let you believe. I guess what I was curious about was the way in which Apple archives the news and turns it into an RSS feed. I've tried playing around with Safari, and viewing other RSS feeds, but I have not come across a way to print multiple RSS feeds at once.
    I guess what I am trying to get around is printing all of the pages individually, since as you could imagine that would equate to a ton of paper since I would be working about 3-4 days per week x 32 weeks (8 months). So you are talking about 96-128 pages of entries.
    Could you recommend any shortcuts for trying to do what I am trying to do, even if it doesn't involve iWeb? (I do have access to another domain with PHP scripting and a mySQL database if you have suggestions)

  • Creating SAP QUERY - question about tables in buisness transactions.

    Hello.
    I am pretty new to SAP.
    I want to create a query, as i so far have successfully done by creating a join in transaction SQVI.
    I am useing several tables;
    CRMD_ORDERADM_H
    CRMD_ORDERADM_I
    CRMD_ORDER_INDEX
    I have two questions.
    1: I try to join CRMD_ORDER_INDEX-PARTNER_NO with BUT000-PARTNER, but it won't do the trick. After a join like this i would like to join BUT000 with ADRC . Can someone explain how i could do this?
    2: I want join CRMD_ORDERADM_I with all the partners for the specific Item. (sold-to-party, shipping-party and so on). Can anyone tell me which table(s) i can find this in, and what fields to join.
    I will appreciate any answer to this

    Hi,
    For the second question, enter your transaction number ( Object ID ) into <b>CRMD_ORDERADM_H</b>  table. Pass the guid to table <b>CRMD_LINK.</b>
    Take set guid from CRMD_LINK and pass it to <b>CRMD_PARTNER</b>.
    You will get all the partners in that transaction
    regards,
    Prashant
    <b>Kindly Reward the points if helpful !</b>

  • Question about table partitioning...

    Hello, all.  I'm using SQL 2012 Enterprise.  I have 8 very large tables (the largest two having 227M and 118M records, and the others between 11M-44M records).  For performance reasons, I'm considering partitioning the tables across multiple
    files/filegroups.  For my largest table (227M records), the data is spread across years 2011, 2012, and 2013 with 2013 having 104M records.  So naturally I'm considering partitioning on a Date column.  My question is should I go with four partitions
    (2011, 2012, 2013 and 2014 for new data) and still end up with a very large aggregation of data on the 2013 partition (104M) or should I further breakdown the 2013 partition into months now having 12 partitions for 2013 alone, and then I'm OK with all
    of 2011 and 2012 on their own partitions.  Again, this is for one table.  I'd still like to partition the other 7 large tables.  In the end, I could end up with many, many partitions and hence many, many filegroups.  I'm interested in how
    others partition MULTIPLE large tables.  Can you share partition functions/schemes across tables?
    Any thoughts, your own personal experiences, etc would be greatly appreciated.  Also, can someone recommend a good book, article, blog, etc on partitioning large databases.
    Thanks much in advance.
    Roz

    If you query against more than one partition I have doubts  you will gain performance...
    -- Create partition functions
    CREATE PARTITION FUNCTION PF1(INT) AS RANGE RIGHT FOR VALUES (1, 2, 3);
    CREATE PARTITION FUNCTION PF2(INT) AS RANGE RIGHT FOR VALUES (1, 2);
    -- Create filegroups
    ALTER DATABASE testdb ADD FILEGROUP FG7;
    ALTER DATABASE testdb ADD FILEGROUP FG6;
    ALTER DATABASE testdb ADD FILEGROUP FG5;
    ALTER DATABASE testdb ADD FILEGROUP FG4;
    ALTER DATABASE testdb ADD FILEGROUP FG3;
    ALTER DATABASE testdb ADD FILEGROUP FG2;
    ALTER DATABASE testdb ADD FILEGROUP FG1;
    -- Create partition schemes
    CREATE PARTITION SCHEME PS1 AS PARTITION PF1
    TO (FG1, FG2, FG3, FG4);
    CREATE PARTITION SCHEME PS2 AS PARTITION PF2
    TO (FG5, FG6, FG7);
    CREATE VIEW [dbo].[partition_info] 
    AS
    SELECT
    DB_NAME() AS 'DatabaseName'
    ,OBJECT_NAME(p.OBJECT_ID) AS 'TableName'
    ,p.index_id AS 'IndexId'
    ,CASE
    WHEN p.index_id = 0 THEN 'HEAP'
    ELSE i.name
    END AS 'IndexName'
    ,p.partition_number AS 'PartitionNumber'
    ,prv_left.value AS 'LowerBoundary'
    ,prv_right.value AS 'UpperBoundary'
    ,ps.name as PartitionScheme
    ,pf.name as PartitionFunction
    ,CASE
    WHEN fg.name IS NULL THEN ds.name
    ELSE fg.name
    END AS 'FileGroupName'
    ,CAST(p.used_page_count * 0.0078125 AS NUMERIC(18,2)) AS 'UsedPages_MB'
    ,CAST(p.in_row_data_page_count * 0.0078125 AS NUMERIC(18,2)) AS 'DataPages_MB'
    ,CAST(p.reserved_page_count * 0.0078125 AS NUMERIC(18,2)) AS 'ReservedPages_MB'
    ,CASE
    WHEN p.index_id IN (0,1) THEN p.row_count
    ELSE 0
    END AS 'RowCount'
    ,CASE
    WHEN p.index_id IN (0,1) THEN 'data'
    ELSE 'index'
    END 'Type'
    FROM sys.dm_db_partition_stats p
    INNER JOIN sys.indexes i
    ON i.OBJECT_ID = p.OBJECT_ID AND i.index_id = p.index_id
    INNER JOIN sys.data_spaces ds
    ON ds.data_space_id = i.data_space_id
    LEFT OUTER JOIN sys.partition_schemes ps
    ON ps.data_space_id = i.data_space_id
    LEFT OUTER JOIN sys.partition_functions pf
    ON ps.function_id = pf.function_id
    LEFT OUTER JOIN sys.destination_data_spaces dds
    ON dds.partition_scheme_id = ps.data_space_id
    AND dds.destination_id = p.partition_number
    LEFT OUTER JOIN sys.filegroups fg
    ON fg.data_space_id = dds.data_space_id
    LEFT OUTER JOIN sys.partition_range_values prv_right
    ON prv_right.function_id = ps.function_id
    AND prv_right.boundary_id = p.partition_number
    LEFT OUTER JOIN sys.partition_range_values prv_left
    ON prv_left.function_id = ps.function_id
    AND prv_left.boundary_id = p.partition_number - 1
    WHERE
    OBJECTPROPERTY(p.OBJECT_ID, 'ISMSSHipped') = 0
    AND p.index_id IN (0,1)
    GO
    Best Regards,Uri Dimant SQL Server MVP,
    http://sqlblog.com/blogs/uri_dimant/
    MS SQL optimization: MS SQL Development and Optimization
    MS SQL Consulting:
    Large scale of database and data cleansing
    Remote DBA Services:
    Improves MS SQL Database Performance
    SQL Server Integration Services:
    Business Intelligence

  • Question about table strucuture

    Hello Gurus,
           I have following two questions:
        (1) how can I know what is the key field for a table ?
        (2) in SE80, when I display the structure of a table, there are component type and data type , why does here have two different types? ( apparently, there values are differenct)
    thanks very much!

    Hi,
        1) Go to t.code 'SE11'
            enter the table name and display.
             there the key checkbox is enabled.this the primary key field.
            If the checkbox is not enabled then it is a non key field.
      2) In structure,
             Component type refers the data element.
              Datatype refers type of the field that is wheather it is char,int etc.,
    Thank u,
    Manjula Devi.D

  • Question About Table Style Terminology

    I am curious about what other people might call the following two styles of table construction.
    Style 1:
    create table cust_trans_a (
        cust_nbr                varchar2(6),
        trans_date             date,
        sales                      number(11, 2)
    Style 2:
    create table cust_trans_2 (
        cust_nbr                varchar2(6),
        sales_in_2004,
        sales_in_2005,
        sales_in_2006,
        sales_in_2007   
    );I have been using the terms vertical and horizontal respectively for these two construction styles, but I would like to know if other DB professionals have another, more descriptive set of terms for them.
    Thanks,
    Gregory

    How about normalized and denormalized?
    Generally, denormalized data models (Style 2) are a pain to deal with because you're constantly having to add columns (i.e. you'll eventually want to store 2008 sales) and because you have to maintain the same information in both summary and detail tables. In Oracle, if you think you need a denormalized table, you're generally better off creating a materialized view instead.
    Justin

  • Question about table COEP

    Hi SAP Expert and Guru,
    Currently I am gathering the Invoice Document Number from Project ID and below is my table flow.
    Project ID/ WBS is being inserted to table PRPS-PSPHI,
    Then the Object Number from PRPS-OBJNR is being captured and being used in table COEP-OBJNR to derive the value in COEP-BELNR.
    Later the value in COEP-BELNR is being used in table COBK-BELNR to derive the invoice number in COBK-REFBN.
    My question now is, is there any other table that we can use to replace table COEP, in order to get the Object Number OBJNR linked up with the Document Number BELNR which can be used in table COBK to derive the Invoice Number.
    Kindly Advise and consult.
    Thank you
    Regards
    Leonard Tan

    Why dont you try to use the OBJNR from PRPS and use it in the COFP table?
    I think you should be able to get the details you are looking for.
    Let us know if it helps.

  • Question about Tables:  Urgent

    Hi, I'm trying to create a table inside BW.  The objective is to create this table so that an Oracle Administrator can "Push" or "drop" data into this table in BW.  I'm currently using 2004s, so I am having quite a hard time....  What are the sequence of steps required in creating this table with the end goal of activating it so that it can be "seen" and used...  How do I activate the table?  Do I need to generate a datasource for this?  If I do, what are the sequence of steps that I need to do for this?  Much thanks....
    - Beleaguered B.I.

    Philips:
    A. Assuming that I have successfully created a table in B.I. 7, how will I check to
    ensure that the table that I just created exists in the system? What are the
    sequence of steps to doing this check? Will the administrator on the Oracle
    side (see original question) be able to "see" this table?
    When you activate the table, go to transaction Se16 and put your tablename and press f8, if the table is not active, you will get a mesage. This is a initial check.
    When you create a transparant table in SAP, SAP creates automatically created a table in the database underlying. Thats why it is called transparent table.
    YES. youur administrator can see the table with a SQL statement desc TABLE in the database layer.
    B. Assuming that I successfully created a DataSource, how can i check to ensure
    that the DataSource is indeed active and is in the System? What are the
    sequence of steps to achieving this?
    The last step in creating data source is to save / generate. Once generated, you can see the data source in RSA3. Run RSA3 and give the data source name and press f8, you will see the result.,
    C. Is there a particular methodology or standard as to how I should create a table?
    Can you point me out to a documentation or link to a "HOW TO" in creating
    tables? Where exactly in the BI 7 system are the tables store.
    To create a table you need something called developer key which is a long string of numbers. Check with your basis administrators and they will generate the key for you.
    Once you have this, decide the structure of your table and we will take it from there.
    Ravi Thothadri

  • CS2......Questions about tables

    Can you choose to delete the rows or colums you want for a table you've made in In Design or by default, it will delete the bottom ones and the one at your right.
    I know I can do it in Quark, but I'm thinking about leaving quark for In Design and I have a lot of table to redo....it's a catalogue.
    Thanks for youy help!

    Of course you can, and if you've got alternating rows and fills, the
    table will automatically adjust.
    Just select the row and right click. From the contextual menu choose
    delete > row.
    Bob

Maybe you are looking for

  • What to do with a broken Bluetooth keyboard?

    I have an Apple Bluetooth keyboard with non-working keys: Tab, Caps Lock, left Shift, Q, W, E, R, and T. All the others work fine, and I can successfully pair it with my PowerBook. I took it apart to investigate and confirmed what I had suspected: So

  • .mp3 to .wav conversion

    Hi All Genius I want to convert .mp3 files into .wav files. Is it possible if yes then how? Will anybody help me out? regards, Anil R

  • Watermarks and web galleries

    When done editing my pictures, I've been exporting them to a folder on the desktop (so I can place a watermark on the pictures) and them importing the pictures into iWeb. Is there a way of importing the watermarked pictures directly into a web galler

  • IPhone 4 receiving e-mail, but not sending.

    So i posted another topic in the 3G S forum because i was having issues with iOS 4 on the iPhone 3G S - it was not able to send or receive e-mail and all settings were intact and left unchanged - everything worked prior to iOS 4. Now, i have the new

  • Jaxws async sample

    howdy, I'm in the process of installing and configuring wsdp 2.0 and I ran into the following issue when trying to build the async sample under jaxws. ant server produces taskdef class com.sun.tools.ws.ant.Apt cannot be found Has anyone run into this