Lower number of JDBC channels strategy

Hello Experts,
I have been asked to optimize this scenario:
There are 15 databases from which master data and sales data is queried and uploaded to BW using asynchronous interfaces with daily scheduled JDBC sender adapters. The original developers decided to segment the queries for each type of master data into 11 separate queries according to certain parameters, mainly to facilitate mappings to enrich the data.  There is a restriction: We cannot use stored procedures in the database, so the solution must be implemented using SQL Queries only.
As a result we have 15 databases x 10 master data objects x 11 subdivisions: 1650 different JDBC channels, plus some other channels for sales data. And there is one set of the repository objects necessary for each of those channels. So you can imagine the level of redundancy in the repository too.
What would be the best strategy to reduce the number of JDBCchannels (and possibly repo objects)?
Is there a way to implement some kind of dynamic or intelligent query?
Thanks in advance for your kind responses!
-Sam.

Hi Sam,
Since your landscape got 15 different database there will be minimum 15 JDBC communication channel as the parameters are different from each other.
The perferfect design will be a
JDBC (asyn- for triggering) > BPM> JDBC (syn - to get the required data from other DB)> Transformation (if required)> ABAP proxy ( syn to upload Master Data into SAP , here you can logically separate the backend transcations using different Blocks) ---> Send back the status to client(use JDBC asyn channel)
Regards,
Sunil.

Similar Messages

  • Monitoring total number of JDBC connections

    We have our application deployed in the Oracle 10g Application server, it uses Toplink 10g for the Persistence and OR mapping and the Oracle 9i database for data storage, the database connection pool is built and maintained by Toplink.
    We observed that on the administration screen for each container, there are 2 parameters, number of active database connections and the total number of JDBC connections.
    We did some load testing for the application and observed the following behaviour on the container.
    1. When the number of parallel users are 10, behaviour seems to be normal, the active database connections are less than 20(used by the connection pool built by Toplink) and the total number of JDBC connections is the same as the number of database connections.
    2. When the number of parallel users is increased to 50, we see that the active database connections is still less than 20, but the total number of JDBC connections just blowed up to 4000+ in less than 2 minutes and still growing. We have no valid explanation for this behaviour as the active sessions is still less than 20. Also we see no obnormal behaviour in our application log files.
    The questions i have are
    1. What could be the reason for the above abnormal behaviour?
    2. How this parameter "Total number of JDBC connections" for a container is actually measured?
    3. DOes this parameter gets affected by how we run the database i.e. in Dedicated server mode or Despactcher mode?
    Many thanks for any information on this topic..

    Perhaps your connection inactivity timeout is slightly too low, so that your connections are being closed and reopened at almost the same frequency. Try increasing the timeout.
    Good Luck,
    Chris

  • Determine number of selected channels for traditiona​l DAQ

    The blocks of "DAQmx Task" and "traditional DAQ Channel" look quite similar (see attachments). The DAQmx block ist an individual selection of channels and I am able to determine the number of selected channels.
    Now I am trying to determine the number of selected channels of a traditional DAQ, but the DAQmx property block does not work here. I did already try some blocks form the trad. DAQ palette but failed.
    Any idea?
    Message Edited by pgraebel on 07-21-2009 11:31 AM
    Solved!
    Go to Solution.
    Attachments:
    DAQ.png ‏2 KB
    DAQ_frontpanel.png ‏5 KB

    The new attachment is showing channels for traditional DAQ (upper) and DAQmx (lower). You can clearly see a selection of channels inside the traditional DAQ box.
    How do I determine the number of channels? The DAQmx way to do that does not work for the traditional.
    Attachments:
    Clipboard01.png ‏2 KB

  • How do I reduce the number of audio channels in the source or export settings?

    I'. trying to export my finished edit through the "movie" setting but keep getting the message that the number of audio channels to create in the exported file must be equal to, or less than the number of channels in the source. Reduce the number of audio channels in the source. Reduce the number of audio channels in the export settings. I am at a loss as to what this means and how I proceed with it prior to putting it to DVD. Please advise.
    JWooley

    What is your source, sequence settings and export setting. Which version of PP?
    Prefebly a screendump of the export settings box.
    (e.g. trying to export a mono track to 5.1)

  • How to put Stored Procedure in Receiver JDBC channel

    Hi all,Good Evening,Iam using a JDBC to JDBC scenario in which I have to move the data from database into XI and we all know that the Interfaces which require stored procedures on Oracle database server for publishing the data needs to be called in combination of BPM & Receiver JDBC adapter.
            In this method, a dummy interface will be created for triggering the process. This interface could be designed using any adapter which works on polling mechanism (sender JDBC/File). Dummy interface will invoke a small BPM designed for each business object. BPM will make a synchronous call to Oracle database by calling underlying stored procedure. Stored procedure will return the result set by using a cursor. BPM will send this result set to target application.
            Now my question is how to put a stored procedure in a receiver JDBC channel which need to collect the data from database when BPM makes a synchronous call.
           Because it is required in my scenario,can any one tell me how and where to put stored Procedure in JDBC receiver channel.
    Thanks in advance,
    Regards,
    Prajwal

    Your action should be EXECUTE for stored procedures in Message mapping.
    <StatementName5>
    <storedProcedureName action=u201D EXECUTEu201D>
        <table>realStoredProcedureeName</table>
    <param1 [isInput=u201Dtrueu201D] [isOutput=true] type=SQLDatatype>val1</param1>
    </storedProcedureName > 
    </StatementName5>
    action=EXECUTE
    Statements with this action result in a stored procedure being executed. The name of the element is interpreted as the name of the stored procedure in the database. If you use the optional <table> element, the value specified here is used as the stored procedure name. This enables you, for example, to define stored procedure names containing non-XML-compatible characters or characters that prevent them from being used in interface definitions in the Integration Builder/PCK.  If specified, <table> must be the first element in the block within <dbTableName>.
    The elements within the stored procedure are interpreted as parameters. They can optionally have the attribute isInput=u201C1u201C (input parameter) or isOutput=u201C1u201C (output parameter) or both (INOUT parameter). If both attributes are missing, the element is interpreted as an input parameter. The parameter names must be identical to those of the stored procedure definition.
    The attribute type=<SQL-Datatype> , which describes the valid SQL data type, is mandatory for all parameter types (IN, OUT, INOUT).
    http://help.sap.com/saphelp_nw2004s/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    /people/siva.maranani/blog/2005/05/21/jdbc-stored-procedures
    /people/sap.user72/blog/2005/10/15/jdbc-adapter-execution-mode-chained-or-unchained
    /people/luis.melgar/blog/2008/05/13/synchronous-soap-to-jdbc--end-to-end-walkthrough
    /people/sriram.vasudevan3/blog/2005/02/14/calling-stored-procs-in-maxdb-using-sap-xi

  • Problem in the receiver JDBC channel

    hi,
    I am facing some problem with the receiver JDBC channel which is trying to insert some data in ORACLE DB.  My sample input XML file is,
    <root>
    <statement>
    <table>EBILL_CUST_STATE_AGE_HDR2</table>
    <CUST_CODE>BA001</CUST_CODE>
    <CUST_ADDR>Rental Customer Name 1+Name 2street01+TEL: 0331694100
                           FAX:0331694103</CUST_ADDR>
    <CRD_LMT>1000000.00</CRD_LMT>
    <BG_AMT>1000000.00</BG_AMT>
    </statement>
    </root>
    Error stack is,
    Exception caught when executing statement for table/stored proc. 'EBILL_CUST_STATE_AGE_HDR2' (structure 'Statement_CUST_STATE_AGE_HDR2'):
    java.sql.SQLException: ORA-00917: missing comma
    Please help me in solving the issue ASAP.
    Thanks,
    Soorya

    Hi,
    It works like this
    <ROOT>
    <STATEMENT>
    <TABLENAME ACTION="INSERT">
    <TABLE>EBILL_CUST_STATE_AGE_HDR2</TABLE>
    <ACCESS>
    <CUST_CODE>BA001</CUST_CODE>
    <CUST_ADDR>Rental Customer Name 1+Name 2street01+TEL: 0331694100
    FAX:0331694103</CUST_ADDR>
    <CRD_LMT>1000000.00</CRD_LMT>
    <BG_AMT>1000000.00</BG_AMT>
    </ACCESS>
    </TABLENAME>
    </STATEMENT>
    </ROOT>
    Please refer the link.
    http://help.sap.com/erp2005_ehp_04/helpdata/EN/ae/d03341771b4c0de10000000a1550b0/frameset.htm
    Abid Mazhar

  • Errrror in sender JDBC channel  in rwb

    hi forum,
    in a JDBC to XI scenario,
    the sender JDBC channel, in rwb, shows error:
    Status: RED
    Short Log: Adapter has not provided any information for this channel
    Error information:  Exception: Channel with status unknown or Not Registered
    pls help, its in production system

    RAJ,
    these channels were always active an working fine,
    let me explain the problem in detail,
    we have three cluster nodes for XI system,
    so, in rwb, communiation channel monitoring, we can see the status of a channel corresponding to the 3 nodes seperately,
    here i can see that, for 2 nodes the channel is GREEN and working, but for one of the node, it gave the already mention error

  • I have this problem,    Tag 'A2B0': Number of input channels is not correct.     Tag 'A2B0': Number of output channels is not correct.     Tag 'B2A0': Number of input channels is not correct.     Tag 'B2A0': Number of output channels is not correct.

    i have this problem,   
    Tag 'A2B0': Number of input channels is not correct.    
    Tag 'A2B0': Number of output channels is not correct.    
    Tag 'B2A0': Number of input channels is not correct.    
    Tag 'B2A0': Number of output channels is not correct.
    I work with Capture One Pro 7, photo editor
    what can I do to solve this problem?

    You may have better luck asking your question here: Capture One 7.x Software for Mac
    OT

  • Retreiving data from 2 tables using a sender JDBC Channel

    Hi all,
    We got anew requirement where we have to select data from 2 tables and update fields in 2 tables at the sametime.
    I have a few queries regarding this.
    Can we retrieve data from 2 tables using select query in sender JDBC channel?
    If yes, how we can achieve this?
    Can we use inner/outer joins in the select query?
    Can we update field of 2 tables using the Update query in Sender JDBC channel?
    Your help is greatly rewarded.
    With Regards
    Sudha.

    Hi,
    Even i have the same requirement where data has to be read from 2 tables and later update the falg once done .
    SELECT query :
    SELECT t1.KUNNR,t1.SETT_KEY,t1.QUART_START,t1.QUART_END,t2.PAY_METH,t2.MAT_NDC,t2.AMOUNT   FROM TSAP_REBATE_MEDI t1  INNER JOIN  TSAP_REBATE_LINE t2  ON  t1.KUNNR=t2.KUNNR AND t1.SETT_KEY=t2.SETT_KEY  WHERE  t1.PROCESSING_STATUS = 'N' AND t2.PROCESSING_STATUS = 'N'
    This is working fine.
    Can somebody help me with update query with this. where flag PROCESSING_STATUS has to be updated with 'P'.
    I tried a lot but couldnt get the answer
    Br,
    Manoj

  • Maximum Number of JDBC Datasources

    Does anyone know if there is a limit or if there is a
    recommended max to the number of JDBC datasources that a standard
    version of CF8 can handle?
    We have approx. 500 on our server and occasionally the server
    restarts due to Out of Memory errors. This most recently happened
    when adding a new datasource through the CF Admin, which is what
    led me to asking this question.
    Thanks, Chris

    > Does anyone know if there is a limit or if there is a
    recommended max to the
    > number of JDBC datasources that a standard version of
    CF8 can handle?
    >
    > We have approx. 500 on our server and occasionally the
    server restarts due to
    > Out of Memory errors. This most recently happened when
    adding a new datasource
    > through the CF Admin, which is what led me to asking
    this question.
    A datasource is just a bunch of setting which get stuck in an
    XML file.
    THey don't have any RAM footprint in and of themselves.
    However, the more DSNs you have, it suggests the more DB
    traffic you have,
    and indeed probably more activity on the box.
    How much RAM have you got allocated to the JVM?
    Have you used FusionReactor or similar to monitor what's
    going on with the
    RAM the JVM has?
    Adam

  • JDBC channel with encryption

    Dear experts,
    I have a requirement to update a database in a SQL Server 2008 from a PI 7.0. The communication must be encrypted. I have found this article explaining how to do for an Oracle database:
    Link:http://wiki.sdn.sap.com/wiki/display/XI/EncryptioninscenariosinvolvingJDBCAdapterwithOracleDatabase
    I have already searched SAP notes and in the Microsoft portals, but I haven't found the parameters needed that I need. Has anybody ever created a JDBC channel to a SQL Server 2008 with encryption? Any guide of what I need?
    Thanks.

    Can you try with the below URL.
    String connectionUrl =
        "jdbc:sqlserver://localhost:1433;" +
         "databaseName=AdventureWorks;integratedSecurity=true;" +
         "encrypt=true;trustServerCertificate=true";
    http://msdn.microsoft.com/en-us/library/bb879949.aspx

  • Maximum number of File channels in PI system?

    Hi Experts
    We are replacing a tool into PI system in my company, and because of this we have to create around 350 File (FTP to Unix Fileshare) Sender/Receiver channels. Already there are 100+ File channels running in production system. Is there a limit for having number of File channels in PI system?
    please let us know if there is any parameter to check this limitation or ?
    Thanks for your help and quick response on this is appreciated.
    Thanks,
    Giridhar

    Hi Giridhar,
    Its more of a design approach than limitations of PI.
    There is no limitation of number of channels you create in PI. as a gentleman previously mentioned it might create performance issue as all the channels will be polling at a time to retrieve data.
    few suggestions:
    1. during design talk to the business team and try scheduling the channels. like every day 3hrs (morning 6am to9am) for few interfaces. and other business in evening 5 to 8 pm. (not everytime a business would be sending data. based on the region and other things they would have a time at which data transmission is high). -- this should be done in Prod only.
    2. Keep the size of each message to optimal size 1 to max 5mb so that messages get processed fast.
    3. configure the channels very proper with Connection mode : per file transfer .
    4. in advanced mode set "ftp.timeout" parameter. this will ensure thread is released one the data transfer is complete/or time exceeds.
    5. discuss with the business and set the max file size limit in file sender channel. ...etc
    there are many other things you can do to manage large amount of channels (especially file channels) in PI system. this will give optimal performance of PI system overall.
    Warm Regards,
    Senthilprakash.

  • I am not able to set high and low limits for each channel seperately using LabWindows/CVI

    I am using AI_StartAcquisition and AI_ReadAcquisition functions to acquire data using PCI 6025E DAQ card and iam using Lab/Wuindows/CVi5.0 software. But one of my transducer has its range in +/- 500 mV soi need to set the high low limits of each channel seperately for that i am using commond string function(cmd) but still i am not able to set the limits properly. Does anyone has any idea about this trouble

    You can set the gain on a per channel basis by using the lower level functions. (As opposed to the easy i/o functions.) For example, look at the "SCANsingleBufSync.C" NI-DAQ shipping example that uses the SCAN_Op() function. It's gain parameter is an array of gains that will allow you to change the input limits for each channel separately.
    -Russell

  • Your experience wanted: SE30: low number of calls, high nettime

    Hi,
    this question is to find out more examples based on your experience:
    During performance analysis with SE30 i came across the following in 2 cases:
    All options on the statements tab where set (internal tables, ...).
    The Hitlist showed a significant time consumer FM with
    - a low number of executions (e.g. 1)
    - a high gross time (e.g. 5.5 seconds)
    - a high net time (e.g. 5.4 seconds)
    A closer look (debugger, sourcecode) revealed this was due to:
    - implicit sort of a big internal table (sorted_table = unsorted_stanard_table)
    or in the second case:
    - call transformation (itab to xml with some ST programm)
    I would like to know if you are aware of more such examples of significant time consumers
    not showing up in the SE30 hitlist.
    Kind regards,
    Hermann

    Hi Anette,
    thanks for that hint. Indeed i haven't done that. However, neither the implicit sort, nor the call transformation shows up their times are included in Net of F2 and F1. This is how SE30 Hitlist looks looks like without any filters: (top lines only...)
    No.      Gross =        Net Gross (%) Net (%) Call                                              Program Name     Type Display filter group
      1 1.257.991    1.257.526      94,8    94,7  Perform F2                                        Z_GAHM_ITAB_TEST
      1    34.060  =    34.060       2,6     2,6  DB-Op. Fetch T100 #                               Z_GAHM_ITAB_TEST DB               DB
      1    21.190  =    21.190       1,6     1,6  DB-Op. Open T100 #                                Z_GAHM_ITAB_TEST DB               DB
      1     9.281        9.192       0,7     0,7  Perform F1                                        Z_GAHM_ITAB_TEST
      1 1.327.538        2.402     100,0     0,2  Submit Report Z_GAHM_ITAB_TEST                    SAPMS38T
      1 1.324.396          332      99,8     0,0  Program Z_GAHM_ITAB_TEST
      7       320  =       320       0,0     0,0  Storage Get Bytes= 100000                         Z_GAHM_ITAB_TEST                           M
      3       136  =       136       0,0     0,0  Storage Free                                      Z_GAHM_ITAB_TEST                           M
      1 1.322.927           85      99,7     0,0  Dynpro Entry                                      SAPMSSY0              S
      4       772           63       0,1     0,0  PBO Dynpro SAPMSSY0                               SAPMSSY0         Sys. S
      1        50  =        50       0,0     0,0  Load CUA Objects SAPMSSY0 1000                    SAPMSSY0         Sys. S                 Dy
      1        50  =        50       0,0     0,0  Storage Get Bytes= 100000                         Z_GAHM_ITAB_TEST                           M
      1        82           49       0,0     0,0  Perform INIT_1_PROG                               RSDBRUNT              S
    This is the QnD (quick and dirty) test program:
    REPORT  Z_GAHM_ITAB_TEST.
    data it like STANDARD TABLE OF t100.
    select * from t100 into table it up to 10000 rows.
    perform f1.
    perform f2.
      form f1.
        data it2 like Sorted TABLE OF t100 with non-unique key msgnr.
        it2 = it.
        endform.
          form f2.
      data: s type string.
      call TRANSFORMATION id
      SOURCE root = it
      RESULT XML s.
        endform.
    So either I'm doing something wrong or these times are just not measured and displayed. If these are noe measured / shown, I wonder if there are more such examples... .
    Kind regards,
    Hermann
    QnD programm corrected (RESULT XML s instead of RESULT XML = s)
    Edited by: Hermann Gahm on Apr 3, 2009 11:42 AM

  • Number of DMA channels

    如題,
    我手邊有9636/9633兩張卡,
    手冊上都是寫Number of DMA channels=5
    請問這個數量跟FIFO Target to host DMA是一樣的意思嗎?
    因為我設超過3個FIFO Target to host DMA,就會出現錯誤。
    還有FPGA的FIFO最大個數是多少?
    因為設3個FIFO Target to host DMA+2個FIFO Target scoped
    有時候可以過,有時不行,有時程式還會閃退,真是OOXX
    附件:
    2013-05-30_151309.jpg ‏45 KB

    http://www.ni.com/pdf/manuals/372596b.pdf
    Number of DMA channels
    http://digital.ni.com/public.nsf/allkb/22E2CE79F77​B27508625794C00188265
    http://digital.ni.com/public.nsf/allkb/470FF5EE8FD​677F58625760A007562B9
    您的應用為何?

Maybe you are looking for

  • How to move SQL database from one location to another location i.e. from C' drive to D' drive

    Hi, How to move SQL database from one location to another location i.e. from C' drive to D' drive ? please share some link. Thanks and Regards, Rangnath Mali

  • [JS] Move a Guide that has a ScriptLabel

    I am trying move a specific guide. The guide is on the master page and is named myGuide Here is what I currently trying, but it doesn't work. app.activeDocument.guides.item("myGuide").location = 2 Thanks in advanced for any help. Dan P.S. I will this

  • Client proxy to file(xml) scenario configuration

    I have done client proxy to file (xml) ,while executing abap code there is no error, but xml msg is not received in particular target directory. so i want to know about 1. What are the configuration required for client proxy to pi(with T.Code).      

  • Need help on charts

    Hello all, Does anyone know where I can find some info about charts? Because the wizard in word will not forfill my needs. For example. I want a bar graph with 3 series. The wizard provide only for 1 serie. I solved this by regrouping my xml but now

  • Outlook Express spell check language?

    After not using OutlookEexp. for a while, I now find that the language in spell check if French? How do I change to English ? TY