<?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/"
	>

<channel>
	<title>bisql.net &#187; Open Source</title>
	<atom:link href="http://www.bisql.net/category/floss/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bisql.net</link>
	<description>Ashley Burton&#039;s BI, SQL &#38; Mobile Dev Blog</description>
	<lastBuildDate>Tue, 24 Jan 2012 06:09:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Quick Tip – PostgreSQL Equivalent of ISNUMERIC()</title>
		<link>http://www.bisql.net/2011/12/quick-tip-%e2%80%93-postgresql-equivalent-of-isnumeric/</link>
		<comments>http://www.bisql.net/2011/12/quick-tip-%e2%80%93-postgresql-equivalent-of-isnumeric/#comments</comments>
		<pubDate>Thu, 01 Dec 2011 09:03:33 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[DBA]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[ISNUMERIC]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Postgres]]></category>
		<category><![CDATA[RegExp]]></category>
		<category><![CDATA[Regular Expressions]]></category>
		<category><![CDATA[sql]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=1008</guid>
		<description><![CDATA[Very much like my previous MySQL ISNUMERIC() post I have recently been setting up a data source to collect records with telephone numbers from a Postgres database and one of the essential validation tests is to make sure that the field really does contain a number. Despite the fact that many regard Postgres as the [...]]]></description>
			<content:encoded><![CDATA[
<p>Very much like my previous <a title="Quick Tip – MySQL Equivalent of ISNUMERIC()" href="http://www.bisql.net/2010/12/quick-tip-mysql-equivalent-of-isnumeric/" target="_blank">MySQL ISNUMERIC()</a> post I have recently been setting up a data source to collect records with telephone numbers from a Postgres database and one of the essential validation tests is to make sure that the field really does contain a number.</p>
<p>Despite the fact that many regard Postgres as the best open source database platform I find myself frustrated by it&#8217;s lack of standard functions.  I understand that Postgres is designed to be extensible and that user defined functions can be built but I need my code to be both portable and read-only so I have to work with what I&#8217;m given.  Ideally what I&#8217;d be looking for is an equivalent of Microsoft SQL Server&#8217;s <span style="font-family: Courier New; font-size: small; color: maroon;">ISNUMERIC()</span> or Excel&#8217;s <span style="font-family: Courier New; font-size: small; color: maroon;">ISNUMBER()</span> functions but very much like MySQL I had to turn to regular expressions although as you&#8217;ll see, Postgres does not have a clean and clear <span style="font-family: Courier New; font-size: small;"><span style="color: blue;">REGEXP</span>()</span> function&#8230;</p>
<p><span style="font-family: Courier New; font-size: small;"><span style="color: blue;">SELECT</span> <span style="color: blue;">DISTINCT</span> <span style="color: maroon;">contact_number</span><br />
<span style="color: blue;">FROM</span> <span style="color: maroon;">customers</span><br />
<span style="color: blue;">WHERE</span> (<span style="color: maroon;">contact_number</span> ~ <span style="color: red;">&#8216;^[0-9]+$&#8217;</span><span style="color: maroon;">)</span></span></p>
<p>I hope that helps any of you out there that encounter the same problem, thanks to the poster <a href="http://jdsimptest.wordpress.com/2008/04/25/postgresql-isnumeric/" target="_blank">here </a>for my original answer.</p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2011%252F12%252Fquick-tip-%2525e2%252580%252593-postgresql-equivalent-of-isnumeric%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FrAR4ox%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22Quick%20Tip%20%E2%80%93%20PostgreSQL%20Equivalent%20of%20ISNUMERIC%28%29%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2011/12/quick-tip-%e2%80%93-postgresql-equivalent-of-isnumeric/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using MySQL BLOB Data via ODBC in SSIS, SQL Server &amp; Business Objects</title>
		<link>http://www.bisql.net/2011/03/mysql-odbc-blob/</link>
		<comments>http://www.bisql.net/2011/03/mysql-odbc-blob/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 20:58:36 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[Business Objects]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Microsoft SQL Server]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[SSIS]]></category>
		<category><![CDATA[binary]]></category>
		<category><![CDATA[blob]]></category>
		<category><![CDATA[business objects]]></category>
		<category><![CDATA[ETL]]></category>
		<category><![CDATA[Integration Services]]></category>
		<category><![CDATA[mys]]></category>
		<category><![CDATA[ODBC]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=811</guid>
		<description><![CDATA[Whilst trying to build a centralised cross-platform alerting system I spotted a peculiar issue when trying to move the output of a SHOW FULL PROCESSLIST command on MySQL via ODBC.  It seems that the output of the SHOW FULL PROCESSLIST command returns both integers and binary (BLOB) data types even though to they eye (that [...]]]></description>
			<content:encoded><![CDATA[
<p>Whilst trying to build a centralised cross-platform alerting system I spotted a peculiar issue when trying to move the output of a SHOW FULL PROCESSLIST command on MySQL via ODBC.  It seems that the output of the SHOW FULL PROCESSLIST command returns both integers and binary (BLOB) data types even though to they eye (that is, in the MySQL Query Browser) most of the columns appear to be short text fields.</p>
<p>Despite the fact that the data <em>looks</em> like text whenever I tried to return the data into an application, I tried SSIS, SQL Server Linked Servers <em>and</em> Business Objects, each time the data would come back unusable or an error would be returned.  Business Objects gave me the key by declaring &#8220;This is a BLOB.&#8221; as you can see in the following screenshots&#8230;</p>
<p><span style="text-decoration: underline;">SQL Server Integration Services</span></p>
<p><em><img class="alignnone size-full wp-image-819" title="mysql_blob_ssis_01" src="http://www.bisql.net/wp-content/uploads/2011/03/mysql_blob_06.png" alt="" width="508" height="186" /></em></p>
<p><span style="text-decoration: underline;">SQL Server Linked Server</span></p>
<p><img class="alignnone size-full wp-image-818" title="mysql_blob_linked_02" src="http://www.bisql.net/wp-content/uploads/2011/03/mysql_blob_05.png" alt="" width="352" height="163" /></p>
<p><span style="text-decoration: underline;">Business Objects Desktop Intelligence</span></p>
<p><span style="text-decoration: underline;"><img class="alignnone size-full wp-image-814" title="mysql_blob_busobj_01" src="http://www.bisql.net/wp-content/uploads/2011/03/mysql_blob_01.png" alt="" width="169" height="138" /></span></p>
<p>As with my recent post about <a title="Loading Data into MySQL Using SSIS" href="http://www.bisql.net/2011/03/pgsql_ssis_mysql/" target="_blank">loading data into MySQL with SSIS</a> the saviour turns out to be an ODBC configuration setting, this time in the Metadata tab of the MySQL ODBC driver.  All you have to do is check the &#8220;Always handle binary function results as character data&#8221; and instantly your problems will be solved&#8230;</p>
<p><img class="alignnone size-full wp-image-815" title="mysql_blob_odbc" src="http://www.bisql.net/wp-content/uploads/2011/03/mysql_blob_02.png" alt="" width="387" height="267" /></p>
<p>Out of a crazy fit of completeness I also took screenshots of the final results and it&#8217;d be a shame to waste them so here they are&#8230;</p>
<p><span style="text-decoration: underline;">SQL Server Integration Services</span></p>
<p><img class="alignnone size-full wp-image-822" title="mysql_blob_ssis_02" src="http://www.bisql.net/wp-content/uploads/2011/03/mysql_blob_08.png" alt="" width="457" height="149" /></p>
<p><span style="text-decoration: underline;">SQL Server Linked Server</span></p>
<p><span style="text-decoration: underline;"><img class="alignnone size-full wp-image-817" title="mysql_blob_linked_03" src="http://www.bisql.net/wp-content/uploads/2011/03/mysql_blob_04.png" alt="" width="277" height="125" /><br />
</span></p>
<p>&nbsp;</p>
<p><span style="text-decoration: underline;">Business Objects Desktop Intelligence</span></p>
<p><img class="alignnone size-full wp-image-816" title="mysql_blob_busobj_02" src="http://www.bisql.net/wp-content/uploads/2011/03/mysql_blob_03.png" alt="" width="377" height="77" /></p>
<p>&nbsp;</p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2011%252F03%252Fmysql-odbc-blob%252F%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22Using%20MySQL%20BLOB%20Data%20via%20ODBC%20in%20SSIS%2C%20SQL%20Server%20%26%20Business%20Objects%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2011/03/mysql-odbc-blob/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Loading Data into MySQL with SSIS via ODBC (sql_mode = ANSI)</title>
		<link>http://www.bisql.net/2011/03/pgsql_ssis_mysql/</link>
		<comments>http://www.bisql.net/2011/03/pgsql_ssis_mysql/#comments</comments>
		<pubDate>Sat, 05 Mar 2011 18:40:27 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[Microsoft SQL Server]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[SSIS]]></category>
		<category><![CDATA[.NET]]></category>
		<category><![CDATA[ADO]]></category>
		<category><![CDATA[BIDS]]></category>
		<category><![CDATA[ETL]]></category>
		<category><![CDATA[Integration Services]]></category>
		<category><![CDATA[ODBC]]></category>
		<category><![CDATA[Postgres]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=798</guid>
		<description><![CDATA[I was performing a test earlier, a proof-of-concept to show that we could use Integration Services to move data from one platform (PostgreSQL) to another (MySQL) without SQL Server itself being involved at all.  Unfortunately I hit a slight snag on the first simple attempt, I could read the data without a hitch but despite [...]]]></description>
			<content:encoded><![CDATA[
<p><img class="alignright size-full wp-image-799" title="PostgreSQL to MySQL via SSIS 1" src="http://www.bisql.net/wp-content/uploads/2011/03/pg_ssis_mysql_01.png" alt="" width="210" height="245" />I was performing a test earlier, a proof-of-concept to show that we could use Integration Services to move data from one platform (PostgreSQL) to another (MySQL) without SQL Server itself being involved at all. </p>
<p>Unfortunately I hit a slight snag on the first simple attempt, I could read the data without a hitch but despite multiple attempts at tweaking SSIS settings and reconfiguring connections I could not manage to get data into the MySQL target table.  Amongst other messages in the Output window in BIDS I could see the following error&#8230;</p>
<p>[MySQL][ODBC 5.1 Driver][mysqld-5.0.45-log]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near &#8216;&#8221;tblDestination&#8221; (&#8220;col1&#8243;, &#8220;col2&#8243;, &#8220;col3&#8243;, &#8220;col4&#8243;, &#8220;col5&#8243;, &#8220;c&#8217; at line 1</p>
<p>After some Googling I determined that the issue was down to an incompatibility between the SQL being generated by SSIS and the default MySQL engine, specifically that MySQL was not setup to accept ANSI compliant SQL.  Most of the solutions out there seemed to require that the entire server was configured in the ANSI compliant mode which was a problem for me as it&#8217;s a shared server and I can&#8217;t go reconfiguring it at will.  Thankfully MySQL provides the ability to set the mode on a per connection level with the following command&#8230;</p>
<pre style="padding-left: 30px;">SET SESSION sql_mode= 'ansi';</pre>
<p>The trick is &#8211; how to get SSIS to run this before inserting the data without messing with the package itself?  The easiest way is to have the ODBC driver send the command at the point SSIS opens the connection, this can be configured in the settings of the ODBC source&#8230;</p>
<p><img class="alignnone size-full wp-image-807" title="PostgreSQL to MySQL via SSIS 2" src="http://www.bisql.net/wp-content/uploads/2011/03/pg_ssis_mysql_02.png" alt="" width="395" height="316" /></p>
<p>This is a relatively common feature of ODBC drivers and allows you to setup initial configuration options for this exact reason, now I know that I will not impact any other users of the server and my SSIS package works just fine.</p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2011%252F03%252Fpgsql_ssis_mysql%252F%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22Loading%20Data%20into%20MySQL%20with%20SSIS%20via%20ODBC%20%28sql_mode%20%3D%20ANSI%29%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2011/03/pgsql_ssis_mysql/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Using SQL Server 2008 R2 Linked Servers with PostgreSQL 64-bit</title>
		<link>http://www.bisql.net/2011/02/sql_pg_linked/</link>
		<comments>http://www.bisql.net/2011/02/sql_pg_linked/#comments</comments>
		<pubDate>Mon, 28 Feb 2011 14:48:03 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[DBA]]></category>
		<category><![CDATA[Microsoft SQL Server]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[2008 R2]]></category>
		<category><![CDATA[Linked Servers]]></category>
		<category><![CDATA[MSDASQL]]></category>
		<category><![CDATA[OLE DB]]></category>
		<category><![CDATA[Postgres]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=791</guid>
		<description><![CDATA[Having setup a Linked Server in Management Studio talking to a PostgreSQL 8 database I encountered the following error when attempting to run any valid query: Msg 7399, Level 16, State 1, Line 1 The OLE DB provider "MSDASQL" for linked server "PG_SERVER" reported an error. The provider reported an unexpected catastrophic failure. Msg 7350, [...]]]></description>
			<content:encoded><![CDATA[
<p>Having setup a Linked Server in Management Studio talking to a PostgreSQL 8 database I encountered the following error when attempting to run any valid query:</p>
<pre><span style="color: #ff0000;">Msg 7399, Level 16, State 1, Line 1</span>
<span style="color: #ff0000;">The OLE DB provider "MSDASQL" for linked server "PG_SERVER" reported an error. The provider reported an unexpected catastrophic failure.</span>
<span style="color: #ff0000;">Msg 7350, Level 16, State 2, Line 1</span>
<span style="color: #ff0000;">Cannot get the column information from OLE DB provider "MSDASQL" for linked server "PG_SERVER".</span></pre>
<p><span style="color: #333333;">After some digging I came across a handy article on </span><a title="Microsoft Connect" href="http://connect.microsoft.com/SQLServer/feedback/details/620247/using-sql-2008-link-server-to-connect-to-postgres-by-odbc-64-bit-driver-psqlodbc-09-00-0200-x64" target="_blank"><span style="color: #0000ff;">Microsoft Connect </span></a><span style="color: #333333;">describing the same issue, with thanks to Nenea Nelu here&#8217;s the solution&#8230;</span></p>
<ul>
<li>Expand Server Objects &gt; Linked Servers &gt; Providers. <br />
<img class="alignnone size-full wp-image-792" title="Linked Server PG 01" src="http://www.bisql.net/wp-content/uploads/2011/02/sql_pg_01.png" alt="" width="305" height="237" /></li>
<li>Right-click on MSDASQL and select Properties&#8230;</li>
<li>In the Properties dialogue <em><strong>un</strong>-check </em>&#8220;Allow inprocess&#8221; as follows&#8230;<br />
<img class="alignnone size-full wp-image-793" title="Linked Server PG 02" src="http://www.bisql.net/wp-content/uploads/2011/02/sql_pg_02.png" alt="" width="287" height="213" /></li>
<li>Click OK and re-run your query. </li>
</ul>
<p>Hopefully that should solve your problem, please note that this will affect all Linked Servers using that provider however as the Connect article points out &#8211; this is best practice for linked servers anyway.</p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2011%252F02%252Fsql_pg_linked%252F%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22Using%20SQL%20Server%202008%20R2%20Linked%20Servers%20with%20PostgreSQL%2064-bit%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2011/02/sql_pg_linked/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Veggie Phrases App Available on Android</title>
		<link>http://www.bisql.net/2011/01/veggie-phrases-app-available-on-android/</link>
		<comments>http://www.bisql.net/2011/01/veggie-phrases-app-available-on-android/#comments</comments>
		<pubDate>Mon, 31 Jan 2011 09:00:08 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mobile Apps]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[apps]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[mobile apps]]></category>
		<category><![CDATA[Vegetarian]]></category>
		<category><![CDATA[Veggie]]></category>
		<category><![CDATA[veggie phrases]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=763</guid>
		<description><![CDATA[Just a short post to say that Veggie Phrases is now available on the Android Marketplace, you can read the details on AppBrain - if you&#8217;ve not seen the app before it&#8217;s a handy pocket phrasebook to help travelling vegetarians and vegans communicate their dining preferences when overseas and best of all it&#8217;s completely free! I&#8217;ll follow up when I [...]]]></description>
			<content:encoded><![CDATA[
<p><a href="http://www.appbrain.com/app/veggie-phrases/com.phonegap.vegphrases#"><img class="size-thumbnail wp-image-582 alignright" title="Veggie Phrases" src="http://www.bisql.net/wp-content/uploads/2010/11/photo-150x150.png" alt="" width="69" height="69" /></a>Just a short post to say that <a title="Veggie Phrases" href="http://www.bisql.net/apps/veggie-phrases/" target="_blank">Veggie Phrases </a>is now available on the Android Marketplace, you can read the details on <a href="http://www.appbrain.com/app/veggie-phrases/com.phonegap.vegphrases">AppBrain</a> - if you&#8217;ve not seen the app before it&#8217;s a handy pocket phrasebook to help travelling vegetarians and vegans communicate their dining preferences when overseas and best of all it&#8217;s completely free!</p>
<p>I&#8217;ll follow up when I get the chance with a brief description of the process I followed but for now, please grab your phone and give it a try. Let me know if you have an issues, I only had a chance to test it briefly since I&#8217;m an iPhone user!</p>
<p><a href="http://www.appbrain.com/app/com.phonegap.vegphrases?install">Download Veggie Phrases for Android</a></p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2011%252F01%252Fveggie-phrases-app-available-on-android%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FfCNPDj%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22Veggie%20Phrases%20App%20Available%20on%20Android%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2011/01/veggie-phrases-app-available-on-android/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Interesting Open Source BI Blog</title>
		<link>http://www.bisql.net/2011/01/slawomir-chodnicki/</link>
		<comments>http://www.bisql.net/2011/01/slawomir-chodnicki/#comments</comments>
		<pubDate>Fri, 14 Jan 2011 16:56:17 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[Business Intelligence]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Pentaho]]></category>
		<category><![CDATA[BI]]></category>
		<category><![CDATA[Jaspersoft]]></category>
		<category><![CDATA[Kettle]]></category>
		<category><![CDATA[Slawomir Chodnicki]]></category>
		<category><![CDATA[SQL Power Group]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=748</guid>
		<description><![CDATA[I&#8217;ve been interested in the idea of Open Source BI for quite a while and for certain organisations or requirement sets I believe that Open Source BI has a very bright future.  Open Source offerings may never oust the &#8216;big boys&#8217; like Informatica and Oracle Data Integrator but they will become valid competitors in time, though [...]]]></description>
			<content:encoded><![CDATA[
<p>I&#8217;ve been interested in the idea of Open Source BI for quite a while and for certain organisations or requirement sets I believe that Open Source BI has a very bright future.  Open Source offerings may never oust the &#8216;big boys&#8217; like Informatica and Oracle Data Integrator but they will become valid competitors in time, though vendors offering paid  &#8216;Enterprise&#8217; editions need to be careful that their high-end offerings aren&#8217;t priced too high since people spending large sums are bound to tend towards proven solutions from stable companies. </p>
<p>Anyway, to get to the point &#8211; today I stumbled across an intersting blog by <a title="Slawomir Chodnicki" href="http://type-exit.org/adventures-with-open-source-bi/" target="_blank">Slawomir Chodnicki</a> covering Open Source BI and ETL products from <a href="http://community.pentaho.com/" target="_blank">Pentaho</a>, <a href="http://www.jasperforge.org/" target="_blank">JasperSoft</a> and <a href="http://www.sqlpower.ca/" target="_blank">SQL Power Group</a>.  Much of the content is of the &#8216;how to&#8217; variety but if you&#8217;re interested in the topic as a whole it&#8217;s worth stopping by <a title="Adventures with Open Source BI" href="http://type-exit.org/adventures-with-open-source-bi/" target="_blank">Adventures With Open Source BI</a>. </p>
<p><a title="Adventures with Open Source BI" href="http://type-exit.org/adventures-with-open-source-bi/" target="_blank"><img class="alignnone size-full wp-image-750" title="AdventuresOpenSourceBI" src="http://www.bisql.net/wp-content/uploads/2011/01/AdventuresOpenSourceBI.png" alt="" width="600" height="456" /></a></p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2011%252F01%252Fslawomir-chodnicki%252F%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22Interesting%20Open%20Source%20BI%20Blog%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2011/01/slawomir-chodnicki/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quick Tip – MySQL Equivalent of ISNUMERIC()</title>
		<link>http://www.bisql.net/2010/12/quick-tip-mysql-equivalent-of-isnumeric/</link>
		<comments>http://www.bisql.net/2010/12/quick-tip-mysql-equivalent-of-isnumeric/#comments</comments>
		<pubDate>Mon, 20 Dec 2010 18:14:54 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[ISNUMBER]]></category>
		<category><![CDATA[ISNUMERIC]]></category>
		<category><![CDATA[RegExp]]></category>
		<category><![CDATA[Regular Expressions]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=558</guid>
		<description><![CDATA[In one of the source databases for my data warehouse I have a table of contact telephone numbers, stored as VARCHAR() values since where a number is not available the record might say &#8220;unknown&#8221;, or &#8220;N/A&#8221;.  So to extract a list of all valid telephone telephone numbers I need to perform a logical test and one of [...]]]></description>
			<content:encoded><![CDATA[
<p>In one of the source databases for my data warehouse I have a table of contact telephone numbers, stored as VARCHAR() values since where a number is not available the record might say &#8220;unknown&#8221;, or &#8220;N/A&#8221;.  So to extract a list of all valid telephone telephone numbers I need to perform a logical test and one of the simplest checks I can perform is to verify that the number is actually a number. </p>
<p>This would be pretty straight-forward in Excel with the <span style="font-family: Courier New; font-size: small; color: maroon;">ISNUMBER</span><span style="color: maroon;">(</span><span style="color: maroon;">) </span>function, or in T-SQL with <span style="font-family: Courier New; font-size: small; color: maroon;">ISNUMERIC</span><span style="color: maroon;">(</span><span style="color: maroon;">)</span>, but neither work in MySQL so after a little searching around I came across this solution&#8230;</p>
<p><span style="font-family: Courier New; font-size: small;"><span style="color: blue;">SELECT</span> <span style="color: blue;">DISTINCT</span> <span style="color: maroon;">contact_number</span><br />
<span style="color: blue;">FROM</span> <span style="color: maroon;">customers</span><br />
<span style="color: blue;">WHERE</span> <span style="color: maroon;">contact_number</span> <span style="color: blue;">REGEXP</span> <span style="color: maroon;">(</span><span style="color: red;">&#8216;[0-9]&#8216;</span><span style="color: maroon;">)</span></span></p>
<p>Effectively we&#8217;re processing a regular expression on the contents of the &#8216;contact_number&#8217; field, it may seem like using a sledgehammer to crack a nut and I&#8217;ve no idea how performance would differ from a more simple approach but it worked and I guess that&#8217;s the point.</p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2010%252F12%252Fquick-tip-mysql-equivalent-of-isnumeric%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2Fg45nZL%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22Quick%20Tip%20%E2%80%93%20MySQL%20Equivalent%20of%20ISNUMERIC%28%29%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2010/12/quick-tip-mysql-equivalent-of-isnumeric/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trends in Business Intelligence &amp; 2010 Review</title>
		<link>http://www.bisql.net/2010/12/2010_bi_roundup/</link>
		<comments>http://www.bisql.net/2010/12/2010_bi_roundup/#comments</comments>
		<pubDate>Wed, 15 Dec 2010 08:00:18 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[Business Intelligence]]></category>
		<category><![CDATA[Business Objects]]></category>
		<category><![CDATA[Microsoft SQL Server]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Reporting Services]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SSIS]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[2008 R2]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[BI]]></category>
		<category><![CDATA[BI Trends]]></category>
		<category><![CDATA[business objects]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[Cognos]]></category>
		<category><![CDATA[IBM]]></category>
		<category><![CDATA[informatica]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Jaspersoft]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mobile BI]]></category>
		<category><![CDATA[Nike+]]></category>
		<category><![CDATA[OBIEE]]></category>
		<category><![CDATA[OSS]]></category>
		<category><![CDATA[Pentaho]]></category>
		<category><![CDATA[Personal Intelligence]]></category>
		<category><![CDATA[RoamBI]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Talend]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=633</guid>
		<description><![CDATA[It&#8217;s the time of year when magazine editors can&#8217;t resist the urge to fill their glossy wares full of &#8216;thing of the year&#8217; articles, the print equivalent of the mid-season &#8220;clip show&#8221; that has plagued many a TV series.  Well, if it&#8217;s good enough for them it&#8217;s good enough for me so here&#8217;s my rather [...]]]></description>
			<content:encoded><![CDATA[
<p>It&#8217;s the time of year when magazine editors can&#8217;t resist the urge to fill their glossy wares full of &#8216;thing of the year&#8217; articles, the print equivalent of the mid-season &#8220;clip show&#8221; that has plagued many a TV series.  Well, if it&#8217;s good enough for them it&#8217;s good enough for me so here&#8217;s my rather unstructured and unscientific take on Business Intelligence and Data Warehousing in the year that was &#8211; 2010&#8230;</p>
<p><strong><span style="text-decoration: underline;">Market Trends</span></strong></p>
<p>To start, I&#8217;ve taken a series of snapshots from the excellent <a title="Google Trends" href="http://trends.google.com/" target="_blank">Google Trends</a> showing global search volumes for each of the Big Four offerings to measure the level of interest.  It&#8217;s reasonably clear to see from the graph below that interest in OBIEE shows a small but steady growth whilst Reporting Services shows a marked decline and the other two offerings remains roughly static (maybe a small decline?), this surprised me given that with the release of 2008 R2 I think that Reporting Services is really getting to the point where it offers a legitimate choice in the BI marketplace.  Perhaps the issue that Microsoft have fragmented their BI offering to include a mixture of terms with Excel, PowerPivot, SharePoint, Analysis Services and Reporting Services all making up the BI stack and nobody really knows what to call it?</p>
<h6><a href="http://trends.google.com/trends?q=cognos%2C+obiee%2C+business+objects%2C+reporting+services+&amp;ctab=0&amp;geo=all&amp;date=ytd&amp;sort=0" target="_blank"> <img class="alignnone size-full wp-image-664" title="bi_big_four" src="http://www.bisql.net/wp-content/uploads/2010/11/bi_big_four.png" alt="" width="580" height="260" /><br />
</a></h6>
<table width="0%">
<tbody>
<tr>
<td><span style="color: #4684ee;"><strong>Cognos</strong> </span></td>
<td><span style="color: #dc3912;"><strong>OBIEE</strong> </span></td>
<td><span style="color: #ff9900;"><strong>Business Objects</strong> </span></td>
<td><span style="color: #008000;"><strong>Reporting Services</strong></span></td>
</tr>
</tbody>
</table>
<p>This year has also brought an increased emphasis on Mobile BI with the iPad and iPhone fast becoming common executive playthings, Business Objects making it&#8217;s Explorer and Xcelsius products available on Android in addition to the iPhone (Explorer only).  MicroStrategy took the mobile emphasis a step further (perhaps to help stick their head above the crowd) by announcing a strong focus on the mobile BI market and offering a <a href="http://www.microstrategy.com/freemobilebi/" target="_blank">free 25-seat licence</a> for their Mobile Suite.  Despite a strong focus on marketing Mobile BI I&#8217;m still not convinced that any of the vendors have really hit the nail on the head with their solutions in that whilst many offer pretty visualisations and slick interfaces most seem to lack the kind of simplicity that helps to present information quickly and succinctly, even the frankly beautiful independent product <a href="http://www.roambi.com/" target="_blank">RoamBI</a> just feels a little overdone when it comes to actually using it.</p>
<p><strong><span style="text-decoration: underline;">Major Product Releases</span></strong></p>
<p>It&#8217;s been quite a year in the BI &amp; Database world with the launch of Microsoft SQL Server 2008 R2, Oracle Business Intelligence Enterprise Edition (OBIEE) 11g and IBM&#8217;s Cognos 10&#8230;</p>
<p><img class="alignright size-full wp-image-650" title="image.axd" src="http://www.bisql.net/wp-content/uploads/2010/11/image.axd_.png" alt="" width="218" height="136" />Microsoft&#8217;s launch is effectively a moderate evolution of SQL Server 2008 in most areas with little change to the database engine, it&#8217;s ETL tool Integration Services and it&#8217;s OLAP engine Analysis Services.  That said, R2 did bring some handy incremental features which will be especially welcomed by the budget-conscious with an increase in the DB size of the free Express Edition from 4GB to 10GB and the addition of Backup Compression to Standard Edition.  There were some interesting additions with PowerPivot, Master Data Services and StreamInsight thought I&#8217;m not sure that either will find a natural home for a good year or so as busy DBAs and developers struggle to find the time to try these new features out.</p>
<p><img class="alignleft size-full wp-image-657" title="Oracle" src="http://www.bisql.net/wp-content/uploads/2010/11/Screen-shot-2010-11-30-at-03.39.01.png" alt="" width="189" height="39" />Despite the major jump in the version number Oracle&#8217;s release too seems to be mainly an evolution and as a great fan of the product I&#8217;m quite considerably relieved since Oracle could quite easily have been over-zealous in integrating their &#8216;own&#8217; tools like Discoverer and Warehouse Builder with bought-in technologies like Siebel Analytics (which became the bedrock of OBIEE), Hyperion&#8217;s Essbase and Sunopsis (now Oracle Data Integrator).  One of the less exciting but fundamentally important additions is that the semantic layer employed in OBIEE will be directly and immediately compatible with future releases of other Oracle products in the CRM, ERP and Finance application spaces.</p>
<p><img class="alignright size-full wp-image-660" title="ibm-logo" src="http://www.bisql.net/wp-content/uploads/2010/11/ibm-logo.png" alt="" width="134" height="134" />I&#8217;m not as familiar with Cognos as the other two tools having only experimented with Cognos 8 for a couple of weeks but from everything I&#8217;ve read it seems that Cognos 10 was certainly a major milestone in the product&#8217;s lifecycle.  Aside from the shiny sounding features such as Social Networking and iPad support (actually a very serviceable looking mobile BI app) there are some very cutting-edge additions to the product including a statistical engine drawn from SPSS and Active Reports which allows users to explore and analyse offline data including interactive email reports.</p>
<p><strong><span style="text-decoration: underline;">The Future?</span></strong></p>
<p>No good review and roundup article ends without a nod to the future and whilst I&#8217;m not keen on making absolute predictions there are a few developments I&#8217;ll be keeping my eye on for 2011 and beyond.</p>
<p>The main event I&#8217;m anticipating is the release of Business Objects XI Release 4, I&#8217;ve not seen too many concrete details about functionality but over the last few years Business Objects have seen themselves distracted by the Crystal acquisition (including the shoe-horning of their core product into Crystal Enterprise) and in turn their acquisition by SAP.  As a regular and long-term user of Business Objects I&#8217;m really hoping that they&#8217;ll blow away some of the cobwebs and deliver some new functionality as well as rounding off some of the edges that in previous versions feel a little unfinished, it would be great too if they finally included the key functionality from the legacy desktop client (which many long-term customer still rely on) in their core Web Intelligence product (Freehand-SQL &amp; Grouping &#8211; I&#8217;m looking at you).</p>
<p><img class="alignright size-full wp-image-690" title="Informatica Cloud" src="http://www.bisql.net/wp-content/uploads/2010/12/Cloud-w-Services.png" alt="" width="289" height="185" />Another area to watch in Business Intelligence and Data Warehousing as well as the wider enterprise market is cloud computing, Informatica&#8217;s <a href="http://www.informaticacloud.com/" target="_blank">ETL in the Cloud</a> offering has seen improvements and adoption throughout 2010 and it&#8217;s almost a given that Microsoft will be adding some degree of ETL capability to their <a href="http://www.microsoft.com/en-us/sqlazure/default.aspx" target="_blank">SQL Azure</a> platform. I&#8217;d expect an announcement if not a release along these lines in the coming year, though it&#8217;s possible that ETL comes behind providing cloud based analytics (something <a href="http://sqlblog.com/blogs/jamie_thomson/archive/2010/10/21/reading-the-sql-azure-tea-leaves.aspx" target="_blank">SSIS guru Jamie Thomson</a> suggests).</p>
<p>In a broader sense I&#8217;m expecting to see a little more interest and pickup in the open source BI market, I&#8217;ve been saying this for a while (&#8220;<em><a title="This time next year, Rodders..." href="http://www.bisql.net/?attachment_id=682" target="_blank">this time next year, Rodders&#8230;</a></em>&#8220;) and I might be wrong for some time to come but I always keep an eye on companies using an Open Source model such as the ETL vendor <a title="Talend" href="http://www.talend.com/index.php" target="_blank">Talend</a> who recently acquired Sopera (a middleware and SOA vendor), BI vendor <a href="http://www.jaspersoft.com/" target="_blank">Jaspersoft</a> and all-rounder <a href="http://www.pentaho.com/" target="_blank">Pentaho</a>.  With the global economy still suffering a hangover from the sub-prime mortgage crisis and banking collapse people have been looking for cheaper alternatives and open source companies provide a great way to achieve that, though some of Talend&#8217;s high-end offerings are almost comparable in price with other commercial products.</p>
<p>Another possible area to watch out for is the area of Personal Intelligence, essentially Business Intelligence for the individual.  A colleague and I spoke about this back in 2008 and we could both see that as people increasingly become data-aware they&#8217;ll start to look inwards and aim to measure things about themselves, one obvious starting point is fitness and we already have sites to <a href="http://www.weightlossresources.co.uk/" target="_blank">log and chart your weight</a> and calorie intake as well as the brilliant Nike+ product that measures your pace, time and distance during a run using either a sensor in your shoe or GPS (iPhone app), see the sidebar of this blog or below (<a href="http://nikerunning.nike.com/nikeos/p/nikeplus/en_GB/plus/?sitesrc=fbk_ab_plus#//runs/detail/275253305/1908225372/all/allRuns/" target="_blank">one of my runs on the Nike+ site</a>) for examples of the output.</p>
<p><a href="http://nikerunning.nike.com/nikeos/p/nikeplus/en_GB/plus/?sitesrc=fbk_ab_plus#//runs/detail/275253305/1908225372/all/allRuns/" target="_blank"><img class="alignnone size-full wp-image-691" title="Screen shot 2010-11-30 at 06.00.02" src="http://www.bisql.net/wp-content/uploads/2010/12/Screen-shot-2010-11-30-at-06.00.02.png" alt="" width="505" height="284" /></a></p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2010%252F12%252F2010_bi_roundup%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FgESCHO%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22Trends%20in%20Business%20Intelligence%20%26%202010%20Review%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2010/12/2010_bi_roundup/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>MySQL 32-bit ODBC Invalid Attribute String 64-bit Windows 7</title>
		<link>http://www.bisql.net/2010/11/mysql-odbc-ias/</link>
		<comments>http://www.bisql.net/2010/11/mysql-odbc-ias/#comments</comments>
		<pubDate>Mon, 01 Nov 2010 12:49:19 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[Business Objects]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[32-bit]]></category>
		<category><![CDATA[64-bit]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[business objects]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[DeskI]]></category>
		<category><![CDATA[Desktop Intelligence]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[ODBC]]></category>
		<category><![CDATA[Win7]]></category>
		<category><![CDATA[Windows 7]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=501</guid>
		<description><![CDATA[Having just migrated my development PC to Windows 7 I&#8217;m slowly encountering perculiar issues as I setup all of the software and connections I used to have in Windows XP.  This morning I was trying to write a Business Objects report against a MySQL database and because Desktop Intelligence is a 32-bit application if I want it to talk to MySQL [...]]]></description>
			<content:encoded><![CDATA[
<p>Having just migrated my development PC to Windows 7 I&#8217;m slowly encountering perculiar issues as I setup all of the software and connections I used to have in Windows XP.  This morning I was trying to write a Business Objects report against a MySQL database and because Desktop Intelligence is a 32-bit application if I want it to talk to MySQL I have to use the 32-bit driver. </p>
<p>I obtained the latest driver (5.1.7) from MySQL&#8217;s standard <a title="MySQL ODBC Connector" href="http://dev.mysql.com/downloads/connector/odbc/5.1.html" target="_blank">ODBC Connector</a> page, installed it and added a System DSN without a hitch, the odd part came when Business Objects was returning only one row from a query that should return a couple of hundred.  Having run the same query on XP (I&#8217;m parallel running now) I suspected that the problem must be with the ODBC configuration so I attempted to delete the DSN only to receive the &#8220;Invalid attribute string&#8221; error&#8230;</p>
<p><a href="http://www.bisql.net/wp-content/uploads/2010/11/MySQL_ODBC_02.png"><img class="alignnone size-full wp-image-500" title="MySQL_ODBC_02" src="http://www.bisql.net/wp-content/uploads/2010/11/MySQL_ODBC_02.png" alt="" width="373" height="184" /></a></p>
<p>A little Googling later led me to <a title="MySQL Bug #56233" href="http://bugs.mysql.com/bug.php?id=56233" target="_blank">MySQL Bug #56233</a>, in the discussion Fred Zappert frames the simplest solution suggested which is to uninstall version 5.1.7 and install version 5.1.6 instead.  Oddly MySQL don&#8217;t make it especially clear how to get hold of previous minor versions of the ODBC drivers but you can get it from here: <a href="http://www.mysql.com/get/Downloads/Connector-ODBC/5.1/mysql-connector-odbc-5.1.6-win32.msi/from/http://www.mirrorservice.org/sites/ftp.mysql.com/" target="_blank">mysql-connector-odbc-5.1.6-win32.msi </a></p>
<p>Alternatively you could always visit bisql.net&#8217;s <a title="Tools, Utilities and ODBC Drivers" href="http://www.bisql.net/tools-odbc/" target="_blank">Tools, Utilities and ODBC Drivers</a> page where I have a link for 5.1.6 which I&#8217;ll keep in place until the next Windows 7 compatible driver is released.</p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2010%252F11%252Fmysql-odbc-ias%252F%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22MySQL%2032-bit%20ODBC%20Invalid%20Attribute%20String%2064-bit%20Windows%207%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2010/11/mysql-odbc-ias/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SQLBits 7 &#8211; Saturday Conference Rundown</title>
		<link>http://www.bisql.net/2010/10/sqlbits-7-saturday/</link>
		<comments>http://www.bisql.net/2010/10/sqlbits-7-saturday/#comments</comments>
		<pubDate>Sun, 03 Oct 2010 20:08:32 +0000</pubDate>
		<dc:creator>Ash</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[Microsoft SQL Server]]></category>
		<category><![CDATA[NoSQL]]></category>
		<category><![CDATA[Open Data]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[CLR]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Spatial]]></category>
		<category><![CDATA[SQL Injection]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLBits]]></category>

		<guid isPermaLink="false">http://www.bisql.net/?p=461</guid>
		<description><![CDATA[Starting my third day at SQLBits with a hat-trick of talks on technologies I&#8217;m unfamiliar with was a bit of a head-bender but an enjoyable one nonetheless. The first talk I chose was a great overview of how to use completely free tools (SQL Server Express 2008 R2, among others) with completely free spacial data [...]]]></description>
			<content:encoded><![CDATA[
<p>Starting my third day at <a title="SQLBits" href="http://sqlbits.com" target="_blank">SQLBits</a> with a hat-trick of talks on technologies I&#8217;m unfamiliar with was a bit of a head-bender but an enjoyable one nonetheless. The first talk I chose was a great overview of how to use completely free tools (<a title="SQL Server Express 2008 R2" href="http://www.microsoft.com/express/database/" target="_blank">SQL Server Express 2008 R2</a>, among others) with completely free spacial data (<a title="Ordnance Survey Open Data" href="http://www.ordnancesurvey.co.uk/oswebsite/opendata/" target="_blank">Ordnance Survey&#8217;s Open Data</a>) to create spatial reports in Reporting Services. Since it&#8217;s not an area I&#8217;m working in at the moment I didn&#8217;t get any major take-aways but I do have an understanding of what&#8217;s possible and how to go about it &#8211; if you&#8217;re in the same boat you should check out <a title="FWTools" href="http://fwtools.maptools.org/" target="_blank">FWTools</a>, <a title="Shape2SQL" href="http://www.sharpgis.net/page/Shape2SQL.aspx" target="_blank">Shape2SQL</a> and <a title="Grid InQuest" href="http://www.ordnancesurvey.co.uk/oswebsite/gps/osnetfreeservices/furtherinfo/questsoftware.html" target="_blank">Grid InQuest</a>.</p>
<p>The second talk was <a title="Atlantis Interactive" href="http://www.atlantis-interactive.co.uk/blog/" target="_blank">Matt Whitfield</a>&#8216;s &#8216;CLR Demystified&#8217; and not being a developer I&#8217;ll admit that much of it went over my head but I get the basic principles and most importantly I know what&#8217;s possible and where I might make use of CLR. The most interesting avenues for me are the ability to write custom aggregate functions and define custom data types &#8211; I was also impressed with the opportunity to increase performance in certain text processing / forward log parsing situations.</p>
<p><img class="alignright size-medium wp-image-472" title="rsz_photo" src="http://www.bisql.net/wp-content/uploads/2010/10/rsz_photo-300x225.jpg" alt="" width="300" height="225" />The next talk I attended was a gentle introduction to <a title="PowerShell" href="http://en.wikipedia.org/wiki/Windows_PowerShell" target="_blank">PowerShell</a> and <a title="James Boother" href="http://www.boother.co.uk/" target="_blank">James Boother</a> did a good job of showing where it might be useful for admin tasks, in particular the example of purging old backup/log files based on age lit my eyes up.  There was also a demo of PowerShell authenticating with Twitter and posting tweets as admin alerts, alas the demo failed but that could well have been a timeout on the Uni&#8217;s WiFi network or just plain old demo-gremlins.  I must say thou that I still can&#8217;t view PowerShell with some sense of disappointment because with all it&#8217;s flexibility and power it&#8217;s so damned wordy and many of the tasks it performs could be achieved with less code that a good old Bash script.</p>
<p>As with Friday I attended <a title="Quest" href="http://www.quest.com/" target="_blank">Quest</a>&#8216;s lunchtime session run by Kevin Kline, Ian Kick, Brent Ozar and Buck Woody &#8211; they&#8217;re some of the most experienced guys in the SQL community and when you get them together they&#8217;re funny as he&#8217;ll too so I was both entertained and informed in their myth-busting quiz.</p>
<p>My first afternoon talk was Gary Short&#8217;s session on <a title="NoSQL" href="http://en.wikipedia.org/wiki/NoSQL" target="_blank">NoSQL</a> which predictably sparked a few polite but irate rebuttals from argumentative DBAs but the session itself was an excellent whistle-stop tour of the predominant NoSQL technologies and use cases. I was encouraged to hear from someone experienced in the field that nobody has quite put together all the pieces to hook up BI tools (that traditionally expect relational/dimensional models or OLAP sources) to the NoSQL back-ends, it&#8217;s a shame since I might need to do so pretty soon &#8211; I guess I&#8217;m going to have to get my hands dirty then!</p>
<p>The final talk was from <a title="Kevin Kline" href="http://kevinekline.com/" target="_blank">Kevin Kline</a> of Quest who covered SQL Injection, it was an informative talk that gave me pause for thought about a couple &#8216;best practices&#8217; that I probably ought to harden a little.  Kevin recommended a few tools that I&#8217;ll definitely be checking out at some point, notably:</p>
<ul>
<li><a title="HP Scrawlr" href="https://h30406.www3.hp.com/campaigns/2008/wwcampaign/1-57C4K/index.php" target="_blank">HP Scrawlr</a></li>
<li><a title="URLScan" href="http://learn.iis.net/page.aspx/473/using-urlscan" target="_blank">URLScan</a></li>
<li><a title="Source Code Analyser for SQL Injection" href="http://www.microsoft.com/downloads/en/details.aspx?FamilyId=58A7C46E-A599-4FCB-9AB4-A4334146B6BA&amp;displaylang=en" target="_blank">Source Code Analyser for SQL Injection</a></li>
<li><a title="Assessment and Planning Tool" href="http://technet.microsoft.com/en-us/library/bb977556.aspx" target="_blank">Assessment and Planning Tool</a></li>
<li><a title="Discovery Wizard" href="http://www.quest.com/discovery-wizard-for-sql-server/" target="_blank">Discovery Wizard</a></li>
</ul>
<p>And a few handy sites/articles:</p>
<ul>
<li><a title="sqlsecurity.com" href="http://www.sqlsecurity.com/" target="_blank">SQLSecurity.com</a></li>
<li><a href="http://msdn.microsoft.com/en-us/library/ms161953.aspx" target="_blank">MSDN ms161953</a></li>
<li><a href="http://msdn.microsoft.com/en-us/library/ms998271.aspx" target="_blank">MSDN ms998271</a></li>
<li><a title="ferruh.mavituna.com" href="ferruh.mavituna.com" target="_blank">ferruh.mavituna.com</a></li>
</ul>
<p>Once more it was a great conference and the free day was every bit as good as the paid day, I can honestly say that I walked out of the  event already looking forward to the next one.</p>
<div class="topsy_widget_data topsy_theme_light-green" style="float: left;margin-bottom: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.bisql.net%252F2010%252F10%252Fsqlbits-7-saturday%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2Fc7aP6Y%22%2C%20%22style%22%3A%20%22small%22%2C%20%22title%22%3A%20%22SQLBits%207%20-%20Saturday%20Conference%20Rundown%22%20%7D);"></div>

]]></content:encoded>
			<wfw:commentRss>http://www.bisql.net/2010/10/sqlbits-7-saturday/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

