ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Does WSMB 7.0.x support Oracle's 11gr2 ODBC driver due DRCP?

Post new topic  Reply to topic
 Does WSMB 7.0.x support Oracle's 11gr2 ODBC driver due DRCP? « View previous topic :: View next topic » 
Author Message
t603
PostPosted: Thu Oct 18, 2012 4:41 am    Post subject: Does WSMB 7.0.x support Oracle's 11gr2 ODBC driver due DRCP? Reply with quote

Voyager

Joined: 16 Oct 2012
Posts: 88
Location: Prague, the Czech Republic, Europe

Hello,

does WebSphere Broker 7.0.x.x support communication with Oracle 11g R2 using Oracle's own ODBC driver? Or is supported just only driver to Oracle made by DataDirect company?

Why I am asking? I have about 830 message flows, some of them in more instances. Most of those flows communicate with Oracle using simple SQL commands select, insert, update, delete returning minimal amount of data. I has to switch from DB2 (used now) to Oracle. I need to have fast communication between message flows and Oracle as possible.

Beside thinking about indexing, setting tables to read only mode, where possible, using Oracle TimesTen (by the way - is it supported or does have someone experinces with OTT?)..., connection pooling should be one of the the most performance related approach when using database.

Although AFAIK WSMB does not have its own connection pooling implementation, it should be possible to use DRCP (Database Resident Connection Pool) released as a part of database since Oracle 11g R2. But this require OCI based ODBC driver. And AFAIK ODBC driver from DataDirect does not support DRCP in Oracle (it is not probably based on OCI to be fast).

So that is why I am asking, if I can use Oracle's own ODBC driver, version 11g R2 and if I will still have support from IBM.

Thank You for answers in advance. Stepan
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Oct 18, 2012 4:48 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

No, you can't use anything other than the DataDirect driver and remain supported.

No, it is not correct to say that WMB doesn't have connection pooling for ODBC DSNs.

It does.

It just does not have connection pools that are separately managed from the number of additional instances of a message flow.

So all of the tuning of your flow instances that you've done to support your load under DB2 will remain active and the same for using Oracle.
Back to top
View user's profile Send private message
t603
PostPosted: Thu Oct 18, 2012 6:48 am    Post subject: Reply with quote

Voyager

Joined: 16 Oct 2012
Posts: 88
Location: Prague, the Czech Republic, Europe

mqjeff wrote:
No, it is not correct to say that WMB doesn't have connection pooling for ODBC DSNs.


...Could You, please, point me to to the relevant documentation about handling connections to the database in WSMB? Of which phrase I shoud search ~ google? I am sorry to ask again, but I searched long and does not find relevant information about connection pooling inside WSMB. I was searching for something like Oracle's DRCP approach, one can see http://www.oracle.com/technetwork/topics/php/whatsnew/php-scalability-ha-twp-128842.pdf. So I asked here, in MQSeries.net.

mqjeff wrote:
It just does not have connection pools that are separately managed from the number of additional instances of a message flow.


I guess, that it does not mean, that for each instance of each deployed message flow there is one connection in internal connection pool within WSMB, am I right?

I want to prevent the situation, when in case of the start of peak of requests, requests will be waiting for creation of new connections. I would rather to have always let say 50 connections permanently "available" and in case of the start of the peak free connections will be immediately assigned to incoming requests while new connections up to 50 will be created to fulfill quota of 50 ready to be assigned connections. So the number of free connections will copy the curve of used connections within some minimum and maximum interval. Something like Oracle DRCP incrsize property (but ideally driven not by unavailability of the forst request, but in pre-emptive manner).

Or am I totally out with my idea about dynamic connection pool?
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Oct 18, 2012 7:13 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

There's a fair amount of discussion here about odbc connection pools, some searching on this forum may provide relevant hits. particularly look for discussion from rekarm01 and lancelotlinc

or at some point, the usual suspects will pop up to repeat their arguments.

Each instance of a message flow that references a DSN will allocate a connection for that DSN. There is discussion in the Broker Information Center on how long this connection is kept around and what constitutes an idle period for it to be freed (a minute, if I recall).

I suggest you also look at performance reports.

And, again, the function of Broker in this respect *does not change* based on the database being talked to. So where you had it working in DB2, it will work the same with Oracle.

And finally, the best way to improve the performance of a database connection is to locate the database on the same machine.
Back to top
View user's profile Send private message
t603
PostPosted: Fri Oct 19, 2012 5:26 am    Post subject: Reply with quote

Voyager

Joined: 16 Oct 2012
Posts: 88
Location: Prague, the Czech Republic, Europe

SOLVED ~ ANSWERED

This is the document I have been looking for so long:

http://www-01.ibm.com/support/docview.wss?uid=swg21610149

WMB ODBC connection behaviour of message flow instance

WebSphere Message Broker uses internal ODBC connection pooling. Each message flow instance creates and manages the ODBC Connection it requires.

Details are in the document link above.

Stepan
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Fri Oct 19, 2012 5:39 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

t603 wrote:
SOLVED ~ ANSWERED

This is the document I have been looking for so long:

http://www-01.ibm.com/support/docview.wss?uid=swg21610149

WMB ODBC connection behaviour of message flow instance

WebSphere Message Broker uses internal ODBC connection pooling. Each message flow instance creates and manages the ODBC Connection it requires.

Details are in the document link above.

Stepan


That's funny. Took me five seconds and came right to the top of my search results. Do you have trouble with Google?

http://goo.gl/SxMkM
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
t603
PostPosted: Fri Oct 19, 2012 6:22 am    Post subject: Reply with quote

Voyager

Joined: 16 Oct 2012
Posts: 88
Location: Prague, the Czech Republic, Europe

I am using WSMB documentation as the first choice of my information. There I did not find this information.

Then I used Google phrase

Code:
websphere message brooker connection pooling


which I guess is quite exact what I was looking for and on the first page is nothing, now, You are right, it is on the second Google page.

lancelotlinc wrote:
That's funny. Took me five seconds and came right to the top of my search results. Do you have trouble with Google?


Well, You are right, You are more clever than me, that You were able to ask Google for the phrase used by You "WMB ODBC connection behaviour /site:ibm.com" right without reading the searched PDF document.

Thank You very much for the feedback, Stepan
Back to top
View user's profile Send private message
mqjeff
PostPosted: Fri Oct 19, 2012 6:45 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

http://publib.boulder.ibm.com/infocenter/wmbhelp/v8r0m0/topic/com.ibm.etools.mft.doc/ac00406_.htm
Back to top
View user's profile Send private message
t603
PostPosted: Fri Oct 19, 2012 7:33 am    Post subject: Reply with quote

Voyager

Joined: 16 Oct 2012
Posts: 88
Location: Prague, the Czech Republic, Europe

Yes, yes, you are right. But I am in doubt how to set up "WSMB connection pooling" according these documentation, like this one for 7.0.0.5 http://publib.boulder.ibm.com/infocenter/wmbhelp/v7r0m0/index.jsp?topic=%2Fcom.ibm.etools.mft.doc%2Fah14440_.htm.

Because as I understand this text, connection remains as
Code:
The message flow has been idle for N minute
N I can change. But my understanding of connection pool is as is implemented in Oracle DRCP. Within allowed minimum and maximum use free connection, when it reach current amount of free connections, add set of M new free connections. So something like breathing. It better copy the curve of incoming request because it has "airbag" of M connections. And it does not depend on the exact source of connection request.

WSMB approach is little different, I think. When there is no of free connections, then each new request of connection has to wait for the creating connection, which, of course, then remains in pool for maxConnectionAge. But the creating of new connection is one by one. Well, I can set maxConnectionAge to -1, but in my case of 860 message flows times sometimes more instances, I do not have enough RAM. Something between them is selective setting according to the importance of message flows. Because I do not know now how many system resources are consumed by one connection (certainly it is in some documentation, but i can't use the Google).

Anyway, thank all of You for valuable advices, now I will be calmed down, that from the database connection point of view, DB2 to Oracle would not be the bottleneck of the migration. Stepan
Back to top
View user's profile Send private message
rekarm01
PostPosted: Sat Oct 20, 2012 11:54 am    Post subject: Re: Does WSMB 7.0.x support Oracle's 11gr2 ODBC driver due D Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 1415

Client-side connection pooling (WMB, PHP, WAS, etc.) only allows for connection reuse between threads within the same process (application, execution group, etc.), or within the same thread (PHP, for example is single-threaded). Server-side connection pooling (Oracle DRCP, Oracle Shared Server, DB2Connect, etc.) can also allow for connection reuse between different processes, (which is why DRCP is appealing for single-threaded PHP clients). They are complementary; a site can use both types of connection pooling, to optimally manage the connections between applications and databases.

The WMB ODBC DataDirect Drivers may not support the use of Oracle client software for server-side connection pooling, but the WMB ODBC Database Extender, (or JDBC), may.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Does WSMB 7.0.x support Oracle's 11gr2 ODBC driver due DRCP?
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.