<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: MQSeries&#8230;Ensuring Message Delivery from Queue to Target</title>
	<atom:link href="http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/feed/" rel="self" type="application/rss+xml" />
	<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/</link>
	<description>thoughts about all things "real time" that revolve around "ETL" (Extract, Transform, Load) and Data Integration</description>
	<lastBuildDate>Thu, 29 Oct 2009 09:32:23 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: dsrealtime</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-802</link>
		<dc:creator>dsrealtime</dc:creator>
		<pubDate>Wed, 21 Oct 2009 13:52:39 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-802</guid>
		<description>Hi Rob....

The doc for the MQ Connector is pretty good....the properties are in alphabetical order (as opposed to functional order that you would fill them in), but that doesn&#039;t impact the detail.  It&#039;s fairly self explanatory once you get used to the GUI (on some of the properties, pull down and indicate &quot;yes&quot; for a main property, and then the sub-properties will become un-greyed).  For 90% of requirements you will only need about 10% of the properties.   The MQ Connector can deal with a lot of special situations (types of messages, transactions, etc.) which is why there are so many.   www.dsXChange.com (a public forum on DataStage) always has some good discussions on MQ, and there is some additional detail on the new Connector in this redbook...   http://www.redbooks.ibm.com/Redbooks.nsf/RedbookAbstracts/sg247576.html?OpenDocument 

Lastly, MQ has been supported in DataStage for over 10 years, and you will find that the MQ Plugin is still on the canvas.  For those 10% requirements, it will fill most of your needs also, although I would encourage you to use the MQ Connector if you can...it has a few more goodies.

Ernie</description>
		<content:encoded><![CDATA[<p>Hi Rob&#8230;.</p>
<p>The doc for the MQ Connector is pretty good&#8230;.the properties are in alphabetical order (as opposed to functional order that you would fill them in), but that doesn&#8217;t impact the detail.  It&#8217;s fairly self explanatory once you get used to the GUI (on some of the properties, pull down and indicate &#8220;yes&#8221; for a main property, and then the sub-properties will become un-greyed).  For 90% of requirements you will only need about 10% of the properties.   The MQ Connector can deal with a lot of special situations (types of messages, transactions, etc.) which is why there are so many.   <a href="http://www.dsXChange.com" rel="nofollow">http://www.dsXChange.com</a> (a public forum on DataStage) always has some good discussions on MQ, and there is some additional detail on the new Connector in this redbook&#8230;   <a href="http://www.redbooks.ibm.com/Redbooks.nsf/RedbookAbstracts/sg247576.html?OpenDocument" rel="nofollow">http://www.redbooks.ibm.com/Redbooks.nsf/RedbookAbstracts/sg247576.html?OpenDocument</a> </p>
<p>Lastly, MQ has been supported in DataStage for over 10 years, and you will find that the MQ Plugin is still on the canvas.  For those 10% requirements, it will fill most of your needs also, although I would encourage you to use the MQ Connector if you can&#8230;it has a few more goodies.</p>
<p>Ernie</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-801</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Wed, 21 Oct 2009 13:05:36 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-801</guid>
		<description>Hi,

Can you please let me know where I can find detailed information about using the DataStage MQ connector?

Cheers,
Rob</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>Can you please let me know where I can find detailed information about using the DataStage MQ connector?</p>
<p>Cheers,<br />
Rob</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dsrealtime</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-624</link>
		<dc:creator>dsrealtime</dc:creator>
		<pubDate>Tue, 24 Mar 2009 01:09:28 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-624</guid>
		<description>Hi Tim.    

It depends on what you are trying to do, and what you need transaction consistency for.... if it&#039;s for targeting DB2 or Oracle, you&#039;ll soon have that.   There is a Distributed Transaction Stage in the oven (I don&#039;t know the exact date of delivery, but I played with it earlier and it looks very good for certain things) that takes advantage of MQ&#039;s ability to have a unit of work between a queue and a database....and from the spec I reviewed, and comments I made while testing at that time, two queues.   I&#039;ll be sure to put a report here once things are closer to production and/or generally available and I can give it a good exercise.

On the other hand, Server is still a finely honed tool for doing transactional things, and quite often such transactional things are not in need of massive parallelism as necessary in batch....and Server is no slouch in performance --- it can&#039;t touch EE at the high end, but can stand on its own in most cases, and if all you need is ensured queue to queue delivery, Server has done that since release 4.

Ultimately, there are highly parallel activities that justify EE and need detailed unit of work control.   I&#039;ve had the privilege of working with some of the advanced consultants on our Center of Excellence team who have written custom operators (and in one scenario, a complex JMS example using JavaPack) when specific requirements are needed (multiple queues, multiple databases and fairly sophisticated failure processing).

Ernie</description>
		<content:encoded><![CDATA[<p>Hi Tim.    </p>
<p>It depends on what you are trying to do, and what you need transaction consistency for&#8230;. if it&#8217;s for targeting DB2 or Oracle, you&#8217;ll soon have that.   There is a Distributed Transaction Stage in the oven (I don&#8217;t know the exact date of delivery, but I played with it earlier and it looks very good for certain things) that takes advantage of MQ&#8217;s ability to have a unit of work between a queue and a database&#8230;.and from the spec I reviewed, and comments I made while testing at that time, two queues.   I&#8217;ll be sure to put a report here once things are closer to production and/or generally available and I can give it a good exercise.</p>
<p>On the other hand, Server is still a finely honed tool for doing transactional things, and quite often such transactional things are not in need of massive parallelism as necessary in batch&#8230;.and Server is no slouch in performance &#8212; it can&#8217;t touch EE at the high end, but can stand on its own in most cases, and if all you need is ensured queue to queue delivery, Server has done that since release 4.</p>
<p>Ultimately, there are highly parallel activities that justify EE and need detailed unit of work control.   I&#8217;ve had the privilege of working with some of the advanced consultants on our Center of Excellence team who have written custom operators (and in one scenario, a complex JMS example using JavaPack) when specific requirements are needed (multiple queues, multiple databases and fairly sophisticated failure processing).</p>
<p>Ernie</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tim Smith</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-623</link>
		<dc:creator>Tim Smith</dc:creator>
		<pubDate>Mon, 23 Mar 2009 23:30:52 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-623</guid>
		<description>Sorry - I dont get it.  Why cant we use EE?  What is the point of EE if it cannot provide transaction consistency?</description>
		<content:encoded><![CDATA[<p>Sorry &#8211; I dont get it.  Why cant we use EE?  What is the point of EE if it cannot provide transaction consistency?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dsrealtime</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-608</link>
		<dc:creator>dsrealtime</dc:creator>
		<pubDate>Mon, 09 Feb 2009 19:34:41 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-608</guid>
		<description>...they are just text files.   Named PDF, but the mqXXX one is a .dsx and the other is just a .txt file... do just &quot;save&quot; them and rename!

Ernie</description>
		<content:encoded><![CDATA[<p>&#8230;they are just text files.   Named PDF, but the mqXXX one is a .dsx and the other is just a .txt file&#8230; do just &#8220;save&#8221; them and rename!</p>
<p>Ernie</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Surajit</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-607</link>
		<dc:creator>Surajit</dc:creator>
		<pubDate>Mon, 09 Feb 2009 18:55:36 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-607</guid>
		<description>Hi,
I am not able to open the pdf attachments for MQ Series. Appreciate if you could post the pdfs again.

Thanks,
Suraj</description>
		<content:encoded><![CDATA[<p>Hi,<br />
I am not able to open the pdf attachments for MQ Series. Appreciate if you could post the pdfs again.</p>
<p>Thanks,<br />
Suraj</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dsrealtime</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-90</link>
		<dc:creator>dsrealtime</dc:creator>
		<pubDate>Wed, 21 May 2008 00:52:14 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-90</guid>
		<description>I spoke too soon...thought it was ready, but it&#039;s still &quot;in the oven.&quot;   I had the opportunity to do some work with it early on, and it&#039;s close, from what I hear, although I can&#039;t tell you exactly when we&#039;ll see it.......   by design it will let me read from a queue and target one or more relational tables, all in a &quot;true&quot; single unit of work.... it exploits MQSeries&#039; strengths as a formal transaction coordinator.    Not sure if it will be able to work independently of MQ, because it exploits MQ under the covers.  Suppose you could put the data into a queue for the sake of driving the uow at the other end......</description>
		<content:encoded><![CDATA[<p>I spoke too soon&#8230;thought it was ready, but it&#8217;s still &#8220;in the oven.&#8221;   I had the opportunity to do some work with it early on, and it&#8217;s close, from what I hear, although I can&#8217;t tell you exactly when we&#8217;ll see it&#8230;&#8230;.   by design it will let me read from a queue and target one or more relational tables, all in a &#8220;true&#8221; single unit of work&#8230;. it exploits MQSeries&#8217; strengths as a formal transaction coordinator.    Not sure if it will be able to work independently of MQ, because it exploits MQ under the covers.  Suppose you could put the data into a queue for the sake of driving the uow at the other end&#8230;&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Vincent McBurney</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-89</link>
		<dc:creator>Vincent McBurney</dc:creator>
		<pubDate>Wed, 21 May 2008 00:24:19 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-89</guid>
		<description>Is the Distributed Transaction Stage new for DataStage 8.1?  I can&#039;t find it in any 8.0.1 documentation.  Can it be used on it&#039;s own without a queue service like MQ?  For example can you read a complex flat file and flatten it and deliver different rows to the DTS stage as a single unit of work?</description>
		<content:encoded><![CDATA[<p>Is the Distributed Transaction Stage new for DataStage 8.1?  I can&#8217;t find it in any 8.0.1 documentation.  Can it be used on it&#8217;s own without a queue service like MQ?  For example can you read a complex flat file and flatten it and deliver different rows to the DTS stage as a single unit of work?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dsrealtime</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-85</link>
		<dc:creator>dsrealtime</dc:creator>
		<pubDate>Wed, 14 May 2008 14:04:32 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-85</guid>
		<description>Hi Todd...I like the Server implementation also because it doesn&#039;t care what you do between the MQ Stages....in fact, you could end the job and start up another, and perform the final delete/Put in another job much later in the overall process.   That being said, while I haven&#039;t explicitly tested it yet, we should be able to accomplish this with EE and an MQ Connector as the source and methodology for the majority of the job, and then a Server side Shared Container for the final target.</description>
		<content:encoded><![CDATA[<p>Hi Todd&#8230;I like the Server implementation also because it doesn&#8217;t care what you do between the MQ Stages&#8230;.in fact, you could end the job and start up another, and perform the final delete/Put in another job much later in the overall process.   That being said, while I haven&#8217;t explicitly tested it yet, we should be able to accomplish this with EE and an MQ Connector as the source and methodology for the majority of the job, and then a Server side Shared Container for the final target.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Todd Robinson</title>
		<link>http://dsrealtime.wordpress.com/2008/05/06/mqseriesensuring-message-delivery-from-queue-to-target/#comment-84</link>
		<dc:creator>Todd Robinson</dc:creator>
		<pubDate>Wed, 14 May 2008 13:45:26 +0000</pubDate>
		<guid isPermaLink="false">http://dsrealtime.wordpress.com/?p=34#comment-84</guid>
		<description>Syncpoint control is not possible with MQ and EE? Good to know and makes sense. We&#039;ve used this Server method with Oracle for the past 6 years without incident. The interface between Oracle and DataStage is well defined. I would be leery of other DBMSs and your thorough testing comment is dead on. Getting the RDBMS to accurately report the status of an operation  back to DataStage 100% of the time is the problem as is preventing a commit enabling a rollback, when there is a problem. 
A &quot;cross your fingers and hope&quot; approach also used is to save the MsgIds to a file in the DBMS write job and then do the syncpoint reads in a downstream job after the first has finished successfully. This would fall under the heading of coming &quot;real close&quot;.</description>
		<content:encoded><![CDATA[<p>Syncpoint control is not possible with MQ and EE? Good to know and makes sense. We&#8217;ve used this Server method with Oracle for the past 6 years without incident. The interface between Oracle and DataStage is well defined. I would be leery of other DBMSs and your thorough testing comment is dead on. Getting the RDBMS to accurately report the status of an operation  back to DataStage 100% of the time is the problem as is preventing a commit enabling a rollback, when there is a problem.<br />
A &#8220;cross your fingers and hope&#8221; approach also used is to save the MsgIds to a file in the DBMS write job and then do the syncpoint reads in a downstream job after the first has finished successfully. This would fall under the heading of coming &#8220;real close&#8221;.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
