Running ksh jobs directly on EXADATA compute node.

My organization is in the process of considering the acquisition of an EXADATA applicance.
We have a 100TB database (V11.2.0.1.0) running on a 48 processor AIX P770 box. We process approximately 2000 jobs / day (using CONTROL-M) against our PROD ORACLE instance. All of the jobs run via AIX ksh scripts directly on the database server that hosts our PROD database. We want to simply forklift our current database to EXADATA, and we want to be able to run our current job set unchanged. Can we move our AIX ksh scripts over to the EXADATA compute nodes, and simply execute the jobs directly under Linux on one of the compute nodes?
We know that there are likely to be some syntactical differences between LINUX ksh and AIX ksh and are prepared to deal with that.
NOTE: We do a lot of processing using external flat files (usually loaded as external tables), and we write out hundreds of flat files for export to other systems using UTL_FILE. Given that, we would like to do our job processing directly on the database server / compute node where the files would be loaded from / written to.
Any thoughts are appreciated.

Hi user6201670,
The short answer to your question is yes: it is possible to run ksh jobs directly on a database server.  As for file storage, there is a limited amount of space on the OS disks, but for large data and I/O volumes consider mounting an external file system:  be it DBFS, an external NFS device, or (as of GI 12.1.0.2) ACFS.
A few things to keep in mind:
- For critical services, plan on how to offer high availability in case of a node failure
- If data loads are a big part of your workload, think about how to load-balance between multiple database servers
- File processing by script with UTL_FILE is considerably slower than direct-path inserts via something like SQL*Loader
- When paying for Oracle licenses by processor, using database server CPU time to run dataload scripts can be quite expensive
HTH,
Marc

Similar Messages

  • Error ORA-01017 happened when dbms_scheduler run a job.

    Hi All,
    I got a problem when I use dbms_scheduler to run a job. I got Error code 1017 when the job is run by scheduler. Please find my steps below:
    Oracle version is : Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
    1. Created a job successfully by using the code below:
    begin
    dbms_scheduler.create_job(
    job_name => 'monthly_refresh_elec_splits',
    job_type => 'PLSQL_BLOCK',
    job_action => 'BEGIN TRADINGANALYSIS.PKG_IM_REPORTING_ERM.REFRESH_ELEC_SPLITS_TEST; commit; END;',
    start_date => SYSTIMESTAMP,
    repeat_interval => 'freq=monthly;bymonthday=25;byhour=10;byminute=35;bysecond=0;',
    end_date => NULL,
    enabled => TRUE,
    comments => 'monthly_refresh_elec_splits.',
    auto_drop => FALSE
    end;
    2. Got the job run details from talbe user_scheduler_job_run_details after the job is finished:
    select * from user_scheduler_job_run_details where job_name = 'MONTHLY_REFRESH_ELEC_SPLITS' order by log_id desc;
    LOG_ID     LOG_DATE     OWNER     JOB_NAME     JOB_SUBNAME     STATUS     ERROR#     REQ_START_DATE     ACTUAL_START_DATE     RUN_DURATION     INSTANCE_ID     SESSION_ID     SLAVE_PID     CPU_USED     DESTINATION     ADDITIONAL_INFO
    2054804     25/06/2012 10:35:01.086000 AM +10:00     TRADINGANALYSIS     MONTHLY_REFRESH_ELEC_SPLITS          FAILED     1017     25/06/2012 10:35:00.300000 AM +10:00     25/06/2012 10:35:00.400000 AM +10:00     +00 00:00:01.000000     1     1025,37017     129396     +00 00:00:00.030000          ORA-01017: invalid username/password; logon denied
    ORA-02063: preceding line from NETS
    ORA-06512: at "TRADINGANALYSIS.PKG_IM_REPORTING_ERM", line 574
    ORA-06512: at line 1
    3. If I run the job directly the job will be finished successfully.
    begin
    dbms_scheduler.run_job('monthly_refresh_elec_splits',TRUE);
    end;
    LOG_ID     LOG_DATE     OWNER     JOB_NAME     JOB_SUBNAME     STATUS     ERROR#     REQ_START_DATE     ACTUAL_START_DATE     RUN_DURATION     INSTANCE_ID     SESSION_ID     SLAVE_PID     CPU_USED     DESTINATION     ADDITIONAL_INFO
    2054835     25/06/2012 11:05:38.515000 AM +10:00     TRADINGANALYSIS     MONTHLY_REFRESH_ELEC_SPLITS          SUCCEEDED     0     25/06/2012 11:04:35.787000 AM +10:00     25/06/2012 11:04:35.787000 AM +10:00     +00 00:01:03.000000     1     1047,700          +00 00:00:00.030000
    Additional Info:
    PL/SQL Code in procedure
    PROCEDURE Refresh_Elec_Splits_Test IS
    BEGIN
    --Refresh im_fact_nets_genvol from v_im_facts_nets_genvol in NETS
    DELETE FROM IM_FACT_NETS_GENVOL;
    --the local NETS_GENVOL table has an additional column providing volume splits by generator and month.
    --INSERT INTO IM_FACT_NETS_GENVOL values ('test',sysdate,'test',1,2,3,4,5,6,7);
    INSERT INTO IM_FACT_NETS_GENVOL
    select ngv.*,
    ratio_to_report (net_mwh) OVER (PARTITION BY settlementmonth, state)
    gen_percent
    from [email protected] ngv;
    commit;
    END;
    Does anyone can advice where should I check and how can I solve the problem?
    Thanks in advance
    Edited by: user13244529 on 24/06/2012 18:33
    Edited by: user13244529 on 24/06/2012 18:43

    I apologize if you already solved this.. but see Metalink ID 790221.1
    +*<Moderator Edit - deleted contents of MOS Doc - pl do NOT post such content - it is a violation of your Support agreement>*+                                                                                                                                                                                                                                                                                                                                                                                                               

  • Launchd: How to Run a Job Only When Waking?

    I want to run a script when the computer wakes from sleep. I've read everything I can find about launchd and cannot find a solution.
    I tried RunAtLoad, but it did not run the script when the computer woke from sleep.
    Is there a parameter for launchd that will run a job only when the computer wakes from sleep?
    I know other parameters like StartInterval will run any "queued" jobs when the computer wakes up, but I'm looking for a parameter that runs the job only when the computer wakes up.
    Any help is appreciated.
    Thanks
    Brett

    Sorry, but there is no capacity for that built into launchd.  You might be able to hack something together (I've tried before, with some limited success), but it will be easier and more stable to use sleepwatcher. 

  • Azure Compute Nodes not running the job

    I have an on-premise head node. I have joined 10 Azure Compute Nodes via the cloud service and storage account. I have uploaded the dlls directory to storage account and synced using hpcsync all the compute nodes. The Azure compute nodes are still not
    running the job. I see in the HPC Job Manager that the Cores In Use = 0. How should I resolve this issue?

    Hello,
    We are researching on the query and would get back to you soon on this.
    I apologize for the inconvenience and appreciate your time and patience in this matter.
    Regards,
    Azam khan

  • P2055 randomly runs a Print Page before a job, and randomly when computer is on

    Before many print jobs, the P2055dn prints a page that is blank except for the follwing at the top of the page:  GET /DevMgmt/DiscoveryTree.xml  HTTP/1.1
    Host: 127.0.0.1:8080
    How can I make this stop?  I have the latest print drivers.  Running Win 7 64 bit.

    2605dn has same problem as P2055 randomly runs a Print Page before a job, and randomly when computer is on
    Before many print jobs, the 2605dn prints a page that is blank except for the follwing at the top of the page: GET /DevMgmt/DiscoveryTree.xml HTTP/1.1
    Host: 127.0.0.1:8080
    How can I make this stop? I have the latest print drivers. Running Win 7 64 bit.
    The fix for the 2055dn does not work on the 2605dn so does anyone have a fix for 2605dn - tech help and driver useless as usual

  • How do you register an agent of on 11.2 DB to run remote jobs on another ?

    There are examples available showing how to install a remote agent on a host that doesnt have an Oracle database (using the gateway CD in 11.1 or the Oracle Client in 11.2) and from reading the documentation, it suggests you only need to install the remote agent if there is not an Oracle database on the host. If I have two Oracle databases and want to run remote jobs from DBMS_SCHEDULER on host A against data on host B, how can i register the agent as i cant find any examples that do this.
    With the remote agent installed, there are schagent either in unix or windows but i cant find this in the $ORACLE_HOME/bin of an 11.2 Enterprise install. I've run the prvtrsch.sql script as SYS and it's created the REMOTE_SCHEDULER_AGENT user and objects (which i think might be the equivalent of running schagent on the remote client) but then when i want to register the agent on the calling Oracle database, i dont know what the agent name is to specify in the CREATE_SCHEDULER_DESTINATION call.
    I've added the TNS entries for both directions but just dont have enough information to find the missing bit that lets me connect them.
    Any help appreciated, or just some pointer to know if I am in the right direction would be great
    Thanks

    Hi Ronald
    I have your book which has been very useful in other areas I have been investigating on DBMS_SCHEDULER ( I certainly recommend it to anyone doing any serious work on DBMS_SCHEDULER) but it's not in there either - I've read the chapter ''Getting out of the database' several times and whilst it goes into great detail on how to install the remote agent on a machine without a database, I could only find a brief mention of running an agent in the database starting on page 113 where it talks about 'preparing the database for remote agent usage'.
    I've done these things on the second database but the later part of the chapter is back to running jobs on a machine without Oracle installed and use of schagent which doesn't exist in in the $ORACLE_HOME/bin on a machine that has Oracle installed so I am stuck on how to proceed.
    You also mention the enhancement request so would be interested to know what happened with this ?
    The first thing that comes to my mind when a registration has been done is: "How
    can I check this?" Unfortunately, there appears to be no way to check the status of the
    agent's registration—not even in the database. It would be very convenient to have
    an Oracle view that gives an oversight of which agents are talking with the database.
    I filed an enhancement request (7462577) for this. So with a little luck, we can check
    the status of remote agents in the near future.
    I figure if I have the name of the agent, I can use it in the CREATE_DATABASE_DESTINATION call on my calling database but I cant find the name anywhere. In SQL Developer on the SQL table of create destination, it shows this as being SYS."" and inserts whatever you select from a dropdown list but I don't know how to get any values into the dropdown so possibly the registration wasn't complete but it has created the database objects in the schema and I got no errors when running it.
    Any advise on how to proceed welcome and perhaps it can be added as an addition to the next version of the book.
    Regards
    Trevor

  • Possible to run Automator job before shutdown (automatically)?

    Subject says it all, really: I have an Autamator job that copies some files from one place to another.
    I want to run this job automatically before the machine shuts down. Is this possible?

    Yes. Just add it to the Automator workflow with the "Run AppleScript" action and save it as an application to put in your Dock, or the sidebar in a Finder window, or the toolbar in a Finder window.
    If you don't want it to be too easy, then put it in a folder first. Then put the folder either in the Dock, or the sidebar or toolbar of the Finder window so you'll have to perform two clicks.
    In the "Run AppleScript" action, you can delete everything in the text box since you don't need to process any items, and then add this:
    tell application "System Events" to shut down
    Note that "shut down" is two words. You can also use the words "restart", "sleep", or "log out". There will not be a confirmation dialog, excepting when applications ask to save unsaved documents (unless sleeping).
    In the future, you can find this is out again with Script Editor somewhere in the Applications folder (or use Spotlight). You'll want to open the "System Events" scripting dictionary, and it's probably already in the "Library" window (check the Window menu, or Command-Shift-L). Use the search in the "System Events" dictionary window to find "shut down", or anything else.
    Be careful about testing this script since it will immediately shutdown the computer without a confirmation dialog. Perhaps have an unsaved document opened while testing, such as another Automator workflow with any action added and unsaved, or a new TextEdit document with a some random text typed in (a single letter will do).

  • SQL Agent job running DTS package running in SQL 2005 is unable to run if job onwer is not logged onto server

    I am currently working on a SQL Server upgrade project for a a client where I am converting old dts packages to SSIS. However for a few of the packages no conversion is allowed to be done. For these few packages I have to use dts legacy components in SQL
    2005 on a windows 2003 server to run them.
    These packages use CAPICOM via an Active X script in the package to envelope connection string data for security within the package. Consequently I have to register the capicom.dll for the job owner (which will execute the job via proxy) and install private
    and public key files via internet explorer. I also do this when I am logged in with my account so i can test the package.
    I have created a SQL Server Agent Job which is used to execute the package. We have a schedule account which is local admin on the server and sysadmin within SQL Server. This account is used to create a credential and then a proxy for the CmdExec subsystem
    is then created based on this credential. A CmdExec job step is then added to the job. The directory of  cmd file which calls the dts package is then entered in the command window.
    Finally a recurring schedule is added to execute the job every 5 minutes. 
    If i am logged in to the server using the scheduled account the schedule runs successfully. I am also able to run the command file manually by double clicking on it. The DTS package is run successfully. However once the schedule is set up and I log off the
    machine and log onto my development machine with my normal account and fire up  SQL Server. I connect to that instance with the schedule and see that the job is failing with and Active X error in the package. From experience with this package this Active
    X  error occurs when the user executing the package has not registered the capicom.dll. This has already been done for the scheduler account because the job runs when the scheduler account is logged in on the server. 
    It almost seems as though the job will only run if the Scheduler account is logged on. If i log directly on to the server with own user account I am able to manually execute the package via the cmd file which indicates that the capciom.dll is registered
    under my account. Yet if I try an run the job in SQL Server when I am logged in under my account (using the scheduler account proxy) then the job fails.
    Does anybody have any idea why this may be happening? Any ideas would be much appreciated

    Run the job SSIS step under a proxy account that is derived from the domain account, non-expiring password and has been set to have all the necessary rights.
    How to is here: http://www.mssqltips.com/sqlservertip/2163/running-a-ssis-package-from-sql-server-agent-using-a-proxy-account/
    Arthur
    MyBlog
    Twitter

  • Alert monitor for long running background jobs

    Hello,
    I have to configure an alert moniter for long running background jobs which are running more than 20000 secs using rule based. I have created a rule based MTE and assigend MTE class CCMS_GET_MTE_BY_CLASS to virtual node but i dont find a node to specify the time.
    could any one guide me how can i do this.
    Thanks,
    Kasi

    Hi *,
    I think the missing bit is where to set the maximum runtime. The runtime is set in the collection method and not the MTE class.
    process:  rz20 --> SAP CCMS Technical Expert Monitors --> All Contexts on local application server --> background --> long-running jobs. Click on 'Jobs over Runtime Limits' then properties, click the methods tab then double click 'CCMS_LONGRUNNING_JOB_COLLECT', in the parameters tab you can then set the maximum runtime.
    If you need to monitor specific jobs, follow the process (http://help.sap.com/saphelp_nw70/helpdata/en/1d/ab3207b610e3408fff44d6b1de15e6/content.htm) to create the rule based monitor, then follow this process to set the runtime.
    Hope this helps.
    Regards,
    Riyaan.
    Edited by: Riyaan Mahri on Oct 22, 2009 5:07 PM
    Edited by: Riyaan Mahri on Oct 22, 2009 5:08 PM

  • DBMS_JOB.RUN: cannot run a job from a job

    I'm trying to set up a job to automatically run every October 1st. The "submit" part of this job is pretty simple, but I am getting some errors on the "run" part:
    declare
    job_nbr binary_integer;
    BEGIN
    dbms_job.submit(job => job_nbr,
              what => 'RESET_ORDER_NBR_SEQ;',
              next_date => to_date('10/1/2008', 'mm/dd/yyyy'),
              interval => 'add_months(sysdate,12)');
    dbms_job.run(job_nbr);
    COMMIT;
    END;
    When I run this script, I get the following error: "ORA-32317: cannot run a job from a job". I know this is due to the dbms_job.run because I don't get the error when I comment this line out. Also, even when I moved the dbms_job.run into its own script (and even hard-coded the job_nbr, so the dbms_job.run was the only line in the script), it still gave me the same error. This is working in SQL Developer when but not in Application Express. It seems to be something specific to the "run", since "submit" and "remove" work fine. Has anyone had any problems like this?

    MBETTIS,
    Rather than including dbms_job.run in your PL/SQL block, why don't you just schedule the job to run via next_date?
    Also, the interval will be computed after the job successfully executes. So if your job takes 5 minutes to run, the value of SYSDATE in your interval may "slide" after each execution. Consider using some form of TRUNC against the SYSDATE in your interval if you want to achieve a consistent execution time.
    Joel

  • Hello, I'm pretty sure my fan on my 2009 mac book pro has stopped running. Would this cause the computer to slow down and take for ever to boot up and show the color wheel every time I select an application ?

    Hello, I'm pretty sure my fan on my 2009 mac book pro has stopped running. Would this cause the computer to slow down and take for ever to boot up and show the color wheel every time I select an application ? how involved to replace fan ? cost ?
    thanks

    Not directly, but if the CPU overheats because of incompatible software, that would cause slowdowns. Do not allow the computer to run if the fan is not working unless you wish to fry your motherboard. Please make a Genius Appointment and take it in for service.

  • Is ds designer able to run a job against a remote job server?

    I looked around for a quite while and couldn't find anywhere it's mentioned that the ds designer can run a job against a job server running on another machine. To me it seems that the designer and DS Server Manager can only pick up local job servers. There is no way for they to specify the hostname of the remote machine having the job server running.
    Could anybody here help me out with this problem? Our environment has restriction that developers have no local admin privilege so they can't start a local job server as a Windows service. The only solution for us is to use the remote job server running on the dedicated server. BTW, we don't use Unix/Linux at all.
    thanks in advance.

    yes, Designer can run job on job server that is installed on different machine, the job server machine can be Linux\Unix or Windows
    for the remote job server to be visible in Desginer, you will have Register the local repository with the Remote job server
    to Register a Local Repository with a Remote job Server, go to remote job server machine
    open the Server Manager
    In the server Manager, go to the job server window, select the job server click on edit in this window you can associate as many local repository as you want with this job server
    restart the Desginer, login to the local repo that you have added to job server
    click on Tools->Options
    expand Designer node, click on Environment
    in the Default job Server drop down list you will see the remote job server
    please refer the technical maual for Adding Job server using Server Manager and also how to add repository to job server

  • Who runs V3 Job?

    Hi all,
           Can you please clarify a doubt I have regd LO extraction. Will the system run V3 job automatically based on the extraction method we specify in LBWE or do we run the V3 job manually. How to monitor the V3 job.
    Thanks,
    Ram

    Hi Ram,
    It depends on the update method that you use. You will find more detailed information in the 'solution' part
    of the note  505700. For example if you use 'Direct delta' update method then you don't need to
    schedule the V3 update. If you use 'Queued delta' update method then you need to schedule a
    Job for the transfer of data to the delta queues, You can do this using the Job control
    feature in transaction LBWE. Please see the note 505700 for further details.
    Regards,
    Des.

  • Need to run the JOB without Ineractive Screen

    Dear All,
    We have written a new ABAP program for executing the Macro background Job and used JOB_OPEN,JOB_SUBMIT and JOB_CLOSE Function Modules to run the JOB from ABAP Program.  We are able to run the JOB successfully for Any other ABAP Programs through the custom program, but when I tried with the same approach to run the Macro job through my new ABAP Program the JOB is throwing an error.
    Error Message is like below
    Job started
    Step 001 started (program /SAPAPO/TS_BATCH_JOB, variant TEST, user ID GKMN3511
    Specify a start time
    Job cancelled after system exception ERROR_MESSAGE
    Point of doubts:
    -- Can we really execute the Macro job through the ABAP program with out any dialogue screen (because when I use the "/SAPAPO/MC8G - Schedule Demand Planning in the Backgroundu201D program in my custom program it pop-ups a interactive screen which I don't want in my ABAP program while scheduling the macro job)
    Regards,
    Raju

    In transaction /sapapo/mc8t --> define the activity that looks at the macro in question
    In transaction /sapapo/ mc8d --> define the job that looks at that activity and a selection iD/aggregation level
    In transaction /sapapo/ts_batch_run --> save a variant pointing to the job defined in mc8d
    you can then run the /sapapo/ts_batch_run job with that variant

  • Error while running a job in background

    Hi,
      I got the following error message while running the job in background.
    "Step 001 started .
    Control Framework: Fatal error - GUI cannot be reached.
    ABAP/4 processor: RAISE_EXCEPTION
    Job cancelled"
    What is the reason for this error and how to correct it?

    ALV Grid control is based on the custom controls on the screen. When the program is scheduled in background, it tries to create GUI related front-end objects and hence the error u201CFatal Error u2013 GUI cannot be reachedu201D. This type of problem is common with all the programs that use the ALV grid control to display the output.
    Solution:
    Whenever we execute this type of programs in background, we should be passing a blank docking container instead of the custom container as parent to our grid control. 
    The docking container doesnu2019t need any of the custom controls on the screen; instead it attaches an area to any or all of the four edges of the screen (top, left, right or bottom). The behavior of the areas in the container is determined by the sequence in which they are initialized. Docking Containers are attached to the screen from the inside out. This means that when you create a second container, it is attached to the edge of the screen, and the container that was already there is pushed outwards. 
    Let us modify the standard program (by taking a copy of it) to enable it to execute it in background.
    Following modifications have to be made:
    ·        Define a docking container in the program
    data: or_doc  type ref to cl_gui_docking_container .
    ·        At the time of creating a custom container, check if the program is being executed in background or foreground. If the program is scheduled in background, then create a docking container instead of custom container.
    if cl_gui_alv_grid=>offline( ) is initial.
        create object or_custom_container
               exporting container_name = c_container.
      create object or_grid
             exporting i_parent = or_custom_container.
    else .
    create object or_grid
             exporting i_parent = or_doc .
    endif . 
    Now test executing the program in background. The report would be generated.

Maybe you are looking for

  • Scheduling agreement,(GR value is wrong)

    I have one scheduling agreement, the price is 1.31 INR from 10.10.2007 and i made GR for this three times, it shows correct quantity and value in Purchase order history, in 18.10.2007 the one GR is showing me wrong value, per material isit, showing m

  • JMS / Message Driven Bean not processing message

    I am having a problem getting an MDB to work on Weblogic Server 7x.           Basically I have written a simple Bean which simply prints a message.           I have a JMS client which creates a message (javax.jms.TextMessage)           and successful

  • T code SWETYPV

    Hi In T code SWETYPV for the object type BUS2012 for the event RELEASESTEPCREATED for the receiver type WS20000075 Type linkage is not active here but the enable event que is active here and the status is no error. I want to activate the Type linkage

  • Installing Asterisk on Mac OS X - step by step please

    Dear friends - I spent the last 48 hours googling for a tutorial to install Asterisk (www.asterisk.org) on Mac OS X without much success. What I need, given my limited knowledge and skills, is a set-by-step (literally) tutorial for doing the installa

  • Can the latest iPad be charged in Europe using only an adapter?

    I'm taking my iPad to Europe and wonder if it has a built-in converter so that I don't need a converter, but only an adapter. Thanks.