Performance in JDBC-Adapter

Hallo,
it is possible to become the time for processing in the JDBC-Adapter. I´m interesing for the time splitted in XI-handling and real data-base time to deliver the data.
In the RWB
--> Performance-Monitoring
--> data source: PMI
--> component: XIAdapterService/JDBC.af.xxx/I
--> the processing time is always 0.
Thanks in advance,
Frank

Take a look at this thread: Performance  Monitoring & Tracing in XI
I think you have to enable PMI monitoring in SXMB_ADM.
Alex

Similar Messages

  • Increase Performance on jdbc adapter.

    Hi guys,
    I have a jdbc scenario that is accessing two data bases (Oracle and DB2). I would like increase query performance! So, I would like to know if there are any configurations parameters that I need to adjust to get more performance.
    Is it possible put the jdbc adapter doing several queries on the same table at same time? If the jdbc have this possibility it is great, because in one instruction it could do several selects/updates and improve more performance…
    Any suggestions or documentation are appreciated.
    Thanks in advance,
    Ricardo.

    Hi,
    With Receiver JDBC adapter it is possible.
    create as many STATEMENT tags as needed with the required action , tablename, strcuture etc.
    With sender JDBC adapter, you can mention only one Select Query and multiple queries will not be possible.
    <i> have a jdbc scenario that is accessing two data bases (Oracle and DB2)</i>
    Also, for this, you need to use separate JDBC adapters as each adapter will be specific to a database and the DB installation. You cannot use a single JDBC adapter to access multiple databases.
    Regards,
    Bhavesh

  • JDBC Adapter Performance

    Hi Experts,
    We have nearly 60 interfaces will read/write from/on DB and AS400 tables.
    We are facing so many problems in production system. Everyday the messages are strucking at Adapter Engine. All messages are in "To be delivered" stage. If we can stop some cc's then it is processing slowly even the Database is using 60% usage.
    We tried to create logical views(Instead of Physical views) on DB and AS400 even the performance has not increased.
    We have used "prefetch=false" at "connection" on JDBC adapter but no use.
    We can use "Disconnect after each message processed", but my client is not agree with this option.
    We don't want to increase the connections to DB and AS400.
    Is there any parameters needs to be updated at JDBC Adapter?
    Help needed...
    Regards,
    Rams.

    Hi,
    The below links may help u.
    JDBC ADAPTER
    http://help.sap.com/saphelp_nw04/helpdata/en/7e/5df96381ec72468a00815dd80f8b63/content.htm
    /people/saravanakumar.kuppusamy2/blog/2005/01/19/rdbms-system-integration-using-xi-30-jdbc-senderreceiver-adapter
    /people/sap.user72/blog/2005/06/01/file-to-jdbc-adapter-using-sap-xi-30 - File to JDBC
    JDBC - http://help.sap.com/saphelp_nw2004s/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm
    multiple tables with JDBC - http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
    JDBC Response /people/swaroopa.vishwanath/blog/2006/12/28/send-rfc-to-sap-xi-150-asynchronous
    Regards
    Pullarao

  • JDBC adapter - polling application - is this efficient ?

    Hi,
    I have a scenario that is requesting data via the JDBC adapter from an SQL server system and sending the resultset into BW.
    This is polling every 10 minutes with the following statement :
    select * from itecs_dummy.dbo.action
    where current_timestamp between
    convert(datetime, (convert(varchar(13), GETUTCDATE()) + '23:40:00.000')) and
    convert(datetime, (convert(varchar(13), GETUTCDATE()) + '23:50:00.000'))
    This basically will return zero records 99% of the time as it check the system time is between 23:40 and 23:50
    Eventually I will have around 30 JDBC communication channels performing the same frequency of polling but read data from different tables (the system time check will still be the same for each select)
    Is this highly inefficent in XI terms ?
    Would it not be better to write a simple ABAP to request the data from BW to the JDBC adapter at a fixed time each day therefore cutting out the unnecessary polling ?
    Kind regards
    Colin.

    Hi Colin,
    The method you're using is really the only simple solution to workaround XI's lack of a scheduler.
    We have about 10 JDBC interfaces live for a year at a large XI client using this workaround. They're polling every 5 minutes and we've never had an issue.
    We decided to use this method based on the following:
    1) The load on the DB wouldn't be significant. Even if you have a complex DB select statement, the DB optimizes the call and should run fast if the 'where' clause fails. You can check this with your DBA.
    2) The load on XI would be greater if we implemented this in another way. Any other solution would likely require BPM which is much more intensive for XI then these JDBC calls.
    We chose 5 minutes instead of 10 because of the following scenario which could occur although it's not likely:
    - XI polls at 23:41, message is sent
    - XI J2EE goes down at 23:42 and restarts
    - XI J2EE back up at 23:47
    - XI polls at 23:47, message is sent
    So in this scenario, you could get 2 messages sent. Since our J2EE stack takes longer than 5 minutes to restart, we resolved this issue by using a 5 minute polling interval.
    I think the more elegant and precise way is to make a call from ABAP, but it would be more complex, and put more load on XI due to the use of BPM. If you take into account the above items I think your current approach is the best.
    Thanks,
    Jesse

  • Inserting Multiple Rows into Database Table using JDBC Adapter - Efficiency

    I need to insert multiple rows into a database table using the JDBC adapter (receiver).
    I understand the traditional way of repeating the statement multiple times, each having its <access> element. However, I am just wondering whether this might be performance-inefficient, as it might insert records one by one.
    Is there a way to ensure that the records are inserted into the table as a block, rather than record-by-record?

    Hi Bhavesh/Kanwaljit,
    If we have multiple ACCESS tags then what happens is that the connection to the database is made only once. But the data is inserted row by row.
    Why i am saying this?
    If we add the following in JDBC Adapter..logSQLStatement = true. Then incase of multiple inserts we can see that there are multiple
    <i>Insert into tablename(EMP_NAME,EMP_ID) VALUES('J','1000')
    Insert into tablename(EMP_NAME,EMP_ID) VALUES('J','2000')</i>
    Doesnt this mean that rows are inserted one by one?
    Correct me if i am wrong.
    This does not mean that the transaction is not guaranted. Either all the rows will be inserted or rolled back.
    Regards,
    Sumit

  • Sender JDBC adapter...problem

    Hi,
    the real problem is Sender JDBC adapter sends data in following format.
    <?xml version="1.0" encoding="UTF-8"?>
    <resultset>
      <row>
         <Associate_ID>16444</Associate_ID>
         <Associate_Name>Sudhir</Associate_Name>
         <Status>false</Status>
      </row>
      </resultset>
    But in Design time mapping...structure of source message will be like
    <?xml version="1.0" encoding="UTF-8"?>
    <ns5:DB2File_DB_MT xmlns:ns5="urn:db2file">
      <Resultset>
        <Row>
          <Associate_ID>16444</Associate_ID>
          <Associate_Name>Sudhir</Associate_Name>
          <Status>false</Status>
        </Row>
      </Resultset>
    </ns5:DB2File_DB_MT>
    How does this tag ... <ns5:DB2File_DB_MT xmlns:ns5="urn:db2file">  get generated in runtime
    and apart from 1 to 1 mappings b/w the three fields above in the row tag...wt other mappings to be performed
    Pls help...
    Sunita

    Hi Sunita,
    what i understood from your query is namespace tag is coming while message mapping. This namespace can be avoided in the message type if you keep the XML namespace field empty while creating message type. But i afraid you have to do the message mapping again.
    Regards,
    Satish

  • Sender JDBC adapter slow processing in Production

    Hi All,
    We are facing an issue with processing time for Sender JDBC adapter.
    We tested a scenario in Quality for JDBC to Proxy. In quality the Sender JDBC adapter is taking around 30-50 sec. to send data to PI, but in production the JDBC adapter is taking more then 7 mins to send the same amount of data from DB to PI.
    We have checked the setting in PI; it is same in both the systems (Q and P).
    Even the parameters for both the servers maintained same.
    Can any body please suggest the reason of this behavior and any workaround?
    Regards,
    Rahul

    Based on my experience, these are the things that could be used to improve JDBC performance
    1. You may increase the thread count for JDBC related queues. This has to be done in accordance with SAP Note 1084161.
    2. There is parameter in JDBC communication channel called Maximum Concurrency. It signifies that one communication channel can make how many connections to database. This is 1 by default and could be increased to some values like 3-4.
    3. In the Visual Admin/ NWA, there is a parameter called as queueParallelism.maxReceivers which defines the number of parallel worker threads for one receiver channel instance. This should be done following SAP Note 1136790. This can be done along with the first point.
    Regards,
    Prateek

  • File adapter/JDBC adapter processing

    Hi,
    I have scenarion as below
    > XI gets an IDOC message from R/3
    > Based on that message XI uses a fileadapter to call a UNIX shell script in the other system (system B - non SAP)for pre-processing.
    > The script call returns no errors.. So, XI/BPM now uses the JDBC adapter to convert the IDOC into a JDBC insert.
    > On successful inserts, the process again uses a file adapter to perform a post-processing script call
    Is the above scnarion possible using JDBC/File adapters in XI/BPM ?
    Thanks
    mad

    Hi Maddux,
    Is it a pre-codintion to execute the unix shell script before inserting the data using JDBC adapter?
    FYI, If there is no pre-condition and you want to send the data to two different systems, you can configure multiple receivers(both file and JDBC) in your Receiver Determination object without BPM.
    -Sam Raju

  • UPDATE statement in Receiver JDBC adapter

    Hi all,
    I would like to use UPDATE statement in my receiver JDBC adapter and would like to know how this UPDATE statement works in following case.
    1) If i have 10 records to be updated in database, whether Commit happens at the end of all 10 records updation OR it will be for every record update?
    Regards

    Hi,
    Then let me construct my query this way...
    i have 10 records that needs to be updated to database, say For Ex: 7 records are updated successfully and 8th record has issue in updating the table.
    In this case i would like to ROLLBACK entire 10 records with out committing any thing.
    So if i use your 2nd option, it should perform as i expected right?
    Regards

  • High volumes on receiver JDBC adapter

    Hi,
    We have a RFC ->JDBC scenario where the RFC pulls huge amounts of data from R/3 and sends to XI.
    XI needs to upload this data into 5 different Db tables.Each table contains 3000-8000 records with each record containing 10-15 fields.
    When we try to run this scenario, due to high volumes of data  the JBDC adapter hangs and msgs were in 'holding/delivering' status for long time.
    Please advice on possibilities of handling this within XI.

    Hi,
    We changed the design and now we have only 'INSERT' and we don't have concerns with table refresh now.
    I am splitting the records in XI mapping as bunches on 1000 each. But I found one of the tables have more that 1lakh records.
    The data volume that we received in RFC is 150000 records(45MB). It took 7.5 mins to process this msg in Integration Engine.
    But the messages delivery into Db tables (receiver JDBC adapter processing) is very slow.At maximum it can process 250 records in minute.
    Please provide your inputs on this design. Is it Ok to accept 45MB message into XI at one shot? Even though the message got processed(splitted) in IE, they are processing in AE for long time. I believe this will have impact on other interfaces that use JDBC adapter.
    Please provide your suggestions on how to improve the design/performance of this interface.
    Thanks!

  • Providing Query statement in JDBC  adapter

    HI experts,
    Everybody knows we can provide Query to JDBC adapter by two ways...
    1st way is by constructing query as XML structure..
    2nd way is by giving exact query (Select * from tablename )by SQL_query in access ...
    I like to know the performance of these two ways...
    Regards,
    Sasitharan

    In XI version 3.0 there is only one way to do lookups - manually in the form of an exit in the mapping process. A user exits must be written in Java.
    There are a couple of considerations about performance that must be kept in mind besides just the question of “SQL Statement” while implementing a database lookup using a JDBC adapter:
    1.     The mechanism for database lookup
    There are 2 approaches – Direct, Indirect
    In Direct approach you poll the external table hence this may lock database for access to other users, also it is an intrusive approach. In indirect approach database table is replicated and the replicated table is accessed. The second approach is recommended for performance reasons.
    2.     Does the data to be looked up change frequently
    If data does not change frequently than pull in data and keep a copy locally – as this will improve performance
          2. It is possible to access an external database from within the mapping step of XI utilizing
    A.     regular JDBC constructs
    B.     utilization of J2EE JDBC Connector
    Approach 2 is recommended as it is more efficient because of Connection pools.
    There is no concept or need to XML code here. The Java code that executes the lookup, would call the sql statement, this java code can  be referenced from within a user-defined function in the graphical mapper or from within XSLT.
    Hence you need SQL statement in J2ee JDBC Connector to get the best performance.
    Refer to URL
    http://searchsap.techtarget.com/tip/0,289483,sid21_gci1246926,00.html#
    to understadn how to configure the JDBC Connector Service to perform database lookups
    Let me know if this helps.

  • JDBC adapter performnce in PI

    Hi,
    Regarding JDBC adapter in PI 7.0 and performance I have below 2 queries:
    1. What are the different ways in which we can measure the performance of various components (IS, AE etc) in a JDBC scenario.
    2. How to determine what is the optimum number of JDBC calls that can be made in a specific time period without affecting PI performance.
    Appreciate your response on these queries
    Thanks,
    Girish

    Hi
    1. What are the different ways in which we can measure the performance of various components (IS, AE etc) in a JDBC scenario.
    It depends on various parameters for instance the kind of mapping involved (if it is xslt mapping time taken would be more than a graphical mapping), database you are trying to connect. In general there is a document on SDN that talks about the XI performance and tuning.
    2. How to determine what is the optimum number of JDBC calls that can be made in a specific time period without affecting PI performance.
    This would depend again on the database being used. Also various parameters in XI like "Disconnect from the DB after each message process".
    Regards
    Monika

  • XI JDBC adapter isolation level serializable - Not working properly????

    Hi all,
      I have a JDBC sender adapter which perform in Transaction isolation Method serializable(Advance Mode settings) but it seems that it updates the wrong records witch results in records no to be send in XI.
    the select statement I am using is
    select OwnerCode,DeliveryNo , ErpWarehouseCode, TrtCode, PostGIdate, PostGIdateChangedFlg, DocumentNo, DocumentDate, CancelFlg,  PostGIFlg, TacticalRouteCode, LicenceNo, PackagesQty, CusPickUpFlg, CusPickUpChangedFlg,  RouteChangedFlg, DlvPriority, PickingDate, PickingDateChangedFlg, DlvPriorityChangedFlg, OdtLineNumber, ItemCode,  WmsStatusCode, Lot, ExpirationDate,ProductionDate, TraUnitQty, TraUnitCode, Qty, MainUnitCode, ConvFactor, ConvDivisor, InitQty, DocQty, DeleteLineFlg, ParentLineNumber, ItemType, CusPickUpDescr, CusPickUpChangedFlg2  
    from wmsConfDlv2ERP
    where flg = 0 and
             DeliveryNo in ( select top 1 DeliveryNo from wmsConfDlv2ERP where flg = 0 )
    and the update is
    UPDATE wmsConfDlv2ERP set flg = -1
    where flg = 0 and
              DeliveryNo in ( select top 1 DeliveryNo from  wmsConfDlv2ERP where flg = 0  )
    Any ideas? The DB is an MS SQL 2005... Thanks.

    Hi,
    As far as I know, the JDBC adapter does not support nested queries (just my experience). I always used SPs to properly handle the situation and flow logic.
    VJ

  • Regarding JDBC Adapter

    Hello Experts,
        If i want to perform File to JDBC Scenario, Is it require any pre-requisite for JDBC Adapter configuration.
    Thank you

    Hi ravi kumar chandragiri  ,
    The following websites will answer u'r question:
    JDBC is a technical Adapter provided by SAP.
    Configuring the Sender JDBC Adapter
    http://help.sap.com/saphelp_nw04/helpdata/en/7e/5df96381ec72468a00815dd80f8b63/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/1d/756b3c0d592c7fe10000000a11405a/content.htm
    Configuring the Receiver JDBC Adapter
    http://help.sap.com/saphelp_nw2004s/helpdata/en/b0/676b3c255b1475e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/6d36d51d-0b01-0010-b3aa-9cb313b63cf4
    SAP XI Utilize SAP Adapters to connect to heterogenous systems
    https://wwwn.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3fc4bd90-0201-0010-68bd-ab931b06f9c2

  • JDBC adapter connection

    Hi Gurus,
    My user has a web based system where goods receipt details are entered and it gets updated in mySql DB. In return the user would gather information from sap and displayed back on web at real time. They do not have option for web services or http . They do not want to customize this system.
    Since business system is DB,
    Can I implement the JDBC connection and poll the DB continuously to make synchronous JDBC <-> PROXY scenario. Can I achieve the real time update in DB. Is this going to affect the performance ?
    Kindly suggest.

    Since the JDBC adapter will retrieve the information based on a "SELECT FROM ... WHERE", it would be nice to have some information that could be updated with a flag "been read" or "is changed", which can be updated also by the JDBC sender (you have a query and an update action, please check the help page below). You could also have a query to gather by the timestamp.
    http://help.sap.com/saphelp_nw04s/helpdata/en/7e/5df96381ec72468a00815dd80f8b63/content.htm
    However, it seems you are going to have a 1 second polling on the database? This can have some impact on the performance depending on the database or if you have many XI scenarios running. Is this the only option you have?

Maybe you are looking for

  • CS2 Update Installation Problems

    Hi, i bought a new PC (with Vista). Now i want to install Adobe CS2 Update, but my CS1 Version CD (also a Update) won`t be found by the system. I tried to install CS1 Update, but my Full-Version of Photoshop won´t be found by the system. How should i

  • Batch Editing in Photoshop CS4

    Hey guys, i want to batch edit image from aperture using CS4. Specifically I have an action set up that changes size an applies logo. My query is, how to I tell CS4 that i want to batch images from Aperture? Without exporting to desktop or whatever f

  • Exception with javax.xml.parsers.FactoryConfigurationError

    I have a code segment that is working in a Java standalone application environment. I've taken the same segment and ran it in Lotus Domino's environment, with the following error, javax.xml.parsers.FactoryConfigurationError: java.security.AccessContr

  • Receiver File/FTP Adapter

    Hi, I want to take in a message packet and output it to a file. You can dump the XML out by simply choosing the "File" message prototcol. However, I don't want the XML. I want the data. For example if the inbound interface message type is:  <?xml ver

  • Problem to create a web album

    Hi, I'm using LR3 for a couple of weeks and I'm facing problems to create successfully a new webalbum. After Keying in the ftp-server details LR3 is unable to upload the pic's to the server. I've tried to upload the pics via Filezilla which works per