Disjoint Selections in Parallel Processing Profile

Hello All,
         I wanted to use the parallel processing profile for my DP background jobs.
When I referred the 'Note 853142 - Consulting: Parallel processing profile for DP batch runs' it says use this parallel processing using disjoint selections (external parallel processing). Can you please explain what is the meaning of disjoint selections.
Thanks,
Siva.

Hi Siva,
With quite large background runs, the background work process can experience
memory problems when the characteristics combinations are being imported.
Therefore, an additional external' parallel processing (using several background jobs
and disjoint selections) may be necessary.  Disjoint selections has no link to its
selections made.
Regards
R. Senthil Mareeswaran.

Similar Messages

  • CIF compare/reconcile -- Parallel process profile in R/3

    Dear experts, I'm opening a complete new discussion with this topic...
    does anybody have experience setting up parallel processing for CCR?
    I did create 2 parallel profiles in customizing (1 for APO and 1 for R3) and I executed the report in background.
    Most of the performance time that the report uses is spent on R3 side reading tables like VAPMA and VLPMA. In order to improve runtime performance I set up the 2 parallel process profiles as shown above (defiining server, number of processes and block size in customizing following SAP recommendations already).
    In APO I am perfectly able to see how more than one process is being triggered and therefore parallelization works.
    Nevertheless, I never see in R/3 the same thing happening. No matter how I define the parallel process profile for R/3, I always see one unique process in transations SM51 and SM66 on this system as shown below.
    Is there a specific setting I need to maintain to achieve this process parallelization in R/3? Is it even possible to split processes in R3? and if not, what is the purpose of having Parallel Process profiles in R3?
    Thanks for your support
    Salvador

    Hi Rupesh,
    indeed a good remark, but we already got this note in R3 upfront.
    Regarding VBBE, we did ran CCR without it being selected. This has an equivalent effect to running report SDRQCR21 as it will also update index tables. It is recommented by SAP to schedule it on a regular basis and that's the direction we took.
    These ones certainly improve performance significantly, but still we are wondering about parallel processing in R3.
    If there is a profile for parallel process available in CCR, why are we not able to see parallel processes in R3 when executing the report? This should also help in improving even more performance if we could get it working properly...
    Further information...
    Is maybe someone aware of the following points?
    - RFC call is using DIA processes. Are these suitable for parallellization in any case?
    - what are the profile parameters that need to be set up (RZ10) and is there a direct link with parallel processing? For example, I notice that rdisp/rfc_pool_size is equal to zero in my R3 system but it is 10% in APO.
    - are there other parameters like rdisp/rfc* that can really block me from getting parallel processes?
    Thanks for your interventions
    Salvador
    Message was edited by: Salvador García

  • Use of parallel processing profiles with SNP background planning

    I am using APO V5.1.
    In SNP background planning jobs I am noticing different planning results depending on whether I use a parallel processing profile or not.
    For example if I use a profile with 4 parallel processes, and I run a network heuristic to process 5 location products I get an incomplete planning answer.
    Is this expected behaviour? What are the 'good practices' for using these profiles?
    Any advise appreciated...

    Hello,
    I don't think using parallel processing profile is a good idea when you run network heuristic, since in network heuristic, the squence of the location/product is quite important. The sequence is determined by low-level code, as you may already know.
    For example, in case of external procurement, it must first plan the distribution center then the supplying plant, and in case of inhouse production, it must first plan the final product then the components.
    If you use parallel processing, the data set which is sorted by low-level code would be divided into several blocks and be processed at the same time. This may mess the planning sequence. For example, before the final product is planned in one block, the component is already planned in another block. When it plans the final product, new requirement of the component is generated, but the component will not be planned again, which results supply shortage of the component .
    If there're many location products, maybe dividing the data set manually is a good practice. You can put those related location products in one job, and set several background jobs to plan different data set.
    Best Regards,
    Ada

  • Parallel Process Option for Optimization in Background.

    Hi,
    I am testing the SNP Optimizer with various settings this week on  demo version from SAP for a client.  I am looking for information that anyone might have on the SNP Parallel Processing Option in the execution of the Optimizer in the background.   The information that I could find is very thin.   I would be interested in any documentation or experience that you have.
    Sincerely,
    Michael M. Stahl
    [email protected]

    Hello,
    While running the transaction /SAPAPO/SNPOP - Supply Network Optimization  in the background, In the variant of it you can enter Parallel Processing profile in the field Paral. Proc. Profile.
    This profile you will require to define in the Customization(SPRO) before use it in the variant.
    Path to maintain it is as below Use transaction SPRO
    Advanced Planning and Optimization --> Supply Chain Planning -->Supply Network Planning (SNP) --> Profiles --> Define Parallel Processing Profile
    Here you will require to define your profile... e.g. as below
    Paral. Proc. Profile SNP_OPT
    Description          SNP OPTIMIZER PP PROFILE
    Appl. (Parallel Pr.) : Optimization
    Parallel Processes   2
    Logical system :
    Server Group :
    Block Size:
    You will require to take Basis team's help to enter value for Server Group and Block size.
    I hope, above information is helpful for you.
    Regards,
    Anjali

  • Pointers for optimizing system performance (run time) while running DP process chain with parallel processing

    Hi Experts,
    We are running APO DP process chain with parallel processing in our company, we are experiencing some issues regarding run time of process chain, need your help on below points;
    - What are the ways we can optimize process chain run time.
    - Special points we need to take care of in case of parallel processing profiles used in process chain.
    - Any specific sequence to be followed for different processes in process chain - if there is some best practice followed.
    - Any notes suggesting ways to improve system performance for APO version 7 with different enhancement packs 1 and 2.
    Any help will be really appreciated.
    Regards

    HI Neelesh,
    There are many ways to optimize performance of the process chains (background jobs) in APO system.
    Firstly I would recommend you to identify the pain areas (steps) which are completing with more runtimes. Then each one of the step has got different approaches to decrease the runtime.
    Like you may end up with steps like infopackage executions, DTPs, DP mass processing jobs etc which might be running with more runtimes. So now target each one of them differently and find out the ways to optimize. At the same time the approach you follow should be technically possible with basis perspective (system load and utilization) as well.
    And coming to parallel processing, you can use parallel processing for different for different jobs. You can further r explore on the same using parallel processing. Like loading an infocube, mass processing, infopackage execution, DTP, TSCOPY etc.
    Check the below link for more info
    Performance problems in DP mass processing
    Let me know if you require further info.
    Regards,
    Raj

  • Planning Area datasource Parallel processing

    Hello Experts,
    Have anyone worked on using a parallel processing profile in a data source.
    We are extracting the data from planning area for backup and extracting to BW for reporting purposes. To speed up the process, we have an option to implement parallel processing for the datasource related to the planning area.
    Does this really work without any discrepancies in the data extracted?
    Please provide some pointer on the concept.
    Thanks,
    Rag

    Hi Raj,
    In our project we are using 8 parallel processes with Block size 1000.
    Regarding question 2: Ideally, yes both the iterations should result in same number of records, but data packets will be different based on Block Size. Please check whether you are referring to data packets or records.
    Also if you have the check box marked in one of the iterations, the number of records may vary.
    Regards,
    JB

  • PARALLEL PROCESSIN PROFILE

    Hi,
    Please share with me what is a Parallel processing profile and it's usage.....an example would preferrably help
    Thanks,
    SS

    Hi,
    In parallel processing, the program carries out different tasks not one
    after the other but concurrently.With parallel processing, you can usually considerably improve performance when copying the planning versio for ex. Due to the greater number of tasks to be performed in parallel, however, the load on the system is likely to be more.
    For each profile, apart from the technical settings such as the number of parallel processes or the block size, you must specify the application for which the profile is to be used.  You can only assign a profile to one application.
    Parallel processing profile can be used for
    1.Load planning area
    2.Planning version copy
    3.CIF Delta report
    4.SNP Optimization
    5.Deployment heuristic
    6.Extraction of data from planning area.
    Check for further info from /SAPAPO/SDP_PAR.
    Pls close the thread.
    Thanks,
    nandha

  • Parallel processing of the IDOCs through the program RBDAPP01

    Hello All,
    We are prcoessing the inbound IDOCS using the program RBDAPP01 by scheduling but this processing is taking lot of time to process the IDOCs.
    Please let me know how do we improove the performance of this program RBDAPP01 by making use of
    parallel processing of IDOCS?I read some documentation in this forum but not understand clearly.
    Please give some info regarding this who have already done this requirement earlier.
    Regards
    Mahesh

    Hi,
    Thanks a lot for your quick reply just by giving the package size it will initiate parallel processing?
    in our partner profiles we have setting to trigger through back ground only.
    How to use parallel processing tab in the selection screen of the program RBDAPP01?
    Regards
    Mahesh

  • Parallel processing open items (FPO4P)

    Hello,
    I have a question about transaction FPO4p (parallel processing of open items).
    When saving the parameters the following message always appears : "Report cannot be evaluated in parallel". The information details tells that when you use a specific parallel processing object, you also need to use that field to sort on.
    I my case I use the object GPART for parallel processing (see tab technical settings). In the tab output control I selected a line layout which is sorted by business partner (GPART). Furthermore no selection options are used.
    Does anyone know why the transaction cannot save the parameters and shows the error message specified above. I really don't know what goes wrong.
    Thank you in advance.
    Regards, Ramon.

    Ramon
    Apply note 1115456.
    Maybe that note can help you
    Regards
    Arcturus

  • How to define "leading" random number in Infoset fpr parallel processing

    Hello,
    in Bankanalyzer we use an Infoset which consists of a selection across 4 ODS tables to gather data.
    No matter which PACKNO fields we check or uncheck in the infoset definition screen (TA RSISET), the parallel frameworks always selects the same PACKNO field from one ODS table.
    Unfortunately, the table that is selected by the framework is not suitable, because our
    "leading" ODS table which holds most of our selection criteria is another one.
    How to "convince" the parallel framework to select our leading table for the specification
    of the PACKNO in addition (this would be times 20 faster due to better select options).
    We even tried to assign "alternate characteristics" to the packnos we do not liek to use,
    but it seems that note 999101 just fixes this for non-system-fields.
    But for the random number a diffrent form routine is used in /BA1/LF3_OBJ_INDEX_READF01
    fill_range_random instead of fill_range.
    Has anyone managed to assign the PACKNO of his choice to the infoset selection?
    How?
    Thanks in advance
    Volker

    Well, it is a bit more complicated
    ODS one, that the parallel framework selects for being the one to deliver the PACKNO
    is about equal in size (~120GB each) to ODS two which has two significant field which cuts down the
    amount of data to be retreived.
    Currently we execute the generated SQL in the best possible manner (by faking some stats )
    The problem is, that I'd like to have a Statement that has the PACKNO in the very same table.
    PACKNO is a generated random number esp. to be used for parallel processing.
    The job starts about 100 slaves
    Each slave gets a packet to be processed from the framework, which is internaly represented
    by a BETWEEN clause on this PACKNO. This is joined against ODS2 and then the selective fields
    can be compared resultin in 90% of the already fetched rowes can be discarded.
    Basicly it goes like
    select ...
    from
      ods1 T_00,
      ods2 T_01,
      ods3 T_02,
      ods4 T_03
    where
    ... some key equivalence join-conditions ...
    AND  T_00.PACKNO BETWEEN '000000' and '000050' -- very selective on T_00
    AND  T_01.TYPE = '202'  -- selective Value 10% on second table
    I'd trying to change this to
    AND  T_01.PACKNO BETWEEN '000000' and '000050'
    AND  T_01.TYPE = '202'  -- selective Value 10%
    so I can use a combined Index on T_01 (TYPE;PACKNO)
    This would be times 10 more selective on the driving table and due to the fact,
    that T_00 would be joined for just the rows I need, about a calculated time 20-30 faster.
    It really boosts when I do this in sqlplus
    Hope this clearyfies a bit.
    Problem is, that I can not change the code either for doing the
    build of the packets or the one that executes the application.
    I need to change the Inofset, so that the framework decides to build
    proper SQL with T_01.PACKNO instead of T_00.PACKNO.
    Thanks a lot
    Volker

  • Parallel processing using ABAP objects

    Hello friends,
                        I had posted in the performance tuning forum , regarding a performance issue problem , I am reposting it as it involves OO concept .
    the link for the previous posting
    Link: [Independent processing of elements inside internal table;
    Here is the scenario,
    I have a internal table with 10 records(indepentent) , and i need to process them .The processing of one record doesnt have any influence on the another . When we go for loop , the performance issue is that , the 10 th record has to wait until the 9 records get processed even though there is no dependency on the output.
    Could some one tell a way out to improve the performance..
    If i am not clear with the question , i would explain it still clearer...
    A internal table has 5 numbers , say( 1,3,4,6,7)
    we are trying to find square of each number ,,,
    If it is a loop the finding of suare of 7 has to wait until 6 is getting completed and it is waste of time ...
    This is related to parallel processing , I have refered to parallel processing documents,But I want to do this conceptually ..
    I am not using conventional procedural paradigm but Object orientedness...I am having a method which is performing this action .What am I supposed to do in that regard.
    Comradely ,
    K.Sibi

    Hi,
    As examplified by Edward, there is no RFC/asynchronous support for Methods of ABAP Objects as such. You would indeed need to "wrap" your method or ABAP Object in a Function Module, that you can then call with the addition "STARTING NEW TASK". Optionally, you can define a Method that will process the results of the Function Module that is executed asynchronously, as demonstrated as well in Edward's program.
    You do need some additional code to avoid the situation where your program takes all the available resources on the Application Server. Theoretically, you cannot bring the server or system down, as there is a system profile parameter that determines the maximum number of asynchronous tasks that the system will allow. However, in a productive environment, it would be a good idea to limit the number of asynchronous tasks started from your program so that other programs can use some as well.
    Function Group SPBT contains a set of Function Modules to manage parallel processing. In particular, FM SPBT_INITIALIZE will "initialize" a Server Group and return the maximum number of Parallel Tasks, as well as the number of free ones at the time of the initialization. The other FM of interest is SPBT_GET_CURR_RESOURCE_INFO, that can be called after the Server Group has been initialized, whenever you want to "fork" a new asynchronous task. This FM will give you the number of free tasks available for Parallel Processing at the time of calling the Function Module.
    Below is a code snippet showing how these Function Modules could be used, so that your program always leaves a minimum of 2 tasks for Parallel Processing, that will be available for other programs in the system.
          IF md_parallel IS NOT INITIAL.
            IF md_parallel_init IS INITIAL.
    *----- Server Group not initialized yet => Initialize it, and get the number of tasks available
              CALL FUNCTION 'SPBT_INITIALIZE'
              EXPORTING
                GROUP_NAME                           = ' '
                IMPORTING
                  max_pbt_wps                          = ld_max_tasks
                  free_pbt_wps                         = ld_free_tasks
                EXCEPTIONS
                  invalid_group_name                   = 1
                  internal_error                       = 2
                  pbt_env_already_initialized          = 3
                  currently_no_resources_avail         = 4
                  no_pbt_resources_found               = 5
                  cant_init_different_pbt_groups       = 6
                  OTHERS                               = 7.
              md_parallel_init = 'X'.
            ELSE.
    *----- Server Group initialized => check how many free tasks are available in the Server Group
          for parallel processing
              CALL FUNCTION 'SPBT_GET_CURR_RESOURCE_INFO'
                IMPORTING
                  max_pbt_wps                 = ld_max_tasks
                  free_pbt_wps                = ld_free_tasks
                EXCEPTIONS
                  internal_error              = 1
                  pbt_env_not_initialized_yet = 2
                  OTHERS                      = 3.
            ENDIF.
            IF ld_free_tasks GE 2.
    *----- We have at leasr 2 remaining available tasks => reserve one
              ld_taskid = ld_taskid + 1.
            ENDIF.
        ENDIF.
    You may also need to program a WAIT statement, to wait until all asynchronous tasks "forked" from your program have completed their processing. Otherwise, you might find yourself in the situation where your main program has finished its processing, but some of the asynchronous tasks that it started are still running. If you do not need to report on the results of these asynchronous tasks, then that is not an issue. But, if you need to report on the success/failure of the processing performed by the asynchronous tasks, you would most likely report incomplete results in your program.
    In the example where you have 10 entries to process asynchronously in an internal table, if you do not WAIT until all asynchronous tasks have completed, your program might report success/failure for only 8 of the 10 entries, because your program has completed before the asynchronous tasks for entries 9 and 10 in your internal table.
    Given the complexity of Parallel Processing, you would only consider it in a customer program for situations where you have many (ie, thousands, if not tens of thousands) records to process, that the processing for each record tends to take a long time (like creating a Sales Order or Material via BAPI calls), and that you have a limited time window to process all of these records.
    Well, whatever your decision is, good luck.

  • Parallel processing for ABAP prorams in Process chain.

    Hi All,
    In one of the process chain, we have added the ABAP program. In Backend,the job is running as "BI_PROCESS_ABAP".
    I just want to know, same like DTP, can we keep parallel processing for the ABAP programs also. Please suggest.
    Thanks.

    Hello Jalina
    Also check with BASIS if the memory allocated to run this program has not overflowed and the selections you have in your ABAP program is in small chunks and use variants to run them in parallel OR series
    Thanks
    Abhishek Shanbhogue

  • Parallel process(ora_pnnn)

    ps -ef|grep ora_|grep DCC로 background process를 찾아보니,
    ora_pnnn_DCC가 8개가 나오더군요.(물론, init file에 parallel_min_servers=0 , parallel_max_servers=8 로 지정되어 있습니다.)
    ora_pnnn은 parallel process이고, init file에서 parallel_min_servers와 parallelserver_idle_time값을 확인해보면 된다라고 하는데...
    현재 사용 DB가 8i 버전으로 parallel_server_idle_time이 hidden parameter가 되었더라구요... 이 hidden parameter 값 확인을 어떻게 하나요?
    한가지 더, dba_tables/dba_indexes 컬럼 중 degree값은 무엇을 의미하는 것인가요? degree > 1 인 경우, parallel process와 관련이 있는 것 같은데, 잘 모르겠습니다.
    글 수정:
    sglim79

    ps -ef|grep ora_|grep DCC로 background process를 찾아보니,
    ora_pnnn_DCC가 8개가 나오더군요.(물론, init file에
    parallel_min_servers=0 , parallel_max_servers=8 로
    지정되어 있습니다.)
    ora_pnnn은 parallel process이고, init file에서
    parallel_min_servers와 parallelserver_idle_time값을
    확인해보면 된다라고 하는데...
    현재 사용 DB가 8i 버전으로 parallel_server_idle_time이 hidden
    parameter가 되었더라구요... 이 hidden parameter 값 확인을 어떻게
    하나요?
    한가지 더, dba_tables/dba_indexes 컬럼 중 degree값은 무엇을 의미하는
    것인가요? degree > 1 인 경우, parallel process와 관련이 있는 것
    같은데, 잘 모르겠습니다.
    글 수정:
    sglim79일반적인 parameter 확인하는 것과 동일합니다.
    SQL> show parameter parallelserver_idle_time
    로 확인하시면 됩니다.
    참고로, sys user 로 접속해서 아래 sql문을 실행하면
    사용할 수 있는 hidden parameter 리스트들을 모두 확인하실 수 있습니다.
    select ksppinm
    from x$ksppi
    where substr(ksppinm,1,1) = ‘_’
    degree 값은 degree of parallelism 를 말하며
    이 값이 degree > 1 인 경우
    table에 대해 설정되어 있기 때문에
    sql문에서 parallel hint 를 설정하지 않더라도
    parallel 로 실행됩니다.
    하지만, parallel hint 를 사용하게 되면 table에 설정된
    degree of parallelism 를 override 합니다.
    아래 내용은 테이블 생성 시에 parallel_clause 사용할 때
    주의해야 될 사항입니다.
    Notes on the parallel_clause
    If table contains any columns of LOB or user-defined object type, this statement as well as subsequent INSERT, UPDATE, or DELETE operations on table are executed serially without notification. Subsequent queries, however, will be executed in parallel.
    For partitioned index-organized tables, CREATE TABLE ... AS SELECT is executed serially, as are subsequent DML operations. Subsequent queries, however, will be executed in parallel.
    A parallel hint overrides the effect of the parallel_clause.
    DML statements and CREATE TABLE ... AS SELECT statements that reference remote objects can run in parallel. However, the "remote object" must really be on a remote database. The reference cannot loop back to an object on the local database (for example, by way of a synonym on the remote database pointing back to an object on the local database).
    참고로, 테이블 생성시에 degree of parallelism 를 사용하는 건
    바람직하지 않고, 필요한 sql문에 hint 를 사용하는 것을 권장합니다.

  • Parallel process Before Remote client copy

    i m going to perform remote client copy from production to sandbox how to enable parallel processing before that .
    and its is hugh client and i want to do it fast can i start it in Foreground and if yes what parameter i have to set to what value to do it in foreground

    Hi,
    As far as i know there is no tcode where you can set parallel processing, you can just select remote cleit copy or local client copy this methods have parallel processing .
    Regards,
    Vamshi.

  • Parallel process in process chains

    Hi All,
    I have created a process chain with two parallel jobs (for forecast run) in APO DP. whenever i'm checking it, it is showing me that <b>"Too many parallel processes for chosen server"</b>
    In the diagnosis, the message is "On the server  you have chosen, there are only 1 batch processes available. The process chain has been designed in such as way that 2 processes must be processed parallel".
    Do I need to maintain any settings.Please let me know.
    Thank you.
    Regards,
    Raj

    Hi Raj,
    What it is complaining about is that the number of batch processes(background processes) available on the system are only 1 and you have given it 2 background processes..now if the system only has 1 bckgnd process,, how will it run 2 processes ) ??
    You can check the number of background processes in SM50 and then modify the number of background processes in RZ10(start up profile)......Ask your basis guy to increase/check that???
    Thanks
    Abhi

Maybe you are looking for