<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	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>CloverETL&#039;s Blog</title>
	<atom:link href="http://blog.cloveretl.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.cloveretl.com</link>
	<description>Life, the Universe, CloverETL and everything ...</description>
	<lastBuildDate>Tue, 09 Mar 2010 09:39:11 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='blog.cloveretl.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/dd4c2411bcdf90b36e88bda58e3fce7c?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>CloverETL&#039;s Blog</title>
		<link>http://blog.cloveretl.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.cloveretl.com/osd.xml" title="CloverETL&#039;s Blog" />
	<atom:link rel='hub' href='http://blog.cloveretl.com/?pushpress=hub'/>
		<item>
		<title>Oracle uses CloverETL for data manipulation in its OIA server</title>
		<link>http://blog.cloveretl.com/2010/03/09/oracle-uses-cloveretl-for-data-manipulation-in-its-oia-server/</link>
		<comments>http://blog.cloveretl.com/2010/03/09/oracle-uses-cloveretl-for-data-manipulation-in-its-oia-server/#comments</comments>
		<pubDate>Tue, 09 Mar 2010 00:00:23 +0000</pubDate>
		<dc:creator>Lucie Felixova</dc:creator>
				<category><![CDATA[Using CloverETL]]></category>
		<category><![CDATA[OIA]]></category>
		<category><![CDATA[OIA server]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[Oracle Identity Analytics]]></category>
		<category><![CDATA[Sun Microsystems]]></category>
		<category><![CDATA[Sun Role Manager]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=483</guid>
		<description><![CDATA[We are very happy to have learned that Oracle uses CloverETL for data manipulation in its OIA server. Oracle Identity Analytics (OIA) is a solution that provides enterprise role lifecycle management and identity compliance functionality. See Oracle whitepaper http://www.oracle.com/technology/products/id_mgmt/oia/pdf/oia_wp.pdf
Originally Sun Microsystems used CloverETL in its Sun Role Manager. It is a great pleasure to see that Oracle decided to continue using [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=483&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>We are very happy to have learned that Oracle uses CloverETL for data manipulation in its OIA server. Oracle Identity Analytics (OIA) is a solution that provides enterprise role lifecycle management and identity compliance functionality. See Oracle whitepaper <a href="http://www.oracle.com/technology/products/id_mgmt/oia/pdf/oia_wp.pdf">http://www.oracle.com/technology/products/id_mgmt/oia/pdf/oia_wp.pdf</a></p>
<p>Originally Sun Microsystems used CloverETL in its Sun Role Manager. It is a great pleasure to see that Oracle decided to continue using CloverETL for its software after aquiring Sun Microsystems.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/483/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/483/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/483/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=483&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2010/03/09/oracle-uses-cloveretl-for-data-manipulation-in-its-oia-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36840395aaef2cf9186f9dcdc1cb947e?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Lucie Felixova</media:title>
		</media:content>
	</item>
		<item>
		<title>How to set up a WebServiceClient Component in 3 steps</title>
		<link>http://blog.cloveretl.com/2010/03/08/how-to-set-up-a-webserviceclient-component-in-3-steps/</link>
		<comments>http://blog.cloveretl.com/2010/03/08/how-to-set-up-a-webserviceclient-component-in-3-steps/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 12:41:39 +0000</pubDate>
		<dc:creator>Martin Zatopek</dc:creator>
				<category><![CDATA[Using CloverETL]]></category>
		<category><![CDATA[client]]></category>
		<category><![CDATA[soap]]></category>
		<category><![CDATA[web service]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=426</guid>
		<description><![CDATA[WebServiceClient is a new CloverETL component that was released in 2.9 version. It provides an easy intuitive way to interact with web-service technology that has gained a huge popularity in the last few years. The following simple example shows the new component´s functionality. The WS component is user friendly and very easy to use.
Example for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=426&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>WebServiceClient is a new CloverETL component that was released in 2.9 version. It provides an easy intuitive way to interact with web-service technology that has gained a huge popularity in the last few years. The following simple example shows the new component´s functionality. The WS component is user friendly and very easy to use.</p>
<h4>Example for WS component usage:</h4>
<p>Our goal is to get the actual weather information for specific ZIP codes from the web service that is running on <a href="http://ws.cdyne.com/WeatherWS/Weather.asmx?op=GetCityWeatherByZIP" target="_blank">http://ws.cdyne.com/WeatherWS/Weather.asmx?op=GetCityWeatherByZIP</a>. The zip codes are stored in the flat file and results will be saved to Excel file.</p>
<p>I suppose that you are familiar with CloverETL so I will not describe the input and output setting up but will focus directly on WebService Client component.</p>
<h4>Step 1 – WebService URL and operation</h4>
<p>Firstly we have to specify the URL of web service WSDL file and select the operation you want to use from the list of all operation WS provides. WSDL URL is the basic attribute of the component and have to be set to <a href="http://ws.cdyne.com/WeatherWS/Weather.asmx?WSDL" target="_blank">http://ws.cdyne.com/WeatherWS/Weather.asmx?WSDL</a>. The dialog for Operation name attribute allows you to select the operation you want to use. In our case it&#8217;s the operation GetCityWeatherByZIP from the group WeatherSoap (Port:WeatherSoap) as you can see on the figure bellow.</p>
<p><a href="http://cloveretl.files.wordpress.com/2010/03/operationname.png"><img src="http://cloveretl.files.wordpress.com/2010/03/operationname.png?w=796&#038;h=423" alt="" title="WS Operation name" width="796" height="423" class="aligncenter size-full wp-image-475" /></a></p>
<h4>Step 2 – Generate request</h4>
<p>The request is a way how to pass the arguments to webservice. It&#8217;s the XML file with pre-defined structure which depends on the used webservice and writting it by hand is very annoying. CloverETL provides a functionality that generates the required structure of request in one click. Simply open the dialog for Request structure attribute and click on „Generate request“ button. The skeleton of the request is genereted and we have to map the input port fields of the component to the request placeholders. In our case the only placeholder is <code><em>string</em></code>. By drag-and-drop we replace <code><em>string</em></code> by the field name from the right panel of the dialog.</p>
<p><a href="http://cloveretl.files.wordpress.com/2010/03/requeststructure.png"><img src="http://cloveretl.files.wordpress.com/2010/03/requeststructure.png?w=800&#038;h=354" alt="" title="Request structure" width="800" height="354" class="aligncenter size-full wp-image-477" /></a></p>
<h4>Step 3 – Process response</h4>
<p>Finally we define how to process the response from webservice. The response is XML file so we will create the mapping among elements and attributes of XML files and the output fields of the component. CloverETL makes it easy for us, it provides drag-and-drop dialog where we can select the item from „XML Fields“ part of dialog and drop them to „Clover Fields“.</p>
<p><a href="http://cloveretl.files.wordpress.com/2010/03/responsemapping.png"><img src="http://cloveretl.files.wordpress.com/2010/03/responsemapping.png?w=800&#038;h=590" alt="" title="Response mapping" width="800" height="590" class="aligncenter size-full wp-image-478" /></a></p>
<p>And that&#8217;s all <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> . Communication with webservice is set-up. Now we can collect actual weather conditions from Internet.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/426/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/426/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/426/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=426&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2010/03/08/how-to-set-up-a-webserviceclient-component-in-3-steps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a09e97c9dfaf07365d2353d0ed474b28?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">mzatopek</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/03/operationname.png" medium="image">
			<media:title type="html">WS Operation name</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/03/requeststructure.png" medium="image">
			<media:title type="html">Request structure</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/03/responsemapping.png" medium="image">
			<media:title type="html">Response mapping</media:title>
		</media:content>
	</item>
		<item>
		<title>CloverETL File-URL Dialog</title>
		<link>http://blog.cloveretl.com/2010/02/24/cloveretl-file-url-dialog/</link>
		<comments>http://blog.cloveretl.com/2010/02/24/cloveretl-file-url-dialog/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 15:36:22 +0000</pubDate>
		<dc:creator>jausperger</dc:creator>
				<category><![CDATA[Developing Clover]]></category>
		<category><![CDATA[CloverETL]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[ftps]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[sftp]]></category>
		<category><![CDATA[url]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=447</guid>
		<description><![CDATA[The CloverETL Designer has a brand new File URL Dialog, which was introduced in the version 2.9. The newly designed file dialog  is very friendly and intuitive to navigate. There are a lot of new features and improvements. The dialog is separated into several tabs to simplify navigation. They enable users  to easily [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=447&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>The CloverETL Designer has a brand new File URL Dialog, which was introduced in the version 2.9. The newly designed file dialog  is very friendly and intuitive to navigate. There are a lot of new features and improvements. The dialog is separated into several tabs to simplify navigation. They enable users  to easily specify resources such as local files, remote files or shared memory (dictionary). The new dialog is more comfortable to use and has simplified clear design as you can see in the picture bellow. The dialog window adjusts itself according to the context.</p>
<p><a href="http://cloveretl.files.wordpress.com/2010/02/url-dialog1.png"><img class="size-full wp-image-454 alignnone" title="url-dialog" src="http://cloveretl.files.wordpress.com/2010/02/url-dialog1.png?w=800&#038;h=600" alt="" width="800" height="600" /></a></p>
<h3><strong>Clover Server</strong></h3>
<p>In the new File dialog you can also find a new CloverETL Server tab specially designed to work with files located on CloverETL Server. It is only visible if you have opened the dialog from existing CloverETL Server project. It looks very similar to the tab you work with on your local computer but you can browse remote CloverETL sandboxes. All names of sandboxes for which you have permissions are in the bookmarks. So you can easily access them.</p>
<h3><strong>File URLs</strong></h3>
<p>This tab handles all types of URLs but it’s mainly designed to browse remote file system via http/https/ftp/ftps/sftp protocols. It also brings special dialog where you can specify advanced parameters of connection like proxy server, HTTP properties.</p>
<h3><strong>Port / Dictionary</strong></h3>
<p>The port and dictionary tabs are specific to CloverETL. The Port tab  is visible only if the component or graph element allows reading/writing data from/to the port. Dictionary is  a shared memory between parts of the graph. It is identified by name and processing type parameter. Both tabs help you to specify the URLs in a visual way so you don’t have to know the exact syntax of CloverETL’s URLs and your work will be easier and more productive.</p>
<h3><strong>Extensibility</strong></h3>
<p>Due to new modular dialog architecture, the dialog itself can be extended for specific tabs if needed.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/447/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/447/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/447/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=447&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2010/02/24/cloveretl-file-url-dialog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/8bd3751f7ffabc9a8bff132f9671bce4?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">jausperger</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/02/url-dialog1.png" medium="image">
			<media:title type="html">url-dialog</media:title>
		</media:content>
	</item>
		<item>
		<title>RelationalJoin Commercial Component</title>
		<link>http://blog.cloveretl.com/2010/02/11/relationaljoin-commercial-component/</link>
		<comments>http://blog.cloveretl.com/2010/02/11/relationaljoin-commercial-component/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 17:33:04 +0000</pubDate>
		<dc:creator>Martin Janík</dc:creator>
				<category><![CDATA[Using CloverETL]]></category>
		<category><![CDATA[commercial]]></category>
		<category><![CDATA[component]]></category>
		<category><![CDATA[join]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=433</guid>
		<description><![CDATA[CloverETL version 2.8 offered a brand new commercial  component called RelationalJoin. It extends the CloverETL pallete of joiner components with new functionality &#8211; joining of records with relational operators different from equal (=). This component has two input ports for master and slave data records, and a single output port for joined data records. Master and slave data records are joined and sent [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=433&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>CloverETL version 2.8 offered a brand new commercial  component called RelationalJoin. It extends the CloverETL pallete of joiner components with new functionality &#8211; joining of records with relational operators different from equal (=). This component has two input ports for master and slave data records, and a single output port for joined data records. Master and slave data records are joined and sent to the output port if they are in a specific relation to each other. In other words, it&#8217;s just another joiner that uses a relational operator to drive the joining process.</p>
<h3>Relations Between Data Records</h3>
<p>The relation between two data records is specified by any of the following relational operators: <code>!=</code>, <code>&lt;</code>, <code>&lt;=</code>, <code>&gt;</code>, <code>&gt;=</code>. For example the <code>&lt;</code> operator means that each master data record is less than all the slave data records that it was joined with. If you look at it from the slave&#8217;s perspective, all slave data records joined with a certain master data records are greater in this case. It&#8217;s valid in both ways. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>In order to make the joining process as effective as possible, input data records coming through both input ports have to be sorted appropriately. Except for the != operator that doesn&#8217;t require any sorting at all. However, if you choose the <code>&lt;</code> or <code>&lt;=</code> operator, you need to sort both streams of input data records in the descending order. In case of the <code>&gt;</code> and <code>&gt;=</code> operators, you need to make sure the data records are sorted in the ascending order. If the sort order is invalid, execution of the component fails.</p>
<p>When processing large data sets, be aware that the master data records are processed one by one while the slave data records need to be buffered. In the worst case, all the slave data records need to be buffered and thus their number should be as small as possible.</p>
<h3>Practical Example</h3>
<p>They say that an example is worth a thousand words so let&#8217;s create a simple one. Imagine that you&#8217;ve got a set of several distinct numbers. If for some reason you need to pair each of them with all numbers from the same set that are greater, it is a pretty simple task for RelationalJoin! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  See the example graph below.</p>
<p><a href="http://cloveretl.files.wordpress.com/2010/02/relational-join.gif"><img class="aligncenter size-full wp-image-439" title="relational-join" src="http://cloveretl.files.wordpress.com/2010/02/relational-join.gif?w=818&#038;h=91" alt="Example graph with RelationJoin." width="818" height="91" /></a></p>
<p>We read the numbers from a flat file, sort them appropriately, send them as two independent data streams to RelationalJoin which produces the desired output, and finally write them to another flat file. Pretty simple, don&#8217;t you think? <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>In order to configure RelationalJoin, we need to specify a transformation, join key and join relation. Setting the first two is simple, you have done that a hundred times. In case of join relation, it is simple as well, just select &#8220;master(D) &lt; slave(D)&#8221; from the combo box. The letter D in the round brackets denotes that we need to sort both streams of data records in the descending order. Thus we need to configure ExtSort in this way.</p>
<p>That&#8217;s all we had to do, just run the graph and see the desired results!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/433/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/433/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/433/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/433/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/433/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/433/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/433/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/433/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/433/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/433/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=433&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2010/02/11/relationaljoin-commercial-component/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/ffdd9092938eaae7df4746ff4ab18d93?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">yanas</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/02/relational-join.gif" medium="image">
			<media:title type="html">relational-join</media:title>
		</media:content>
	</item>
		<item>
		<title>InfobrightDataWriter component</title>
		<link>http://blog.cloveretl.com/2010/02/03/infobrightdatawriter-component/</link>
		<comments>http://blog.cloveretl.com/2010/02/03/infobrightdatawriter-component/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 08:40:50 +0000</pubDate>
		<dc:creator>Agata Vackova</dc:creator>
				<category><![CDATA[Using CloverETL]]></category>
		<category><![CDATA[CloverETL]]></category>
		<category><![CDATA[column-oriented]]></category>
		<category><![CDATA[columnar]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[Infobright]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=376</guid>
		<description><![CDATA[In response to customer requests we created a new component that writes data into Infobright software, a very popular column-oriented relational database. The CloverETL’s just released version 2.9 offers this new InfobrightDataWriter component.
Infobright is a highly compressed column-oriented database, based on MySql engine. In this database  data are stored column-by-column instead of more typically [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=376&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>In response to customer requests we created a new component that writes data into Infobright software, a very popular column-oriented relational database. The CloverETL’s just released version 2.9 offers this new InfobrightDataWriter component.</p>
<p><a title="Infobright" href="http://www.infobright.com/Products/">Infobright</a> is a highly compressed column-oriented database, based on MySql engine. In this database  data are stored column-by-column instead of more typically row-by-row. There are many advantages of column-orientation, including the ability to do more efficient data compression and allowing compression to be optimized for each particular data type. The higher efficiency can be achieved because each column stores a single data type as opposed to rows that typically contain several data type. However the main purpose of Infobright software is to deliver a scalable data warehouse database optimized for analytic queries.</p>
<p>Our new InfobrightDataWriter component allows to easily load data into Infobright database directly from CloverETL transformations. It can be used both with Infobright Community Edition (ICE) as well as with Infobright Enterprise Edition (IEE). With IEE it is possible to use fast data loading in binary format. In binary format particular rows aren’t separated by any special character and there are no values’ delimiters or qualifiers either.</p>
<p>The connector uses named pipe for data transfer. In Linux systems it is system pipe, on Windows you need native library placed on the Java library path. The library is part of  infobright-core-vX_X package that can be downloaded from Infobright site (<a title="Download Contributed Software" href="http://www.infobright.org/Downloads/Contributed-Software/">Download Contributed Software</a>).</p>
<p>For remote load it is necessary to start Infobright remote load agent on the server where Infobright is running (part of infobright-core-v3).</p>
<h3><strong>Example graph:</strong></h3>
<p><a href="http://cloveretl.files.wordpress.com/2010/01/infobright_graph.png"><img class="alignnone size-medium wp-image-377" title="infobright_graph" src="http://cloveretl.files.wordpress.com/2010/01/infobright_graph.png?w=600&#038;h=410" alt="" width="600" height="410" /></a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } 		H3 { margin-bottom: 0.21cm } 		H3.western { font-family: "Arial", sans-serif } 		H3.cjk { font-family: "Arial" } 		H3.ctl { font-family: "Arial" } --></p>
<h3><strong>InfobrightDataWriter configuration:</strong></h3>
<p><a href="http://cloveretl.files.wordpress.com/2010/01/infobright_writer_remote.png"><img class="alignnone size-full wp-image-399" title="infobright_writer_remote" src="http://cloveretl.files.wordpress.com/2010/01/infobright_writer_remote.png?w=742&#038;h=627" alt="" width="742" height="627" /></a></p>
<p>The above graph loads data from selected input fields (“Clover fields” attribute) to database table <code>test </code>(“Database table” attribute) on remote server. It uses fast binary method of data loading (“Data format” attribute). Data loaded into database can be sent to output port. Input metadata has free format but the output one has to meet certain conditions:</p>
<ul>
<li>comma as a field delimiter</li>
<li>system new line (<code>'\n'</code> for Linux, <code>'\r\n'</code> for Windows) as a record delimiter</li>
<li>date/time formatting: <em>yyyy-MM-dd HH:mm:ss </em>(can be date only, time only or both)</li>
</ul>
<p>As we load data to the remote server, the Infobright agent must run on the server. To start the agent we need to call:</p>
<p><em>java -jar infobright-core-3.0-remote.jar -p 6666 -l all</em></p>
<p>The port the agent is listening to must be the same as the agent port set on the component (“Remote agent port” attribute).</p>
<p>Full description of the component can be found on CloverETL&#8217;s wiki pages (<a href="http://wiki.clovergui.net/doku.php?id=components:bulkloaders:infobright_data_writer">InfobrightDataWriter component</a>).</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/376/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/376/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/376/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=376&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2010/02/03/infobrightdatawriter-component/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/934c88184df6c0034450ae00a1695ee8?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">agad</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/01/infobright_graph.png?w=300" medium="image">
			<media:title type="html">infobright_graph</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/01/infobright_writer_remote.png" medium="image">
			<media:title type="html">infobright_writer_remote</media:title>
		</media:content>
	</item>
		<item>
		<title>CloverETL version 2.9 was released. It adds Infobright Data Writer, Web Services component and other new features.</title>
		<link>http://blog.cloveretl.com/2010/02/01/cloveretl-version-2-9-was-released-it-adds-infobright-data-writer-web-services-component-and-other-new-features/</link>
		<comments>http://blog.cloveretl.com/2010/02/01/cloveretl-version-2-9-was-released-it-adds-infobright-data-writer-web-services-component-and-other-new-features/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 10:18:59 +0000</pubDate>
		<dc:creator>Lucie Felixova</dc:creator>
				<category><![CDATA[Developing Clover]]></category>
		<category><![CDATA[ETL]]></category>
		<category><![CDATA[Infobright]]></category>
		<category><![CDATA[LDAP]]></category>
		<category><![CDATA[release]]></category>
		<category><![CDATA[webservice]]></category>
		<category><![CDATA[XLS]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=412</guid>
		<description><![CDATA[New CloverETL version 2.9. was just released. This version brings a new Infobright Data Writer component, enhances the connectivity by adding Web Services component and adds features that simplify common data transformation tasks.

New Features and Components:
Infobright Data Writer 
In response to customer requests, this component writes data into Infobright software, a column-oriented relational database. Infobright is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=412&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>New CloverETL version 2.9. was just released. This version brings a new Infobright Data Writer component, enhances the connectivity by adding Web Services component and adds features that simplify common data transformation tasks.<br />
<strong></strong></p>
<p><strong><span style="font-size:larger;text-decoration:underline;">New Features and Components:</span></strong><br />
<strong>Infobright Data Writer </strong><br />
In response to customer requests, this component writes data into Infobright software, a column-oriented relational database. Infobright is a provider of solutions designed to deliver a scalable data warehouse optimized for analytic queries.</p>
<p><strong>Web Services component </strong><br />
The new component makes communication with Web Services easier than ever. It provides user friendly graphical interface for mapping your data into Web Service fields, automatically generates requests and process responses. It offers faster, easier and more comfortable way to interact with remote Web Services.<br />
<strong></strong></p>
<p><strong>Reading formatted values from XLS</strong><br />
Additionally to reading plain data from Microsoft<sup>TM</sup> Excel<sup>TM</sup> sheets, the Excel component is now also capable of reading user-formatted values such as currencies, dates or numbers.<br />
<strong></strong></p>
<p><strong>New tracking option</strong><br />
Customers can now see all absolute speed rates for finished data transformations, facilitating comparative analysis in pursuit of process improvements.<br />
<strong></strong></p>
<p><strong>New Aspell Lookup table</strong><br />
Brand new implementation of this component brings better performance, improved configuration and better customization.<br />
<strong></strong></p>
<p><strong>Improved treatment of empty (NULL) values</strong><br />
Developers can now specify special strings that should be treated as empty (NULL) when data is being parsed. This feature simplifies processing of typical application export files which often contain values insignificant for ETL processing. Additionally it may lead to improved processing throughput and lower memory consumption of data transformation.</p>
<p>More user friendly <strong>File URL dialog</strong> and improved <strong>LDAP </strong>functionality.</p>
<p>Customers can evaluate these new features along with CloverETL’s other leading capabilities with a free 30-day trial of the CloverETL Designer Pro evaluation, which is available at <a href="http://www.cloveretl.com/">www.cloveretl.com</a> Information management professionals can also evaluate the enterprise integration features of CloverETL Server via an online demo, which is also available at <a href="http://www.cloveretl.com/">www.cloveretl.com</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/412/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/412/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/412/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=412&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2010/02/01/cloveretl-version-2-9-was-released-it-adds-infobright-data-writer-web-services-component-and-other-new-features/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36840395aaef2cf9186f9dcdc1cb947e?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Lucie Felixova</media:title>
		</media:content>
	</item>
		<item>
		<title>Iteration through the record fields in CTL</title>
		<link>http://blog.cloveretl.com/2010/01/25/iteration-through-the-record-fields-in-ctl/</link>
		<comments>http://blog.cloveretl.com/2010/01/25/iteration-through-the-record-fields-in-ctl/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 09:52:19 +0000</pubDate>
		<dc:creator>Vaclav Matous</dc:creator>
				<category><![CDATA[Using CloverETL]]></category>
		<category><![CDATA[CloverETL]]></category>
		<category><![CDATA[CTL]]></category>
		<category><![CDATA[Hidden features]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=368</guid>
		<description><![CDATA[Recently, I have been facing a very common problem. Imagine this scenario: I have two files – the first one with origin records and the second one with slightly modified new records. Each record had a unique key and aproximately 50 fields. My task was to compare these two files and find out how many [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=368&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } -->Recently, I have been facing a very common problem. Imagine this scenario: I have two files – the first one with origin records and the second one with slightly modified new records. Each record had a unique key and aproximately 50 fields. My task was to compare these two files and find out how many fields in every pair differ from each other in the corresponding records.</p>
<p><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } -->The simplified graph can be seen in following picture:<a href="http://cloveretl.files.wordpress.com/2010/01/data_intersection.png"><img class="aligncenter size-full wp-image-369" title="data_intersection" src="http://cloveretl.files.wordpress.com/2010/01/data_intersection.png?w=663&#038;h=279" alt="" width="663" height="279" /></a></p>
<p><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } -->A comparison of two records can be processed by the CloverETL DataIntersection component which joins the records with the same keys. In the joined records, you can compare fields that are not part of the key. But remember, you have to write the comparison in the CTL transformation <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  . Of course you could write the following block of code for each pair of compared fields:<br />
<code><br />
int count = 0;<br />
if(nvl($0.field_N, '') != nvl($1.field_N, '')) {<br />
count++;<br />
//but typically more actions <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /><br />
}<br />
//and imagine this block 50times <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /><br />
//final mapping<br />
$0.key := $0.key;<br />
$0.count := count;</code></p>
<p><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } -->But this solution takes too much time when you have to repeat it for many fields (approx. 50 in my case). It is also very slow, uncomfortable and increases the probability of making a mistake in your code (e.g. omitting some fields). Fortunately, CloverETL allows you to  iterate through the fields of processed records! <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  The code is then more briefer and more generic:<br />
<code><br />
//declaration of variables for copies of input records<br />
record(Metadata1) myrec1;<br />
record(Metadata1) myrec2;<br />
function transform() {<br />
int i = 0;<br />
int count = 0;<br />
//asign value of input records to local variables<br />
myrec1 = @0; //myrec1 is a copy of a current record on input port 0<br />
myrec2 = @1; //myrec2 is a copy of a current record on input port 1<br />
//iterate through fields, suppose that field with index 0 is the key<br />
for(i = 1; i &lt; length(myrec1); i++) {<br />
if(nvl(myrec1[i], '') != nvl(myrec2[i], '')) {<br />
count++;<br />
}<br />
}<br />
//final mapping<br />
$0.key := $0.key;<br />
$0.count := count;<br />
}</code></p>
<p><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } -->Someone could object to the necessity of making copies of records. In this case I have good news. CTL in CloverETL version 2.9 introduces the possibility of iterating directly through the fields of input records.<br />
<code><br />
@0[i];//i-th field of the input record on port 0</code></p>
<p><!-- 		@page { size: 21cm 29.7cm; margin: 2cm } 		P { margin-bottom: 0.21cm } -->Moreover new functions for getting field names and data types are introduced in version 2.9. Personally, I am looking forward to such features that will make CTL code simplier and clearer.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/368/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/368/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/368/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/368/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/368/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/368/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/368/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/368/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/368/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/368/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=368&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2010/01/25/iteration-through-the-record-fields-in-ctl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/73f56f1267c1896b11e3c6df97499559?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">vmatous</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/01/data_intersection.png" medium="image">
			<media:title type="html">data_intersection</media:title>
		</media:content>
	</item>
		<item>
		<title>DataDirect&#8217;s OracleDB JDBC driver speed test</title>
		<link>http://blog.cloveretl.com/2010/01/12/data-direct-oracle-driver-speed-test/</link>
		<comments>http://blog.cloveretl.com/2010/01/12/data-direct-oracle-driver-speed-test/#comments</comments>
		<pubDate>Tue, 12 Jan 2010 12:39:36 +0000</pubDate>
		<dc:creator>Agata Vackova</dc:creator>
				<category><![CDATA[Using CloverETL]]></category>
		<category><![CDATA[bulkloader]]></category>
		<category><![CDATA[CloverETL]]></category>
		<category><![CDATA[data direct]]></category>
		<category><![CDATA[jdbc]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[sqlldr]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=345</guid>
		<description><![CDATA[Purpose
Compare the speed of data loading into Oracle database (Oracle Database 11g Release 11.1.0.6.0 – Enterprise Edition) with Oracle corp. JDBC driver, DataDirect JDBC Oracle driver and direct data loading (OracleDataWriter component – sqlldr utility) in CloverETL.

Test description

Graph used for testing:

The above graph loads data into database table that contains 3 number columns and 127 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=345&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<h2>Purpose</h2>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } -->Compare the speed of data loading into Oracle database (Oracle Database 11g Release 11.1.0.6.0 – Enterprise Edition) with Oracle corp. JDBC driver,<a href="http://www.datadirect.com/products/jdbc/oracle/index.ssp"> DataDirect JDBC Oracle driver</a> and direct data loading (OracleDataWriter component – <strong>sqlldr</strong> utility) in CloverETL.</p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } 		H2 { margin-bottom: 0.21cm } 		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic } 		H2.cjk { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic } 		H2.ctl { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic } --></p>
<h2>Test description</h2>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } 		H3 { margin-bottom: 0.21cm } 		H3.western { font-family: "Arial", sans-serif } 		H3.cjk { font-family: "Arial", sans-serif } 		H3.ctl { font-family: "Arial", sans-serif } --></p>
<h3>Graph used for testing:</h3>
<p><a href="http://cloveretl.files.wordpress.com/2010/01/dddbload.png"><img class="alignnone size-medium wp-image-346" title="DDdbLoad" src="http://cloveretl.files.wordpress.com/2010/01/dddbload.png?w=286&#038;h=300" alt="DDdbLoad.grf" width="286" height="300" /></a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } 		H2 { margin-bottom: 0.21cm } 		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic } 		H2.cjk { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic } 		H2.ctl { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic } -->The above graph loads data into database table that contains 3 number columns and 127 varchar columns.</p>
<p>Database table for storing data is truncated before each data loading – DBExecute components, each with query: TRUNCATE TABLE dd_test1 REUSE STORAGE</p>
<p><em>Phase 1:</em> loading data with DDBulkLoad (DataDirect) object from csv file (loader.load(file))</p>
<p><em>Phase 3:</em> loading data with DDBulkLoad (DataDirect) object from ResultSet (loader.load(resultSet)) – created ResultSet implementation, that reads data from DataRecord (read from the edge).</p>
<p><em>Phase 4:</em> loading data with DBOutputTable with Oracle corp&#8217;s  JDBC driver:</p>
<pre>Manifest-Version: 1.0
Specification-Title:    Oracle JDBC driver classes for use with JDK14
Sealed: true
Created-By: 1.4.2_08 (Sun Microsystems Inc.)
Implementation-Title:   ojdbc14.jar
Specification-Vendor:   Oracle Corporation
Specification-Version:  Oracle JDBC Driver version - "10.2.0.1.0XE"
Implementation-Version: Oracle JDBC Driver version - "10.2.0.1.0XE"
Implementation-Vendor:  Oracle Corporation
Implementation-Time:    Wed Jan 25 01:28:31 2006</pre>
<p><em>Phase 7:</em> loading data with DBOutputTable with DataDirect Oracle JDBC driver – enabled bulk load feature</p>
<p><em>Phase 9</em>: loading data with OracleDataWriter component from csv file (sqlldr utility)</p>
<p><em>Phase 11: </em>loading data with OracleDataWriter component from edge (sqlldr utility)</p>
<h2>Test processing</h2>
<p>Graph run 3 times for 10,000,000 records with default DataDirect settings.</p>
<p>Graph run 3 times for 1,000,000 records with default DataDirect settings.</p>
<p>Graph run 3 times for 1,000,000 records with following settings:</p>
<p><a href="http://cloveretl.files.wordpress.com/2010/01/connectionproperties.png"><img class="alignnone size-medium wp-image-347" title="Connection Properties" src="http://cloveretl.files.wordpress.com/2010/01/connectionproperties.png?w=215&#038;h=300" alt="" width="215" height="300" /></a></p>
<p><!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } 		H2 { margin-bottom: 0.21cm } 		H2.western { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic } 		H2.cjk { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic } 		H2.ctl { font-family: "Arial", sans-serif; font-size: 14pt; font-style: italic } 		H3 { margin-bottom: 0.21cm } 		H3.western { font-family: "Arial", sans-serif } 		H3.cjk { font-family: "Arial", sans-serif } 		H3.ctl { font-family: "Arial", sans-serif } --></p>
<h2>Test results</h2>
<p>Results in seconds.</p>
<h3>1,000,000 records with default DataDirect settings:</h3>
<p><em>Phase 1:</em> 178, 167, 132 – min: 132, max: 178, average:  159</p>
<p><em>Phase 3:</em> 128, 166, 152 – min: 128, max: 166, average:  149</p>
<p><em>Phase 5:</em> 228, 246, 290 – min: 228, max: 290, average:  255</p>
<p><em>Phase 7</em>: 176, 170, 239 – min: 170, max: 239, average:  195</p>
<p><em>Phase 9:</em> 44, 45, 56 – min: 44, max: 56, average: 48</p>
<p><em>Phase 11:</em> 104, 95, 106 – min: 95, max: 104, average: 102</p>
<h3>1,000,000 records with custom settings:</h3>
<p><em>Phase 1:</em> 163, 152, 142 – min: 142, max: 163, average:  152</p>
<p><em>Phase 3:</em> 166, 133, 134 – min: 133, max: 166, average:  144</p>
<p><em>Phase 5:</em> 278, 263, 260 – min: 260, max: 278, average:  267</p>
<p><em>Phase 7: </em>239, 172, 209 – min: 172, max: 239, average:  207</p>
<h3>10,000,000 records with default DataDirect settings:</h3>
<p><em>Phase 1:</em> 1553, 1818, 1352 – min: 1352, max: 1818, average:  1574</p>
<p><em>Phase 3: </em>1475, 1299, 1298 – min: 1298, max: 1475, average:  1357</p>
<p><em>Phase 5:</em> 3041, 2592, 2550 – min: 2550, max: 3041, average:  2728</p>
<p><em>Phase 7: </em>1824, 1623, 1722 – min: 1722, max: 1824, average:  1723</p>
<p><em>Phase 9: </em>404, 432, 472 – min: 404, max: 472, average: 436</p>
<p><em>Phase 11: </em>1096, 975, 1012 – min: 975, max: 1096, average: 1028</p>
<h2><strong>Summary</strong></h2>
<p>Loading data was slowest when DBOutputTable with original Oracle corp. driver was used. All loadings with DataDirect driver were faster than with Oracle corp. driver but the usage of DDBulkLoad object (DataDirect) plainly increases the speed of loading data in comparison with setting <em>EnableBulkLoad=true</em> and using DBOutputTable. The results for loading data from csv file and edge (result set) are very similar with slight predomination of ResultSet method. All three methods with DataDirect driver usage, get to more steady execution times with number of records to load.</p>
<p>The fastest way of loading data is unquestionably direct data loading with <strong>sqlldr</strong> utility. Even when inter-storing data in pipe, the <strong>sqlldr</strong> utility is about 50% faster than any other method, but is less convenient.<br />
<a href="http://cloveretl.files.wordpress.com/2010/01/graph1.png"><img class="alignnone size-medium wp-image-346" title="1,000,000 records" src="http://cloveretl.files.wordpress.com/2010/01/graph1.png?w=744&#038;h=196" alt="1,000,000 records" width="744" height="196" /></a><br />
﻿﻿<a href="http://cloveretl.files.wordpress.com/2010/01/graph2.png"><img class="alignnone size-medium wp-image-346" title="10,000,000 records" src="http://cloveretl.files.wordpress.com/2010/01/graph2.png?w=744&#038;h=196" alt="10,000,000 records" width="744" height="196" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/345/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/345/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/345/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/345/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/345/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/345/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/345/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/345/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/345/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/345/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=345&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2010/01/12/data-direct-oracle-driver-speed-test/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/934c88184df6c0034450ae00a1695ee8?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">agad</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/01/dddbload.png?w=286" medium="image">
			<media:title type="html">DDdbLoad</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/01/connectionproperties.png?w=215" medium="image">
			<media:title type="html">Connection Properties</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/01/graph1.png" medium="image">
			<media:title type="html">1,000,000 records</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2010/01/graph2.png?w=286" medium="image">
			<media:title type="html">10,000,000 records</media:title>
		</media:content>
	</item>
		<item>
		<title>CloverETL extends ETL Price/Performance Leadership with Launch of CloverETL Cluster</title>
		<link>http://blog.cloveretl.com/2009/12/18/cloveretl-extends-etl-priceperformance-leadership-with-launch-of-cloveretl-cluster/</link>
		<comments>http://blog.cloveretl.com/2009/12/18/cloveretl-extends-etl-priceperformance-leadership-with-launch-of-cloveretl-cluster/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 15:54:59 +0000</pubDate>
		<dc:creator>Lucie Felixova</dc:creator>
				<category><![CDATA[Using CloverETL]]></category>
		<category><![CDATA[Amazon EC2]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[CloverETL]]></category>
		<category><![CDATA[cluster]]></category>
		<category><![CDATA[parallel]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=338</guid>
		<description><![CDATA[On December 9, 2009 CloverETL Cluster Edition was launched at PriceWaterhouseCoopers premises. CloverETL Cluster intelligently partitions data and distributes them evenly across multiple nodes in a cluster for execution in parallel. CloverETL Cluster’s ability to load balance large data transformations increases throughput, fault tolerance and flexibility.
CloverETL Cluster can be deployed on premise in a customer’s [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=338&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>On December 9, 2009 CloverETL Cluster Edition was launched at PriceWaterhouseCoopers premises. CloverETL Cluster intelligently partitions data and distributes them evenly across multiple nodes in a cluster for execution in parallel. CloverETL Cluster’s ability to load balance large data transformations increases throughput, fault tolerance and flexibility.</p>
<p>CloverETL Cluster can be deployed on premise in a customer’s own data center or in a variety of cloud configurations, such as Amazon EC2, which can drive costs even lower. During the launch in Prague, CloverETL Cluster was demonstrated running on four Amazon EC2 servers.</p>
<p>The following table shows the time CloverETL requires to execute a moderately complex transformation of six million records (725 MB) in a variety of local and cloud configurations:</p>
<ul>
<li>CloverETL Desktop Designer on a MacBook:                            150 seconds</li>
<li>CloverETL Cluster Load Balanced Across Two EC2 servers:        60 seconds</li>
<li>CloverETL Cluster Load Balanced Across Three EC2 servers:      43 seconds</li>
<li>CloverETL Cluster Load Balanced Across Four EC2 servers:        31 seconds</li>
</ul>
<p><span style="text-align:center; display: block;"><a href="http://blog.cloveretl.com/2009/12/18/cloveretl-extends-etl-priceperformance-leadership-with-launch-of-cloveretl-cluster/"><img src="http://img.youtube.com/vi/Vj8z-quq6r8/2.jpg" alt="" /></a></span></p>
<p><span style="text-align:center; display: block;"><a href="http://blog.cloveretl.com/2009/12/18/cloveretl-extends-etl-priceperformance-leadership-with-launch-of-cloveretl-cluster/"><img src="http://img.youtube.com/vi/b2LsEzkzRiQ/2.jpg" alt="" /></a></span></p>
<p><span style="text-align:center; display: block;"><a href="http://blog.cloveretl.com/2009/12/18/cloveretl-extends-etl-priceperformance-leadership-with-launch-of-cloveretl-cluster/"><img src="http://img.youtube.com/vi/1Nmd9h9N46c/2.jpg" alt="" /></a></span></p>
<p><span style="text-align:center; display: block;"><a href="http://blog.cloveretl.com/2009/12/18/cloveretl-extends-etl-priceperformance-leadership-with-launch-of-cloveretl-cluster/"><img src="http://img.youtube.com/vi/7uYezGiKiKM/2.jpg" alt="" /></a></span></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/338/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/338/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/338/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/338/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/338/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/338/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/338/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/338/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/338/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/338/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=338&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2009/12/18/cloveretl-extends-etl-priceperformance-leadership-with-launch-of-cloveretl-cluster/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/36840395aaef2cf9186f9dcdc1cb947e?s=96&#38;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">Lucie Felixova</media:title>
		</media:content>

		<media:content url="http://img.youtube.com/vi/Vj8z-quq6r8/2.jpg" medium="image" />

		<media:content url="http://img.youtube.com/vi/b2LsEzkzRiQ/2.jpg" medium="image" />

		<media:content url="http://img.youtube.com/vi/1Nmd9h9N46c/2.jpg" medium="image" />

		<media:content url="http://img.youtube.com/vi/7uYezGiKiKM/2.jpg" medium="image" />
	</item>
		<item>
		<title>ParallelReader Versus Competitors Finish</title>
		<link>http://blog.cloveretl.com/2009/12/09/parallelreader-versus-competitors-finish/</link>
		<comments>http://blog.cloveretl.com/2009/12/09/parallelreader-versus-competitors-finish/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 15:09:09 +0000</pubDate>
		<dc:creator>Petr Uher</dc:creator>
				<category><![CDATA[Using CloverETL]]></category>
		<category><![CDATA[CloverETL]]></category>
		<category><![CDATA[comparison]]></category>
		<category><![CDATA[ParallelReader]]></category>
		<category><![CDATA[pentaho]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[talend]]></category>

		<guid isPermaLink="false">http://blog.cloveretl.com/?p=319</guid>
		<description><![CDATA[As I have promised I bring you a complex comparison of ETL tools: CloverETL, Talend and Pentaho.
Short summary of my previous posts: For testing I used two transformations based on TPCH test and the input data generated by dbgen utility. The transformations were run on my laptop with Windows Vista Home Premium. For detail information [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=319&subd=cloveretl&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>As I have promised I bring you a complex comparison of ETL tools: CloverETL, Talend and Pentaho.</p>
<p>Short summary of my previous posts: For testing I used two transformations based on TPCH test and the input data generated by dbgen utility. The transformations were run on my laptop with Windows Vista Home Premium. For detail information see <a href="http://blog.cloveretl.com/2009/10/26/parallelreader-versus-competitors/">part 1</a> and <a href="http://blog.cloveretl.com/2009/11/11/parallelreader-versus-competitors-part-2/">part 2</a>.</p>
<p><strong>New testing:</strong><br />
To ensure my comparison a full complexity, all tools were tested as &#8220;desktop&#8221; and &#8220;enterprise&#8221; ETL tools. The &#8220;desktop&#8221; tools were running on laptop computer with a small amount of data. The &#8220;enterprise&#8221; ETL tools were running on server class machine with a large amount of data stored both in flat files and in a database. The transformation executed on server class machine was the same as the one I executed on desktop, only the size of input data was changed:</p>
<ul>
<li>lineitem.tbl &#8211;  59,986,052 records,  7.24 GB</li>
<li>customers.tbl – 1,500,000 records, 233 MB</li>
<li>orders.tbl &#8211;  15,000,000 records, 1.62 GB</li>
</ul>
<p>The results of flat file reading:</p>
<p style="text-align:center;font-size:large;"><strong>TPCH-Q1</strong></p>
<p><a href="http://cloveretl.files.wordpress.com/2009/12/tpch11.png"><img src="http://cloveretl.files.wordpress.com/2009/12/tpch11.png?w=936&#038;h=334" alt="TPCH-Q1" title="TPCH-Q1" width="936" height="334" class="aligncenter size-full wp-image-328" /></a></p>
<p style="text-align:center;font-size:large;"><strong>TPCH-Q3</strong></p>
<p><a href="http://cloveretl.files.wordpress.com/2009/12/tpch22.png"><img src="http://cloveretl.files.wordpress.com/2009/12/tpch22.png?w=936&#038;h=334" alt="TPCH-Q3" title="TPCH-Q3" width="936" height="334" class="aligncenter size-full wp-image-329" /></a></p>
<p>The new results of database reading, all previously published results, detailed information about used hardware and a summary are available in <a href="http://www.cloveretl.com/_upload/clover-etl/Comparison_CloverETL_vs_Talend_Pentaho.pdf">this final document</a>.</p>
<p>I also described main features of all tools and my experiences to work with them. This part of the document expresses my opinions so it could be biased since I work mostly with CloverETL. If you don&#8217;t agree with anything, please express your opinion in comments. I will be pleased to discuss them with you.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloveretl.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloveretl.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloveretl.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloveretl.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloveretl.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloveretl.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloveretl.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloveretl.wordpress.com/319/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloveretl.wordpress.com/319/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloveretl.wordpress.com/319/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.cloveretl.com&blog=7070972&post=319&subd=cloveretl&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://blog.cloveretl.com/2009/12/09/parallelreader-versus-competitors-finish/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/cec19d3aab248f6f4591a97277323f2c?s=96&#38;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D96&#38;r=G" medium="image">
			<media:title type="html">puher</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2009/12/tpch11.png" medium="image">
			<media:title type="html">TPCH-Q1</media:title>
		</media:content>

		<media:content url="http://cloveretl.files.wordpress.com/2009/12/tpch22.png" medium="image">
			<media:title type="html">TPCH-Q3</media:title>
		</media:content>
	</item>
	</channel>
</rss>