Deleting huge records with parallel option in a non-partitioned table

Hi all

Is it possible to run delete statement with sub query that removes millions of records in a table that is not partitioned with parallel option?

SQL > Alter session enable parallel query.

SQL > Alter session enable parallel dml.

SQL > alter table table_A parallel 5;

SQL > delete the table_A where colA = "zzzz";

SQL > commit;

SQL > alter table table_A noparallel;

Please advice,

Thanks in advance.

user7280060 wrote:
Hi all

Is it possible to run delete statement with sub query that removes millions of records in a table that is not partitioned with parallel option?

SQL > Alter session enable parallel query.

SQL > Alter session enable parallel dml.

SQL > alter table table_A parallel 5;

SQL > delete the table_A where colA = "zzzz";

SQL > commit;

SQL > alter table table_A noparallel;

Please advice,

Thanks in advance.

Yes

Tags: Database

Similar Questions

  • AutoConfig with parallel option introduced in what version of R12?

    Hi all

    Could someone please share on the topic:

    AutoConfig with parallel option introduced in what version of R12?


    On further research, please note the following, which has been highlighted in EBS 12.1.x news as well:

    1. automatic configuration with parallel option in 12.1.1

    A. the link below so points out:

    http://docs.Oracle.com/CD/E18727_01/ doc.121 /e12841/T120505T120514.htm

    AutoConfig running in parallel

    Introduced in version 12.1, the parallel mode allows to AutoConfig to simultaneously run multiple nodes of a system of Oracle E-Business Suite. When running in parallel mode, AutoConfig uses the dbms_locks PL/SQL package to ensure that the configuration of a node does not interfere with the configuration of other nodes: this is necessary because some automatic configuration of a node service configurations depend on the configuration of the other nodes.

    B.R12.1 has the interesting feature that you can run the automatic configuration in parallel in the environment of multi node. Exit R12.1 content CD contains this information.
    https://MetaLink.Oracle.com/MetaLink/PLSQL/docs/EBS_R12.1_RCD_ATG_PreRelease.PDF

    It is to raise awareness among the Group of the same points mentioned in versions 12.0.4,12.0.6 and 12.1.1 about-> AutoConfig running in parallel

    The above points are contradictory in nature so!

    Could someone please clarify!

    Thank you and best regards,

    Salvation;

    As you mention is not so clear.

    I found this:
    http://onlineappsdba.com/index.php/2010/04/15/reduce-AutoConfig-downtime-parallel-run-Profiler/

    You always dupt its best to confirm this information with the companion of support. Please increase sr

    Respect of
    HELIOS

  • With parallel option swap partition

    Hi all

    I do a swap with parallel option partition, but his giving is not not an option valid.

    ALTER TABLE table_1
    P_name SWAP PARTITION
    WITH TABLE table_2
    WITHOUT VALIDATION
    PARALLEL (level 12);

    ERROR on line 5:
    ORA-14094: invalid ALTER TABLE EXCHANGE PARTITION option

    Please advice.

    Thank you and best regards,
    Rakesh

    Published by: user12003321 on March 5, 2010 17:43

    This means that we cannot run with parallel option swap partition when we do not include the index of update?

    FIX!

    cannot use PARALLEL with EXCHANGE

  • Inactive workers in IMPDP with parallel option

    Hello gurus,

    I took an export datapump to a partitioned table 29GB with the following parameters and was extremely quick (< 10 minutes):

    parallel = 4
    = 500MB file size
    Directory = PUMP_DIR
    estimate statistics =
    dumpfile=exp%U.dmp
    REUSE_DUMPFILES = y
    logfile = export.log
    tables = user1.t1

    Export product 4 parallel workers who were active all the time, so why the high speed.

    However when I tried to take an import datapump on the same database on an empty table (different schema), the performance was very poor (55 minutes):

    parallel = 4
    Directory = PUMP_DIR
    dumpfile=exp%U.dmp
    logfile = Import.log
    tables = user1.t1
    remap_schema = user1:user2
    TABLE_EXISTS_ACTION = add

    I noticed that parallel workers have been slowed down all the time (not applicable the degree of parallelism, I used) and importation of all was serialized.

    Can someone give me an idea why parallel workers were slowed during the IMPDP?


    [r00tb0x | http://www.r00tb0x.com]

    You see, I'll assume that you do a single importation of the data, or at the very least, your tables already exist and you import partitioned tables. If that's true, then you hit a situation that we know. Here's what happens:

    This is true for tables partitioned and sous-partitionnee and only if the Data Pump task that loads the data have not also created the table. The last part of the previous sentence is what makes this real. If you run a Data Pump task that simply creates the tables, and then run another task import which loads the data, even when they come from the same dumpfile, you will hit this situation. The situation is:

    When the task Data Pump that load data into a table partitioned or sous-partitionnée has not created the table, and then Data Pump cannot be sure
    the partitioning key is the same. For this reason, when loading the Data Pump data, it comes out a table lock and it blocks any other parallel to load in this table workers. If the task Data Pump created the table, then only a lock partition or subpartition is underwritten and other workers are free to subscribe locks on different partitions/subpartitions in the same table.

    I suppose that you see, is that all workers are trying to load data into the same table, but different partitions and workers holds the table lock. This may block other workers.

    There is a 'fix' for this, but there is a minimum difficulty. Data pump sill cannot load into several partitions, remember to remove the table lock, but instead, only 1 partitoin/subpartitoin will be set to 1. You will not see the parallel max used in these cases, but you will not see other workers waiting for an exclusive lock on the same table.

    I do not remember the number of patch and I do not remember what version it went in, but Oracle Support should be able to help with that.

    If the same Data Pump task creates the tables, or if these tables are not partitioned/sous-partitionnée, then I have not heard of this issue.

    Thank you

    Dean

  • Parallel queries on non partitioned tables

    I'm using the 11g database.

    I have a table that is partitioned on column a flag (Y and N), as of now all of the values of this column is Y, while values exist on the one parition while the other partition is empty.

    We use the NAS with RAID storage. If the content of the files is distributed on disks. In this case the parallel requests will be of no use. We use 2 quad core processors, so I guess that according to oracle documentation that parallelism can be set to 16 (8 cores * 2 (slaves for each carrot)).

    My question is since the table isn't actually paritioned parallelism will be of no use here?
    Because the data is distributed parallel slaves will be able to access content from multiple disks at the same time without expectations?

    Published by: souad on November 26, 2009 13:44

    Oracle is not clear how many disks is underlying file system.

    Parallelism can be used even on a single disc, even if the table is not partitioned. That is to say, there is no prohibition or internal control prevents you specify parallelism as a hint or a table / index attribute.
    However, if it will be useful really depends on many factors:
    a. how well the e/s flow performs
    (b) the effects of the other sessions at the same time do I/O
    c. the number of blocks that really needs to be read
    d. If you have enough CPU cores and cycles to manage parallelism
    etc.

    Hemant K Collette

  • deletion of records with data from junk e-mail

    Hi all

    I have UNWANTED data in columns like. E¿¿¿.¿¿¿.@,nulls,special charecters,

    in delete statement wat should we indicate where clause?

    one you suggest no regular exp... to remove all data other than valid numbers or charectrs of a to Z...

    The problem then is white space, which will not be replaced. So just take the Karthick_Arp solution and add trim():

    length(trim(regexp_replace(col_name,'[[:alnum:]]',null))) > 0
    

    Published by: tk-7381344, November 18, 2008 07:48

  • Insert, Update, Delete on a partition table not even at a time

    Hello
    I have a non-partitioned table on which inserts, updates and deletes come at the same time due to which I am facing problem of contention.
    What would be the ideal solutions to solve my problem (deletion conflict.)

    Thank you
    Badin

    Can you give us more details on the "problem of contention"? This could mean a very large number of different things.

    You have different sessions simultaneously update the same row in the table, for example? If so, you probably need to look at the architecture of the application to avoid multiple sessions to the same line at the same time setting, or you would need to look at the data model to avoid multiple sessions to update the same line at the same time setting.

    But there could be dozens of other kinds of claim that you could talk.

    Justin

  • 10.1.2 iMovie crashes while editing. Failed attempts to re - open. Open with the option key down key allows you to delete the preferences but contains a relative error incompatible graphics card will then appear.  With the help of El Capitan

    iMovie 10.1.2 falls down during editing of a film, usually by doing something like adding a title or a transition.  Failed attempts to restart.  Try to reboot with the option key + command allow you to remove preferences.  Then either receive an error indicating that the graphics card is incompatible or the application block requiring a force quite.  Restart or stop the iMac translates the suspended system requiring a manual stop holding down the Start button.  Restart in Safe Mode and then the normal startup will allow iMovie to load.  But after a few minutes of work with the program, it crashes and scenario again.  I use El Capitan 10.5.11 on an iMac of 2013.  I deleted the iMovie app and reloaded it, no change.  Someone has an idea for a fix?

    What are the specifications of your clips you want to change? Try to create a new user and see if FCPX is behaving.

  • Unexpected behavior with the Option "record in the result.

    Hello

    I have unexpected behavior with the Option "record in the result.

    I have a few steps in the subsequence 'X', this subsequence passes a Boolean parameter. According to the value of the parameter I change the "Recorgind results" Option to report it or not. The thing is that if 'result Recorgind' set at race time I modofy by changing the value of Step.ResultRecordingOption to "Enable" and "Disable", the step is not reported until the same sous-suite 'X' is called for the second time (without changing the parameter passed).

    For example: (Preconditon: result Recorgind Option of all value sous-suite x are defined as Disable)

    1 CallSubsequenceX(Parameter: Enable)

    2 CallSubsequenceX(Parameter: Enable)

    3 CallSubsequenceX(Parameter: Disable)

    4 CallSubsequenceX(Parameter: Disable)

    Expected result:

    1. measures have been reported.

    2. measures have been reported.

    3. measures have not been reported.

    4. measures have not been reported.

    Result:

    1. measures would not same value Step.ResultRecordingOption has been changed to 'enable '. (Not Ok)

    2. measures have been reported. (Ok)

    3. measures reported same value Step.ResultRecordingOption has been changed to 'disable '. (Not Ok)

    4. measures have not been reported. (Ok)

    I use TestStand 2013 (5.1.0.226)

    Thanks in advance.

    -Josymar.

    Hi josymar_guzman,

    I just review the sequence and indeed we´re experience unexpected behavior with the Step.ResultRecordingOption callback. By a reason when you run the callback in the expression before each step section, the statement runs only until the next sequence is called, which is not what we want.

    To avoid this, you can place a statement before each step of the sequence, so you can change the State of the Option "record result" for the sequence running (and it is only the following). You can try something like this

    where the expression of the statement will be the recall "RunState.NextStep.ResultRecordingOption is YourCondition". With this, we guarantee that the results of the next step will be saved or not. I also remove the expression in the expression prior to each step section, because the condition is now on the statement before each step.

    I tried and it works fine. I´ll set the sequence that you share with me, with the changes. I hope this will help you and solve your problem.

  • VIXIA HF R600 record with no healthy option?

    I'm sure that I'm missing something simple, but can someone please help me with how to save with no noise on the Vixia HF R600?

    I can see sound options for: modes Standard, music, speech, & forest birds and Noise Suppression. (= Noise suppression "reduces the noise of the wind and cars. Ideal for recording in a car or the crowd. ("It does not turn off the noise.)

    During video playback I can see where to adjust the volume of the headphones/AV.

    However, I still find an option to turn off the sound when recording.

    Am I missing something? Or is my only option to take the sound with some editing program afterwards?

    Thank you in advance!

    Thanks for the reply. I can go that route. I've seen a few comments on some pickups that say what you said.

    It seems strange that a modern camcorder would not be the mere possibility of recording with no sound so. It seems such an obvious option to understand.

    Well. Thanks again!

  • Using the parallel option with DataPump

    Hello

    Does make sense to make a DataPump export and import with the option parallel > 1 when I only have a single dump file?

    Thanks and greetings

    Hello

    Thank you for the feedback.

    But as I said I am concerned by the presence of a single dump file.

    It does not work and have abortions. So I can't use this option unless I generate export by many dump files.

    Kind regards

  • one-to-many selfjoin, delete records with the same rank or a substitution

    Sorry for my poor choice of the title of the discussion, feel free to suggest me a more relevant


    I rewrote for clarity and as a result of the FAQ post.


    Version of DB


    I use Oracle10g Enterprise 10.2.0.1.0 64-bit


    Tables involved

    CREATE TABLE wrhwr (
    wr_id INTEGER PRIMARY KEY,
    
    eq_id VARCHAR2(50) NULL,
    date_completed DATE NULL,
    status VARCHAR2(20) NOT NULL,
    pmp_id VARCHAR2(20) NOT NULL,
    description VARCHAR2(20) NULL);
    
    


    Examples of data


    INSERT into wrhwr  VALUES (1,'MI-EXT-0001',date'2013-07-16','Com','VER-EXC','Revisione')
    INSERT into wrhwr VALUES  (2,'MI-EXT-0001',date'2013-07-01','Com','VER-EXC','Verifica')
    INSERT into wrhwr  VALUES (3,'MI-EXT-0001',date'2013-06-15','Com','VER-EXC','Revisione')
    INSERT into wrhwr  VALUES (4,'MI-EXT-0001',date'2013-06-25','Com','VER-EXC','Verifica')
    INSERT into wrhwr  VALUES (5,'MI-EXT-0001',date'2013-04-14','Com','VER-EXC','Revisione')
    INSERT into wrhwr  VALUES (6,'MI-EXT-0001',date'2013-04-30','Com','VER-EXC','Verifica')
    INSERT into wrhwr  VALUES (7,'MI-EXT-0001',date'2013-03-14','Com','VER-EXC','Collaudo')
    
    


    Query used

    SELECT *
      FROM (SELECT eq_id,
                   date_completed,
                   RANK ()
                   OVER (PARTITION BY eq_id
                         ORDER BY date_completed DESC NULLS LAST)
                      rn
              FROM wrhwr
             WHERE     status != 'S'
                   AND pmp_id LIKE 'VER-EX%'
                   AND description LIKE '%Verifica%') table1,
           (SELECT eq_id,
                   date_completed,       
                   RANK ()
                   OVER (PARTITION BY eq_id
                         ORDER BY date_completed DESC NULLS LAST)
                      rn
              FROM wrhwr
             WHERE     status != 'S'
                   AND pmp_id LIKE 'VER-EX%'
                   AND description LIKE '%Revisione%') table2,
           (SELECT eq_id,
                   date_completed,            
                   RANK ()
                   OVER (PARTITION BY eq_id
                         ORDER BY date_completed DESC NULLS LAST)
                      rn
              FROM wrhwr
             WHERE     status != 'S'
                   AND pmp_id LIKE 'VER-EX%'
                   AND description LIKE '%Collaudo%') table3
     WHERE     table1.eq_id = table3.eq_id
           AND table2.eq_id = table3.eq_id
           AND table1.eq_id = table2.eq_id
    
    

    The above query is intended to selfjoin wrhwr table 3 times in order to have for each line:

    • eq_id;
    • date of the completion of a verification type work request for this eq_id (aka table1);
    • date completion of a line (aka table2) type wr for this eq_id;
    • date of completion of a type wr Collaudo (aka table3) for this eq_id;

    A separate eq_id:

    • can have different completion of many requests for work (wrhwr records) with dates or date of completion (date_completed NULL column).
    • in a date range can have all types of wrhwr ('verification', 'Line', 'Problem'), or some of them (e.g. audit, line but not Collaudo, Collaudo but not verification and line, etc.);
    • must not repeat the substrings in the description;
    • (eq_id, date_completed) are not unique but (eq_id, date_completed, description, pmp_id) must be unique;

    Expected results

    Using data from the example above, I expect this output:

    eq_id, table1.date_completed, table2.date_completed, table3.date_completed

    MI-ext-001,2013-07-01,2013-07-16,2013-03-14 <- to this eq_id table3 doesn't have 3 lines but only 1. I would like to repeat the value most in the rankings in table 3 for each line of output

    MI-ext-001,2013-07-01,2013-06-15,2013-03-14 <-I don't want this line of table1 and table2 with both 3 lines match must be in terms of grade (1st, 1st) (2nd, 2nd) (3rd, 3rd)

    MI-ext-001,2013-06-25,2013-06-15,2013-03-14 <-2nd table1 joined the 2nd row from table2

    MI-ext-001,2013-04-30,2013-04-14, 2013-03-14 <-1 table1, table2 rank rank 1, 1st rank table3

    In the syntax of vector style, tuple expected output should be:

    IX = ranking of the i - th of tableX

    (i1, i2, i3) IF EXISTS a rank i - th line in each table

    ON THE OTHER

    (i1, b, b)

    where b is the first available lower ranking of the table2, or NULL if there isn't any line of lower rank.

    Clues?

    With the query, I am unable to delete the lines "spurius.

    I think a solution based on analytical functions such as LAG() and LEAD(), using ROLLUP() or CUBE(), using nested queries, but I would find a solution elegant, simple, fast, and easy to maintain.


    Thank you

    Hello

    Sorry, it's still not quite clear what you are asking.

    This becomes the desired resutls of the sample data you posted:

    WITH got_r_type AS

    (

    SELECT eq_id, date_completed

    CASE

    Description WHEN LIKE '% Collaudo %' THEN 'C '.

    Description WHEN AS 'Line %' THEN 'R '.

    Description WHEN AS 'Verification %' THEN 'V '.

    END AS r_type

    OF wrhwr

    Situation WHERE! = s "

    AND pmp_id LIKE '% WORM - EX'

    )

    got_r_num AS

    (

    SELECT eq_id, date_completed, r_type

    , ROW_NUMBER () OVER (PARTITION BY eq_id, r_type)

    ORDER BY date_completed DESC NULLS LAST

    ) AS r_num

    OF got_r_type

    WHERE r_type IS NOT NULL

    )

    SELECT eq_id

    LAST_VALUE (MIN (CASE WHEN r_type THEN date_completed END = ' V')

    IGNORES NULL VALUES

    ) OVER (PARTITION BY eq_id

    ORDER BY r_num

    ) AS audit

    LAST_VALUE (MIN (CASE WHEN r_type = 'R' THEN date_completed END)

    IGNORES NULL VALUES

    ) OVER (PARTITION BY eq_id

    ORDER BY r_num

    ) AS line

    LAST_VALUE (MIN (CASE WHEN r_type = 'C' THEN date_completed END)

    IGNORES NULL VALUES

    ) OVER (PARTITION BY eq_id

    ORDER BY r_num

    ) AS collauda

    OF got_r_num

    GROUP BY eq_id

    r_num

    ORDER BY eq_id

    r_num

    ;

    I guess the description can have (at most) only substrings target, in other words, you can't have a line like this:

    INSERT into (1,'MI-EXT-0001',date'2013-07-16','Com','VER-EXC','Revisione VALUES wrhwr and audit");

    In addition, you said the combination (eq_id, date_comepleted) is not unique, that it is y no example of this in your sample data.  What results would you if, in addition to this line (who did the validation):

    INSERT into wrhwr VALUES (7,'MI-EXT-0001',date'2013-03-14','Com','VER-EXC','Collaudo');

    the following line is also?

    INSERT into wrhwr VALUES (97,'MI-EXT-0001',date'2013-03-14','Com','VER-EXCFUBAR','Collaudo');

    .

    You could do a self-join instead of GROUP BY, but I suspect it will be much less effective.  You can use FULL OUTER JOIN, since you do not know what r_types was that r_nums.

  • Problem with deleting a record

    I'm trying to figure out how to delete a record in a MySQL table using php on DWmx2004 server behaviors.
    I have two pages: Page 1 (ck_insert.php) lists organizations of a field in the table. Next to each name is a "Delete" text link that leads to the Page 2 (ck_delete.php).

    My link href page ck_delete.php ck_insert.php reads as follows:
    < a href = "ck_delete.php? scrap = <?" PHP echo $row_rstSix ["ck_pk"];? > ">"
    (ck_pk being the autoincremented in the MySQL table primary key field.)

    On the second page, the selected organization appears in the expression "you want to remove (organisation_to_be_deleted) from the database?
    Then I put in a box with the name of "gone" and the value Checked "gone".
    Next is a button named 'Submit' tagged 'remove '.

    The correct variable is transferred to the Page 2, but then when I click the button to delete the record deletion does not occur...

    Please take a look at:
    http://www.hopeless.me.UK/deleteimage.htm
    where I posted the Page 2 image and images of the relevant DW completed dialog boxes.

    The entries are clearly incorrect, because the system has not yet reached the goal of deleting a record and return the first page. I would be very grateful for help in sorting this point and tell me where I can find a clear explanation of how I'm supposed to take on this important task. So far what I've read left me confused, as you can see!
    Thank you

    Relax everyone. I've sorted it. I had to add a hidden field to the form.
    Done and dusted.

  • Delete the deletion for developers OBIEE report option

    Hi all

    We have an application role for a developer where he can remove reports of PROD. but we want to go forward with 1 more application role new where the developers must have all privileges except Delete option.

    We have 2 application roles to role of Developer 1 with delete option and others without the delete option.

    We have a huge catalogue with more than 35,000 reports altogether.

    For a particular report:

    Catalog-> shared-> reports, make files right click and option remove this can be removed in permissions-> customize - > uncheck the box delete

    Shared folder:

    Catalogue->-> shared folders permissions Select custom and deselect the Delete option

    But we are looking for something has changed in the world to remove option to remove existing EM (application policies) application role or OBIEE level.

    Thanks in advance

    Hello

    I don't see a way for you to find it in EM.

    The button Delete is something related to catalogue objects, that's why I think, is the only place where you can set or remove it in the catalog itself (as you say).

    For your 35000 reports you can still do so by code (web service, etc.)

  • where the drop of firefox with tab options?

    How to find firefox drop-down list with tab options of the nexus program 7. I need to fix a choice of popup ads I did accidentally.

    Load the site you blocked/allowed the popup on long, then press the address bar. Choose 'Site Settings... '. "and delete options.

Maybe you are looking for