When we should use JMS based proxy services and when JMS Adapter in OSB
Hi,
Can somebody explain me when we could go for JMS Adapter and when we should go for JMS based service in OSB?
The one scenerio i can think of is when my provider/consumer is using jms provider other than WLS jms provider we should use jms adapter.
Edited by: user12883209 on Jan 5, 2012 5:29 AM
I don't think there are clear guidelines available, however here is my view.
1) OSB 11gR1 is not certified with Oracle JMS Adapter. It is certified with Oracle FTP, Database, AQ and application adapters.
http://docs.oracle.com/cd/E21764_01/doc.1111/e15867/interop.htm#OSBAG1403
2) In addition of the Weblogic JMS, OSB can also integrate with following provider without using adapter.
- WebSphere MQ
- Tibco EMS
3) if you need to integrate JMS with BPEL Process or Oracle SOA suite composite, it has built in support for generic Oracle JMS adapter. Oracle generic JMS adapter can integrate with AQ JMS (JMS providers OJMS 8.1.7, 9.0.1.4, and 9.2), TIBCO JMS, IBM Websphere MQSeries (IBM MQSeries JMS 6.0), Weblogic JMS, Apache, and Active MQ
http://docs.oracle.com/cd/E14571_01/integration.1111/e10231/adptr_jms.htm
4) If you need to integrate OSB with Weblogic JMS, WebSphere MQ, Tbco EMS it does not need JMS adapter.
Hope this helps !!!
Jayesh Patel
http://jayesh-patel.blogspot.com/
http://www.yagnasys.com/
Similar Messages
-
OSB example calling multiple business services using a single proxy service???
Hi,
I have three business services created using http urls i.e.
1. LoginBS
2. GetListBS
3. LogoutBS
My requirement is to get a list of names from GetListBS using a single proxy service and to call GetListBS I have to first call LoginBS then GetListBS i.e. after authentication and then finally logout.
Kindly help with a detailed example for this and I am new to OSB.
Thanks,
VikHi Eric,
Thanks for the response. We figured that it is possible to call multiple services with Split Join. However, we ran into the issue you described. We had a blocking call and had to wait until each of the services returned a response.
However, we needed a Async model for our design and felt that this might not be a right fit.
We are now looking at implementing the publish option with QoS configured as this fits our usecase better. Thanks for the help again.
Rudraksh -
How to use cache on Proxy service in OSB
Hi all,
I need to use cache on proxy service. I am new to OSB, I have searched for this on net but unable to find.
Please come up with some docs or links going through which I can achieve this.
Thanks,
Phani.i assume you already checked the result caching feature which can be used on the business service?
http://docs.oracle.com/cd/E14571_01/doc.1111/e15867/configuringandusingservices.htm#OSBAG170 -
How to maintain messageId when using proxy services and mq??
Hi
I am a novice to oracle service bus and trying few transformations by configuring proxy services.
Let me explain the problem I'm facing:
I have created a business service and a proxy service and configured them in a synchronous way.
I'm using MQ as a transport protocol....and message I'm passing and transforming is in xml format.
these proxy and business services are functioning properly.....but at the another end i have created another pair of busines and proxy service which will be taking request message from earlier business service and putting it into another queue which is reference as a response queue by earlier proxy service.
my second pair is also working properly. now the problem is that it is not maintaining message Id during all the routing.
and that's why im not able to read the response message from the response queue because of message ID mismatch.
Please help!!
tell me if i have to do change any particular configuration settings to maintain the message id for my request message throughout the flow.
Thanks
Edited by: ChetakCs on Jun 14, 2010 7:19 AMPost this in OSB forum:
SOA Suite -
OSB10gR3:High-availbility of file protocol based proxy service
Hi All,
I just want to know the options available for creating two proxy services polling on the same location using File transport/ making a file based proxy service independent of managed servers.
Actually in OSB doc's File Transport Configuration page, it is mentioned that
Managed Server This field is available only in a clustered domain. Select the Managed Server to act as the polling server. All of the Managed Servers can process the message, but only one can poll for the message. ( [Click here|http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/consolehelp/proxyservices.html#wp1272642] to check)
So what if the server on which proxy is deployed for polling, goes down? How can we handle such situation?
Your opinion?
Thanks & Regards,
AnujFile like FTP and Email transports are singleton services. That is, the processing can take place in any node of the cluster, but the polling only takes place in one. The reason for this is simple, duplicate invocations. If you have 4 nodes in your cluster and they are all polling, when a new file is created, your proxy could be invoked 4 times for the same file.
You could make two proxy services and have them poll the same directory but on different nodes. If the nodes share the same file system, your business service would have to be able to deal with duplicate messages. If it's not the same file system, the application that creates the files would need to keep track of the status of the servers in the cluster to decide where to put the files.
I think the best option would be to look into weblogic's cluster features: leasing and server migration. You could configure weblogic to automatically migrate the failed server to another machine (there's also service migration, but I don't think weblogic is aware of osb level services). Of course you would need to use a file system that's available to both the "primary" and the "backup" servers. Have a look here:
http://download.oracle.com/docs/cd/E12840_01/wls/docs103/cluster/migration.html
You could also create a WLST script to modify your proxy service (change the managed server) in case of failure. There should be a way, maybe through JMX or using the WLDF, to get a notification when the server goes down so you can execute your script. Again, you need a shared file system.
Hope that helps. And if you come up with a good solution let us know! -
Unable to process huge files in SFTP BASED PROXY SERVICE
Hi,
I credted osb project which will have sftp based proxy and sftp based business service.After completing the development i tested the fie transfer through WINSCP ,but my sftp based proxy was picking the files but i am unable to see the files in the output directory for huge files,for small file it is coming after aquite long time .please assist me .If you enable content streaming then you cant access the file/message content within the Proxy service and can not perform actions like Replace or perform transformations on the content. Use streaming for pass through scenarios only. If you want to read a large file and also perform transformations on content I would recommend using JCA Adapter for FTP and try reading records from file in batches, a few records at a time. Just so we know the requirement better, what is the file size and what is the format of the content?
-
OBPM BPM Studio support for SOAP 1.2 based Proxy services (OSB)
Hi,
I tried to import proxy services from OSB (as external resource). The proxy service is based on the SOAP 1.2 WSDL standard. When BPM studio introspective SOAP1.2 based proxy services, it is givng the following warninigs. Bacause of this i am unable to create a service object. Please help.
Regards,
Pandu
Introspecting...
downloading /sbresource?PROXY/RoutingAndMessagingService/proxy/OnRampService
parsing /sbresource?PROXY/RoutingAndMessagingService/proxy/OnRampService
[Warning] unknown tag 'header' from 'http://schemas.xmlsoap.org/wsdl/soap12/'.
[Warning] unknown tag 'header' from 'http://schemas.xmlsoap.org/wsdl/soap12/'.
checking /sbresource?PROXY/RoutingAndMessagingService/proxy/OnRampService
parsing http://localhost:7002/sbresource?PROXY%2FRoutingAndMessagingService%2Fproxy%2FOnRampService%3ASCHEMA%2FSchemas%2Finternal%2Fwsdlmessages%2Futilityservices%2Froutingandmessagingservice%2FRoute
analyzing http://localhost:7002/sbresource?PROXY%2FRoutingAndMessagingService%2Fproxy%2FOnRampService%3ASCHEMA%2FSchemas%2Finternal%2Fwsdlmessages%2Futilityservices%2Froutingandmessagingservice%2FRoute
parsing http://localhost:7002/sbresource?PROXY%2FRoutingAndMessagingService%2Fproxy%2FOnRampService%3ASCHEMA%2FSchemas%2Finternal%2Fwsdlheaders%2FHeaderSchema
analyzing http://localhost:7002/sbresource?PROXY%2FRoutingAndMessagingService%2Fproxy%2FOnRampService%3ASCHEMA%2FSchemas%2Finternal%2Fwsdlheaders%2FHeaderSchema
parsing http://localhost:7002/sbresource?PROXY%2FRoutingAndMessagingService%2Fproxy%2FOnRampService%3ASCHEMA%2FSchemas%2Finternal%2Fwsdltypes%2Fcommon%2FHeaderTypes
analyzing http://localhost:7002/sbresource?PROXY%2FRoutingAndMessagingService%2Fproxy%2FOnRampService%3ASCHEMA%2FSchemas%2Finternal%2Fwsdltypes%2Fcommon%2FHeaderTypes
parsing http://localhost:7002/sbresource?PROXY%2FRoutingAndMessagingService%2Fproxy%2FOnRampService%3ASCHEMA%2FSchemas%2Finternal%2Fwsdltypes%2Fcommon%2FSimpleTypes
analyzing http://localhost:7002/sbresource?PROXY%2FRoutingAndMessagingService%2Fproxy%2FOnRampService%3ASCHEMA%2FSchemas%2Finternal%2Fwsdltypes%2Fcommon%2FSimpleTypes
http://www.michaelpage.com/wsdltypes/common/SimpleTypesv1.0 compiled
http://www.michaelpage.com/wsdltypes/common/HeaderTypesv1.0 compiled
http://www.michaelpage.com/wsdlheaders/Headerv1.0 compiled
http://www.michaelpage.com/wsdlmessages/utilityservices/Routev1.0 compiled
[Warning] The binding 'OnRampServiceSOAP' with type 's2:OnRampServicePort'is unsupported. Components will not be generaded for this binding..
'http://www.michaelpage.com/wsdl/utilityservices/routingandmessagingservice/OnRampServicev1.0/' was parsed.
Analyzing dependecies for module 'WS.OnRampService'...
Analyzing dependecies for module 'WS.OnRampService'...
Analyzing Components
Storing Instrospected Types
Introspection completed. Errors: 0, Warnings: 3.Pandu,
OBPM 10g doesn't support SOAP 1.2 binding.
Edited by: 4dyomi on Nov 20, 2009 11:41 AM
Edited by: 4dyomi on Nov 20, 2009 11:42 AM -
What is the use of creating proxy services using WSDL.
Hi
Am a beginner in ALSB and i have a basic question. Business services are created using WSDL,thats sounds logical as we need to invoke the actual backend services .
Proxy services are connected to business services and what is the need that it can be e created using WSDL.
What is the use of creating proxy services using WSDL.Hi,
I beleive you are confused because of the apparent inclusion of transport information in WSDL (that is the host:port/endpoint where the service is hosted). However, if you refer to the w3c specification of WSDL1.0 ([url http://www.w3.org/TR/wsdl]www.w3.org/TR/wsdl), you will find that WSDL has three separate sections:
1. The schema information that describes data element(s): specified in types
2. The message information ie message and port sections that specify the parameters and the operations
3. The service section that specify the actual protocol and endpoint binding.
Ideally, a WSDL can be broken down into these three separate components. Any WSDL containing the first two is called an abstract WSDL and is used for a top-down approcah for web services, and if the third part is used, then you get a concrete WSDL, containing invocation end-point also.
Comming back to your question one can typically use an Abstract WSDL for creating proxy service. This way, the service requester and integration can go on two separate threads where the common denominator or agreement between these two parties in terms of operation name and data element are imposed using the WSDL.
Thanks and Regards
Vivek Nandey
BEA Certified Developer for Integration Solutions -
Polling messages based on priority in BPEL using JMS adapter
Hi All,
Is it possible to poll the messages based on the priority in BPEL using JMS adapter?
I could set the priority for the messages but while polling it is picking the messages in FIFO(First in First out) order. But I want the messages to be picked on priority.Any help is appreciated.Do you only want to pick up messeges with a certain priority? So anything larger than say priority 2?
You can try this: Oracle JCA Adapter for JMS - 11g Release 1 (11.1.1.5.0)
Message SelectorThis field is also optional. It filters messages based on header and property information. The message selector rule is a Boolean expression. If the expression is true, then the message is consumed. If the expression is false, then the message is rejected.For example, you can enter logic, such as:
JMSPriority > 3. Based on this, messages with a priority greater than 3 are consumed; all other messages are rejected.
JMSType = 'car' AND color = 'blue' AND weight > 2500
Country in ('UK', 'US', 'France') -
Throttling using JMS Adapter poller threads
Hi,
We are trying to realize the throttling using JMS Adapter poller threads mechanism
I came across this http://docs.oracle.com/cd/E14571_01/core.1111/e10108/adapters.htm (15.5 Oracle SOA JMS Adapter Tuning )
adapter.jms.receive.threads
Here is my configuration. I tried both the options listed below but none works for me.
option 1 - here property is of type string
<service name="JMSDelayMsgRead" ui:wsdlLocation="JMSDelayMsgRead.wsdl">
<interface.wsdl interface="http://xmlns.oracle.com/pcbpel/adapter/jms/JMSDelayMessage/JMSDelayMessage/JMSDelayMsgRead#wsdl.interface(Consume_Message_ptt)"/>
<binding.jca config="JMSDelayMsgRead_jms.jca">
<property name="adapter.jms.receive.threads" type="xs:string" many="false">4</property>
</binding.jca>
</service>
option 2 - Here property is of type integer
<service name="JMSDelayMsgRead" ui:wsdlLocation="JMSDelayMsgRead.wsdl">
<interface.wsdl interface="http://xmlns.oracle.com/pcbpel/adapter/jms/JMSDelayMessage/JMSDelayMessage/JMSDelayMsgRead#wsdl.interface(Consume_Message_ptt)"/>
<binding.jca config="JMSDelayMsgRead_jms.jca">
<property name="adapter.jms.receive.threads" type="xs:integer" many="true" override="may">4</property>
</binding.jca>
</service>
I tried minimumDelayBetweenMessages parameter for throttling (which is based on time delay) and it works as expected but poller threads mechansim is more suitable for my situation.
Here is my environment details
I'm on SOA 11.1.1.4
JMS Adapter consuming from a Topic (IBM MQ)
Durable Subscription
Can any one help me get throttling using poller threads working?
Please let me know if you need further details about my configuration / logs etc.
I posted this in two other forums but didn't get any responses on them so posting it here. I apologize for the repetition of this post in multiple forums.
Thanks & Regards
shashiHi Raks,
Check this note for JNDI configuration..
802754
"If a 3rd party JMS provider should be used then usually the "Name of JNDI initial context factory" must be adjusted. I.e. com.sap.engine.services.jndi.InitialContextFactoryImpl must be replaced by some.other.vendor.jms.jndi.InitialContextFactory In addition it is necessary to deploy the jar that contains the some.other.vendor.jms.jndi.InitialContextFactory with the aii_af_jmsproviderlib.sda SDA file. In addition, you must extend the server/provider.xml deployment descriptor in the relevant way. Refer to Chapter 11 of the XI 3.0 Configuration Guide for more information"
You need to find out class "Name of JNDI initial context factory" for tibco as mentoned in the note and deploy the corresponding JAR file.
Also check this link for JNDI configuration parameters in the JMs adapter..
http://help.sap.com/saphelp_nw04/helpdata/en/c1/739c4186c2a409e10000000a155106/content.htm
Regards
Anand -
How to get the incoming file name using JMS adapter and SOAP adapter
Hi Everybody,
In one of my interface i need to get the file name of incoming flat file using JMS adapter at sender side. and then i am using xslt to convert it to IDOC and then posting to SAP IDOC.
my incoming filname are in this form price<DateTimestamp>.txt. when i do the tranformation this incoming file name should be part of one element in the IDOC which i am posting.
EX:
<IDOC
<REF>price<DateTimestamp>.txt</REF>
</IDOC>
Hope it is clear to everybody. I need your suggestion how i can capture this incoming file name and send it as part of IDOC.
Thanks
rajIf they are passing it in message id or correlation id,
you can access it using
<xsl:variable name="dynamic-conf"
select="map:get($inputparam, 'DynamicConfiguration')" />
<xsl:variable name="dynamic-key"
select="key:create('http://sap.com/xi/XI/System/JMS', 'DCJMSMessageID/ DCJMSCorrelationID')" />
<xsl:variable name="dynamic-value"
select="dyn:get($dynamic-conf, $dynamic-key)" />
Check this:
http://help.sap.com/saphelp_nw70/helpdata/en/f4/2d6189f0e27a4894ad517961762db7/content.htm
Thanks,
Beena. -
How to Set JMS property and Read JMS property in BPEL using JMS adapter
Does any one know how to set or read more than one JMS property in BPEL using JMS adapter. My queue server is Oracle JMS server.
Any help and sample is well appreciatedHi Van
I have noted that only the attribute "type" is missing. It seems that when you create a "string" property, the attribute "type" is droped from the XML. If you use another type (as "integer" or "double") it stays there.
If you try to read your properties, except for the "type" attribute, you should be successful, as I am. If you need, please tell me your email, I can send you my code.
Source Code:
in ASSIGN activity (process which SENDS the JMS message):
<assign name="TESTES">
<copy>
<from expression="'string'"/>
<to variable="HeaderJms" part="outboundHeader"
query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[1]/@type"/>
</copy>
<copy>
<from expression="'name'"/>
<to variable="HeaderJms" part="outboundHeader"
query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[1]/@name"/>
</copy>
<copy>
<from expression="'value1'"/>
<to variable="HeaderJms" part="outboundHeader"
query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[1]/@value"/>
</copy>
<bpelx:append>
<bpelx:from>
<Property name="" type="" value=""
xmlns="http://xmlns.oracle.com/pcbpel/adapter/jms/"/>
</bpelx:from>
<bpelx:to variable="HeaderJms" part="outboundHeader"
query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties"/>
</bpelx:append>
<copy>
<from expression="'string'"/>
<to variable="HeaderJms" part="outboundHeader"
query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[2]/@type"/>
</copy>
<copy>
<from expression="'name2'"/>
<to variable="HeaderJms" part="outboundHeader"
query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[2]/@name"/>
</copy>
<copy>
<from expression="'value2'"/>
<to variable="HeaderJms" part="outboundHeader"
query="/ns5:JMSOutboundHeadersAndProperties/ns5:JMSOutboundProperties/ns5:Property[2]/@value"/>
</copy>
</assign>
in ASSIGN activity (process which READS the JMS message)
<assign name="Assign_1">
<copy>
<from variable="Variable_1" part="inboundHeader"
query="/ns3:JMSInboundHeadersAndProperties/ns3:JMSInboundProperties/ns3:Property[10]/@name"/>
<to variable="temp"/>
</copy>
<copy>
<from variable="Variable_1" part="inboundHeader"
query="/ns3:JMSInboundHeadersAndProperties/ns3:JMSInboundProperties/ns3:Property[10]/@value"/>
<to variable="temp"/>
</copy>
<copy>
<from variable="Variable_1" part="inboundHeader"
query="/ns3:JMSInboundHeadersAndProperties/ns3:JMSInboundProperties/ns3:Property[12]/@name"/>
<to variable="temp"/>
</copy>
<copy>
<from variable="Variable_1" part="inboundHeader"
query="/ns3:JMSInboundHeadersAndProperties/ns3:JMSInboundProperties/ns3:Property[12]/@value"/>
<to variable="temp"/>
</copy>
</assign>
Note that I do not try to read the "type" attribute, otherwise it will fail.
Here is the JMS Header Message received:
<inboundHeader>
<JMSInboundHeadersAndProperties xmlns="http://xmlns.oracle.com/pcbpel/adapter/jms/">
<JMSInboundHeaders>
<JMSCorrelationID>
bpel://localhost/pi_lms-c001e/BpelPiAtualizacaoC001E~1.0/3200025-BpInv0-BpSeq1.6-2
</JMSCorrelationID>
<JMSDeliveryMode>2</JMSDeliveryMode>
<JMSExpiration>0</JMSExpiration>
<JMSMessageID>ID:467DFA1FA1ED459EBF37F51F596C3F12</JMSMessageID>
<JMSPriority>4</JMSPriority>
<JMSRedelivered>false</JMSRedelivered>
<JMSType>com.mercurio.lms.integration.c001eip.c001EIntegrationPoint</JMSType>
<JMSTimestamp>1201552046253</JMSTimestamp>
</JMSInboundHeaders>
- <JMSInboundProperties>
<Property name="JMSXDeliveryCount" type="integer" value="1"/>
<Property name="JMSXRecvTimestamp" type="long" value="1201552046698"/>
<Property name="JMSXUserID" value="lms_dev_int_v1_user"/>
<Property name="JMS_OracleDeliveryMode" value="2"/>
<Property name="JMS_OracleTimestamp" type="long" value="1201552046253"/>
<Property name="JMS_OracleDelay" type="long" value="0"/>
<Property name="JMSXState" type="integer" value="0"/>
<Property name="IAS_VERSION" value="10.1.3"/>
<Property name="JMS_OracleDeliveryMode" value="2"/>
<Property name="name" value="value1"/> ("type" attribute was droped!!!)
<Property name="JMS_OracleTimestamp" type="long" value="1201552046253"/>
<Property name="name2" value="value2"/> ("type" attribute was droped!!!)
</JMSInboundProperties>
</JMSInboundHeadersAndProperties>
</inboundHeader>
Regards
Marcelo -
Problem with Send using JMS Adapter with Websphere MQ
Hi,
We have two scenarios using JMS Adapter with MQ:
1. File->PI->MQ
This works fine and drop the file in MQ correctly.
2. MQ->PI->File
This gives an error reading from the queue: (see highlighted in the log below). It correctly connects to the queue name. But it fails with the message "Could not begin a AF transaction".
Our PI version is 7.0 SP 13
Websphere MQ Version 6.0.
Any idea what could be wrong?
Cluster Node Administration Information Availability Times
Cluster Node Details for Channel CC_JMS_MQ_Sender
Short Log
In the Last 4 Hours Server 0 15_92786
_Sucessfully connected to destination 'queue:///MMPP.PLM.FGH41? CCSID=37&targetClient=1'_
Line 1 / 1
Processing Details for Cluster Node Server 0 15_92786
Type
Time Stamp
Message ID
Explanation
9/2/08 2:27:28 PM 2e6206f0-7925-11dd-bc02-0003bae50b4d Error while processing message '2e6206f0-7925-11dd-bc02-0003bae50b4d'; _detailed error description: com.sap.aii.adapter.jms.api.channel.filter.MessageFilterException: Could not begin a AF transaction: TxManagerException: Unable to open transaction: com.sap.engine.services.ts.exceptions.BaseSystemException at com.sap.aii.adapter.jms.core.channel.filter.TxManagerFilter.filterSend(TxManagerFilter.java:103) ..._
9/2/08 2:27:28 PM 2e6206f0-7925-11dd-bc02-0003bae50b4d XI message ID corresponding to JMS message with ID 'ID:414d512071736431202020202020202047d9462024028b02' will be created as a new GUID with value '2e6206f0-7925-11dd-bc02-0003bae50b4d'
Amith DharmasiriChecked the drivers installed in :
/usr/sap/<SID>/DVEBMGS<SYSNO>
/j2ee/cluster/server0/bin/ext/com.sap
.aii.af.jmsproviderlib
They are available and properly added to aii_af_jmsproviderlib.sda.
The drivers are:
CL3Export.jar
CL3Nonexport.jar
com.ibm.mq.jar
com.ibm.mqjms.jar
connector.jar
dhbcore.jar
rmm.jar
These were installed per OSS note 747601.
Any other suggestions, why retrieving from MQ doesn't work? -
Async/Sync Communication using JMS adapter without BPM
Hello ,
Pls suggest how Async/Sync Communication using JMS adapter without BPM .
In my scenario I have JMS Sender and then RFC/JDBC as Sync and then again JMS receiver
Pls explain the concept of
JMSMessageID and JMSCorrelationID and how to use it by an example.
RegardsHi,
If you have selected JMSMessageID, JMSCorrelationID, or JMSProperty and entered a JMS message ID in these fields, you should see the Remove 'ID:' Marker from JMSMessageIDindicator. Set the indicator.
This is necessary because the JMS specification stipulates that each JMS message ID starts with 'ID'. However, this conflicts with ISO-11578.
- JMSMessageID (Uniqueness Is JMS-Provider-Dependent)
(String) The unique message ID. Note that this is not a required field and can be null. Since the JMS provider might not use your provided message ID, the Connector sets a special property called $jms.messageid after sending a message. This is to insure that the message ID always is available to the user. To retrieve this value use conn.getProperty("$jms.messageid") in your After Add hook.
- JMSCorrelationID (Uniqueness Is JMS-Sender-Dependent)
(String) This header is set by the application for use by other applications.
Hope this will help you.
Regards
Aashish Sinha
PS : reward points if helpful -
Which Event Classes i should use for finding good indexs and statistics for queries in SP.
Dear all,
I am trying to use pro filer to create a trace,so that it can be used as workload in
"Database Engine Tuning Advisor" for optimization of one stored procedure.
Please tel me about the Event classes which i should use in trace.
The stored proc contains three insert queries which insert data into a table variable,
Finally a select query is used on same table variable with one union of the same table variable, to generate a sequence for records based on certain condition of few columns.
There are three cases where i am using the above structure of the SP, so there are three SPS out of three , i will chose one based on their performance.
1) There is only one table with three inserts which gets into a table variable with a final sequence creation block.
2) There are 15 tables with 45 inserts , which gets into a tabel variable with a final
sequence creation block.
3)
There are 3 tables with 9 inserts , which gets into a table variable with a final
sequence creation block.
In all the above case number of record will be around 5 lacks.
Purpose is optimization of queries in SP
like which Event Classes i should use for finding good indexs and statistics for queries in SP.
yours sincerely"Database Engine Tuning Advisor" for optimization of one stored procedure.
Please tel me about the Event classes which i should use in trace.
You can use the "Tuning" template to capture the workload to a trace file that can be used by the DETA. See
http://technet.microsoft.com/en-us/library/ms190957(v=sql.105).aspx
If you are capturing the workload of a production server, I suggest you not do that directly from Profiler as that can impact server performance. Instead, start/stop the Profiler Tuning template against a test server and then script the trace
definition (File-->Export-->Script Trace Definition). You can then customize the script (e.g. file name) and run the script against the prod server to capture the workload to the specified file. Stop and remove the trace after the workload
is captured with sp_trace_setstatus:
DECLARE @TraceID int = <trace id returned by the trace create script>
EXEC sp_trace_setstatus @TraceID, 0; --stop trace
EXEC sp_trace_setstatus @TraceID, 2; --remove trace definition
Dan Guzman, SQL Server MVP, http://www.dbdelta.com
Maybe you are looking for
-
TS1389 computer is no longer authorized for purchased items on my phone
My computer keeps saying the error messege that my phone is longer authorized for purchased items on my phone?
-
How to change JSESSION ID manually
Guys, i am oracle jdeveloper10x version Below code return the coookie NAME as "JSESSIONID".But acutally we are getting different cookies names....But in code we are getting JSESSION ID. Cookie[] cookies = req.getCookies(); for (int i = 0; i < cookies
-
File format for external harddrives between apple and windows
i have a windows desktop and an apple mac book pro. the mac will read files from ntfs system but as read only. the windows will only read exfat or ntfs. what should i do? will exfat work as read and write between the two?
-
Workshop error while WebLogic running
I am trying to work through the Workshop tutorial. PetStore and others are working fine. I need a hint where I should look at to correct the problem. When I start the server either from the command line in ..\weblogic700\samples\workshop or from the
-
Audio sync problem with mpeg streamclip
can't match audio up with video once imported to fcp