<?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>CleverWorkarounds &#187; SAN</title>
	<atom:link href="http://www.cleverworkarounds.com/category/infrastructure/san/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.cleverworkarounds.com</link>
	<description>After much frustration, it seems DEFAULT is the way to go...</description>
	<lastBuildDate>Thu, 02 Feb 2012 09:39:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Troubleshooting SPSearch and good practices for moving large files</title>
		<link>http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/</link>
		<comments>http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/#comments</comments>
		<pubDate>Mon, 03 Aug 2009 05:26:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Infrastructure]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[SAN]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Storage]]></category>

		<guid isPermaLink="false">http://www.cleverworkarounds.com/?p=1508</guid>
		<description><![CDATA[Every so often I get back into geek mode and roll up the sleeves and get my SharePoint hands dirty. Not so long ago I was assisting a small WSS3 based organisation with a major disk subsystem upgrade (iSCSI SAN) and locally attached storage upgrade, driven by content database growth and a need to convert [...]<p class="tags">No Tags</p>]]></description>
			<content:encoded><![CDATA[<p><script type="text/javascript"><!--
google_ad_client = "pub-6551570212921028";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
google_ui_features = "rc:6";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<p>Every so often I get back into geek mode and roll up the sleeves and get my SharePoint hands dirty. Not so long ago I was assisting a small WSS3 based organisation with a major disk subsystem upgrade (iSCSI SAN) and locally attached storage upgrade, driven by content database growth and a need to convert some sites to site collections. By the end of it all, we had a much better set-up with a much better performing disk subsystem, but I was hit by two problems. One was WSS Search being broken and needing a fix and the other was the appallingly slow speed of copying large files around.</p>
<p>So, let’s talk about fixing broken search and then talk about copying large files.</p>
<h2>1. When SPSearch breaks…</h2>
<p>The SharePoint install in question was a WSS3 site with SP1, and Search Server 2008 had not been installed. The partition that contained the indexes (F:\) had to be moved to another partition (G:), so to achieve this I used the command </p>
<p><font size="3" face="Courier New">stsadm –o </font><a href="http://technet.microsoft.com/en-us/library/cc288507.aspx" target="_blank"><font size="3" face="Courier New">spsearch</font></a><font size="3" face="Courier New"> indexlocation G:\DATA\INDEX</font></p>
<p>Now, 99.9% of the time this will happily do its thing. But today was the 0.01% of the time when it decided to be difficult. Upon executing this command, I received an RPC error. Unfortunately for me, I was out of time, so I decided to completely re-provision search and start all over again. </p>
<p>It didn’t matter whether I tried this in Central Administration-&gt;Operations-&gt;Services on Server, or via the command line below. Both methods would not work.</p>
<p><font size="3" face="Courier New">stsadm -o spsearch -action stop </font></p>
<p>On each attempt, search would get stuck on unprovisioning (stopping) with a sequence of events in the event log (eventID 2457, 2429 and 2428). </p>
<pre class="csharpcode">===========================================================================================</pre>
<pre class="csharpcode">Event Source: Windows SharePoint Services 3 Search
Event Category: Gatherer
Event ID: 2457
Description: 

The plug-in manager <span class="kwrd">&lt;</span><span class="html">SPSearch.Indexer.1</span><span class="kwrd">&gt;</span> cannot be initialized.
Context: Application 'Search index file on the search server' 

Details:
The system cannot find the path specified. (0x80070003) 

===========================================================================================
Event Source: Windows SharePoint Services 3 Search
Event Category: Gatherer
Event ID: 2429
Description: 

The plug-in in <span class="kwrd">&lt;</span><span class="html">SPSearch.Indexer.1</span><span class="kwrd">&gt;</span> cannot be initialized.
Context: Application '93a1818d-a5ec-40e1-82d2-ffd8081e3b6e', Catalog 'Search' 

Details:
The specified object cannot be found. Specify the name of an existing object. (0x80040d06) 

===========================================================================================</pre>
<pre class="csharpcode">Event Source: Windows SharePoint Services 3 Search
Event Category: Gatherer
Event ID: 2428
Description: 

The gatherer object cannot be initialized.
Context: Application 'Search index file on the search server', Catalog 'Search' 

Details:
The specified object cannot be found. Specify the name of an existing object. (0x80040d06) </pre>
<style type="text/css">
<p>.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }</style>
<p>&#160;</p>
<p>So, as you can see I was stuck. I couldn’t not clear the existing configuration and the search service would never actually stop. In the end, I started to wonder whether the problem was that my failed attempt to change the index partition had perhaps not reapplied permissions to the new location. To be sure I reapplied permissions using the following STSADM command</p>
<p><font size="3" face="courier ne">psconfig -cmd secureresources </font></p>
<p>This seemed to do the trick. Re-executing the stsadm spsearch stop command finally did not come up with an error and the service was listed as stopped. </p>
<p><a href="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image_thumb.png" width="645" height="207" /></a></p>
<p>Once stopped, we repartitioned the disks accordingly and now all I had to do was start the damn thing <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Through the Central Administration GUI I clicked Start and re-entered all of the configuration settings, including service accounts and the new index location (G:\DATA\INDEX). After a short time, I received the ever helpful “Unknown Error” error message. </p>
<p><a href="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image1.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image_thumb1.png" width="334" height="172" /></a></p>
<p>Rather than change debug settings in web.config, I simply checked the SharePoint logs and the event viewer. Now, I had a new event in the logs.</p>
<pre class="csharpcode">Event Type: Warning
Event Source: Windows SharePoint Services 3 Search
Event Category: Gatherer
Event ID: 10035
Description:
Could not import the registry hive into the registry because it does not exist <span class="kwrd">in</span> the configuration database.
Context: Application <span class="str">'93a1818d-a5ec-40e1-82d2-ffd8081e3b6e'</span> </pre>
<style type="text/css">
<p>.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }</style>
<p>Hmm&#8230; It suggests a registry issue, so I checked the registry.</p>
<p><a href="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image2.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image_thumb2.png" width="719" height="290" /></a></p>
<p>&#160;</p>
<p>Although the error message really made no sense to me, checking the registry turned out to be the key to solving this mystery. If you look carefully in the above screenshot, note that the registry key DataDirectory was set to “F:\DATA\INDEX”. </p>
<p>I was surprised at this, because I had re-provisioned the SPSearch to use the new location (G:\DATA\INDEX). I would have thought that changing the default index location would alter the value of this key. A delve into the ULS logs showed events like this.</p>
<p><font size="2" face="Courier New">STSADM.EXE (0x0B38) 0&#215;0830 Search Server Common MS Search Administration 95k1 High WSS Search index move: Changing index location from &#8216;F:\data\index&#8217; to &#8216;G:\data\index&#8217;. </font></p>
<p><font size="2" face="Courier New">STSADM.EXE (0x0B38) 0&#215;0830 Search Server Common MS Search Administration 95k2 High WSS Search index move: Index location changed to &#8216;G:\data\index&#8217;. </font></p>
<p><font size="2" face="Courier New">STSADM.EXE (0x0B38) 0&#215;0830 Search Server Common MS Search Administration 0 High CopyIndexFiles: Source directory &#8216;F:\data\index\93a1818d-a5ec-40e1-82d2-ffd8081e3b6e&#8217; not found for application &#8217;93a1818d-a5ec-40e1-82d2-ffd8081e3b6e&#8217;. </font></p>
<p><font size="2" face="Courier New">STSADM.EXE (0x0F10) 0&#215;1558 Windows SharePoint Services Topology 8xqz Medium Updating SPPersistedObject SPSearchServiceInstance Parent=SPServer Name=DAPERWS03. Version: 218342 Ensure: 0, HashCode: 54267293, Id: 305c06d7-ec6d-465a-98be-1eafe64d8752, Stack: at Microsoft.SharePoint.Administration.SPPersistedObject.Update() at Microsoft.SharePoint.Administration.SPServiceInstance.Update() at Microsoft.SharePoint.Search.Administration.SPSearchServiceInstance.Update() at Microsoft.Search.Administration.CommandLine.ActionParameter.Run(StringBuilder&amp; output) at Microsoft.SharePoint.Search.Administration.CommandLine.SPSearch.Execute() at Microsoft.Search.Administration.CommandLine.CommandBase.Run(String command, StringDictionary keyValues, String&amp; output) at Microsoft.SharePoint.StsAdmin.SPStsAdmin.RunOperation(SPGlobalAdmin globalAdmin, String st&#8230; </font></p>
<p><font size="2" face="Courier New"><strong><em>mssearch.exe (0&#215;1654) 0&#215;1694 Search Server Common IDXPIPlugin 0 Monitorable CTripoliPiMgr::InitializeNew &#8211; _CopyNoiseFiles returned 0&#215;80070003 &#8211; File:d:\office\source\search\ytrip\search\tripoliplugin\tripolipimgr.cxx Line:519 </em></strong></font></p>
<p><font size="2" face="Courier New">mssearch.exe (0&#215;1654) 0&#215;1694 Search Server Common Exceptions 0 Monitorable &lt;Exception&gt;&lt;HR&gt;0&#215;80070003&lt;/HR&gt;&lt;eip&gt;0000000001D4127F&lt;/eip&gt;&lt;module&gt;d:\office\source\search\ytrip\search\tripoliplugin\tripolipimgr.cxx&lt;/module&gt;&lt;line&gt;520&lt;/line&gt;&lt;/Exception&gt; </font></p>
<p>Note the second last line above (marked bold and italic). It showed that a function called CopyNoiseFiles returned a code of 0&#215;8007003. This code happens to be “The system <em>cannot find</em> the path specified,” so it appears something is missing.</p>
<p>It then dawned on me. Perhaps the SharePoint installer puts some files into the initially configured index location and despite moving the index to another location, SharePoint still looks to this original location for some necessary files. To test this, I loaded up a blank Windows 2003 VM and installed SharePoint SP1 *without* running the configuration wizard. When I looked in the location of the index files, sure enough – there are some files as shown below.</p>
<p><a href="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image3.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image_thumb3.png" width="619" height="463" /></a> </p>
<p>It turned out that during our disk reconfiguration, the path of F:\DATA\INDEX no longer existed. So I recreated the path specified in the registry (F:\DATA\INDEX) and copied the contents of the CONFIG folder from my fresh VM install. I then started the search service from Central Administration and… bingo! Search finally started successfully…Wohoo!</p>
<p>Now that I had search successfully provisioned, I re-ran the command to change the index location to G:\DATA\INDEX and then started a full crawl.</p>
<p><font size="3" face="Courier New">C:\&gt;</font><font size="3" face="Courier New">stsadm -o spsearch -indexlocation G:\DATA\INDEX </font></p>
<p><font size="3" face="Courier New">Operation completed successfully. </font></p>
<p><font size="3" face="Courier New">C:\&gt;stsadm -o spsearch -action fullcr</font><font size="3" face="Courier New">awlstart </font></p>
<p><font size="3" face="Courier New">Operation completed successfully. </font></p>
<p>I then checked the event logs and now it seems we are cooking with gas!</p>
<pre class="csharpcode">Event Type: Information
Event Source: Windows SharePoint Services 3 Search
Event Category: Gatherer
Event ID: 10045
Description: 

Successfully imported the application configuration snapshot into the registry.
Context: Application <span class="str">'93a1818d-a5ec-40e1-82d2-ffd8081e3b6e'</span> 

Event Type: Information
Event Source: Windows SharePoint Services 3 Search
Event Category: Gatherer
Event ID: 10044
Description: 

Successfully stored the application configuration registry snapshot <span class="kwrd">in</span> the database.
Context: Application <span class="str">'Serve search queries over help content'</span> </pre>
<style type="text/css">
<p>.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }</style>
<p>As a final check, I re-examined the registry and noted that the DataDirectory key had not changed to reflect G:\. Bear that in mind when moving your index to another location. The original path may still be referred to in the configuration.</p>
<h2>2. There are RAID cards and there are RAID cards</h2>
<p>Since part of the upgrade work was to improve disk performance, we had to detach databases and move them around while we upgraded the disk infrastructure and repartitioned existing disk arrays. The server had an on-board Intel RAID controller with two arrays configured. One was a two-disk RAID 0 SCSI and the other was a three-disk RAID 5 SATA array. The performance of the RAID 5 SATA had always been crap – even crappier than you would expect from onboard RAID 5. When I say crap, I am talking around 35 megabytes per second transfer rate – even on the two-disk SCSI RAID 0 array.</p>
<p>Now, 35MB/sec isn’t great, but not completely intolerable. But, what made this much, much worse however, was the extreme slowness in copying large files (ie &gt;4GB). When trying to copy files like this to the array, the throughput dropped to as low as 2MBs. </p>
<p>No matter whether it was Windows Explorer drag and drop or a command line utility like ROBOCOPY, the behaviour was the same. Throughput would be terrific for around 60 seconds, and then it would drop as shown below. </p>
<p><a href="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image4.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="image" border="0" alt="image" src="http://www.cleverworkarounds.com/wp-content/uploads/2009/08/image_thumb4.png" width="244" height="177" /></a> </p>
<p>My client called the server vendor and was advised to purchase 4 SCSI disks to replace the SATA’s. Apparently the poor SATA performance was actually because SCSI and SATA were mixed on the same RAID bard and bus. That was a no-no.</p>
<p>Sounded plausible, but of course, after replacing the RAID 5 with the SCSI disks, there was no significant improvement in disk throughput at all. The performance of large files still reflected the pattern illustrated in the screenshot above.</p>
<p>Monitoring disk queue length on the new RAID array showed that disk queues were off the planet in terms of within normal boundaries. Now, I know that some people view disk queue length as a bit of an <a href="http://sqlblog.com/blogs/linchi_shea/archive/2007/11/12/disk-queue-length-some-data-points-may-help.aspx" target="_blank">urban myth</a> in terms of disk performance, but copying the same files to the iSCSI SAN yielded a throughput rate of around 95MBs and the disk queue value rarely spiked above 2. </p>
<p>Damn! My client wasn’t impressed with his well known server vendor! Not only does the onboard RAID card have average to crappy performance to begin with, RAID 5 with large files makes it positively useless.</p>
<h3>Fun with buffers </h3>
<p>To me, this smelt like a buffer type of issue. Imagine you are pouring sand into a bucket and the bucket has a hole in it. If you pour sand into the bucket at a faster rate than the hole allows sand to pour out, then eventually you will overflow the bucket. I suspected this sort of thing was happening here. The periods of high throughput were when the bucket was empty and the sand filled it fast. Then the bucket filled up and things slowed to a crawl while all of that sand passed through the metaphorical hole in the bottom. Once the bucket emptied, there was another all-too-brief burst of throughput as it filled quickly again.</p>
<p>I soon found a terrific article from <a href="http://blogs.technet.com/askperf" target="_blank">EPS Windows Server Performance Team</a> that explain what was going on <a href="http://blogs.technet.com/askperf/archive/2007/05/08/slow-large-file-copy-issues.aspx" target="_blank">very clearly</a>.</p>
<p>Most file copy utilities like Robocopy or Xcopy call API functions that try and improve performance by keeping data in a buffer. The idea is that files that are changed or accessed frequently can be pulled from the buffer, thereby improving performance and responsiveness. But there is a trade-off. Adding this cache layer introduces an overhead in creating this buffer in the first place. If you are never going to access to copy this file again, adding it to the buffer is actually a bad idea.</p>
<p>Now imagine a huge file. Not only do you have the buffer overhead, but you now are also filling the buffer (and forcing it to be flushed), over and over again.</p>
<p>With a large file, you are actually better off avoiding the buffer altogether and doing a raw file copy. Any large file on a slow RAID card will still take time, but it’s a heck of a lot quicker than when combined with the buffering overhead.</p>
<h3>Raw file copy methods</h3>
<p>In the aforementioned article from the Microsoft EPS Server performance team, they suggest ESEUTIL as an alternative method. I hope they don’t mind me quoting them…</p>
<blockquote>
<p>For copying files around the network that are very large, my copy utility of choice is ESEUTIL which is one of the database utilities provided with Exchange.&#160; To get ESEUTIL working on a non-Exchange server, you just need to copy the ESEUTIL.EXE and ESE.DLL from your Exchange server to a folder on your client machine.&#160; It&#8217;s that easy.&#160; There are x86 &amp; x64 versions of ESEUTIL, so make sure you use the right version for your operating system.&#160; The syntax for ESEUTIL is very simple: <em>eseutil /y &lt;srcfile&gt; /d &lt;destfile&gt;</em>.&#160; Of course, since we&#8217;re using command line syntax &#8211; we can use ESEUTIL in batch files or scripts.&#160; ESEUTIL is dependent on the Visual C++ Runtime Library which is available as a <a href="http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&amp;displaylang=en">redistributable package</a></p>
</blockquote>
<p>I found an alternative to this, however, that proved its worth to me. It is called <a href="http://www.codesector.com/teracopy.php" target="_blank">Teracopy</a> and we tried the <a href="http://www.codesector.com/download.php" target="_blank">free edition</a> to see what difference it would make in terms of copy times. As it happens, the difference was significant and the time taken to transfer large files around was reduced by a factor of 5. Teracopy also produced a nice running summary of the copy thoughput in MB/sec.The product definitely proved its worth and at a whopping $15 bucks, is not going to break the bank. </p>
<p>So, if you are doing any sort of large file copies and your underlying disk subsystem is not overly fast, then I recommend taking a look at this product. Believe me, it will save you a heap of time.</p>
<h2>3. Test your throughput</h2>
<p>A final note about this saga. Anyone who deals with SQL Server will have likely read articles about best practice disk configuration in terms of splitting data/logs/backups to different disk arrays to maximise throughput. This client had done this, but since Teracopy gave us nice throughput stats, we took the opportunity to test the read/write performance of all disk subsystems and it turned out that putting ALL data onto the SAN array had significantly better performance than using any of the onboard arrays.</p>
<p>This meant that the by-the-book configuration was hamstrung by a poorly performing onboard RAID controller and even if the idea of using separate disks/spindles seemed logical, the cold hard facts of direct throughput testing proved otherwise.</p>
<p>After reconfiguring the environment to leverage this fact, the difference in response time of WSS, when performing bulk uploads was immediately noticeable.</p>
<p>The moral of the story? </p>
<p>If you are a smaller organisation and can’t afford the high end server gear like Compaq/IBM, then take the time to run throughput tests before you go to production. The results may surprise you.</p>
<p>Thanks for reading</p>
<p>Paul Culmsee</p>
<p><a href="http://www.sevensigma.com.au">www.sevensigma.com.au</a></p>
<p><script type="text/javascript"><!--
google_ad_client = "pub-6551570212921028";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
google_ui_features = "rc:6";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
<div id="spreadx">&nbsp;<a href="http://digg.com/submit?phase=2&url=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/digg.gif" alt="Digg" border="0" /></a>&nbsp;&nbsp;<a href="http://www.facebook.com/share.php?u=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/facebook.gif" alt="Facebook" border="0" /></a>&nbsp;&nbsp;<a href="http://www.stumbleupon.com/submit?url=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/&title=Troubleshooting+SPSearch+and+good+practices+for+moving+large+files" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/stumble.gif" alt="StumbleUpon" border="0" /></a>&nbsp;&nbsp;<a href="http://technorati.com/faves?add=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/technorati.gif" alt="Technorati" border="0" /></a>&nbsp;&nbsp;<a href="http://del.icio.us/post?url=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/&title=Troubleshooting+SPSearch+and+good+practices+for+moving+large+files" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/delicious.gif" alt="Deli.cio.us" border="0" /></a>&nbsp;&nbsp;<a href="http://slashdot.org/submit.pl?url=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/slashdot.gif" alt="Slashdot" border="0" /></a>&nbsp;&nbsp;<a href="http://www.twitter.com/home?status=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/twitter.gif" alt="Twitter" border="0" /></a>&nbsp;&nbsp;<a href="http://www.sphinn.com/submit.php?url=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/sphinn.gif" alt="Sphinn" border="0" /></a>&nbsp;&nbsp;<a href="http://www.mixx.com/submit?page_url=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/mixx.gif" alt="Mixx" border="0" /></a>&nbsp;&nbsp;<a href="http://www.google.com/bookmarks/mark?op=edit&bkmk=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/&title=Troubleshooting+SPSearch+and+good+practices+for+moving+large+files" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/google.gif" alt="Google" border="0" /></a>&nbsp;&nbsp;<a href="http://www.dzone.com/links/add.html?url=http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/&title=Troubleshooting+SPSearch+and+good+practices+for+moving+large+files" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/dzone.gif" alt="DZone" border="0" /></a>&nbsp;</div><p class="tags">No Tags</p>]]></content:encoded>
			<wfw:commentRss>http://www.cleverworkarounds.com/2009/08/03/troubleshooting-spsearch-and-good-practices-for-moving-large-files/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Complexity bites: When SharePoint = Risk</title>
		<link>http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/</link>
		<comments>http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/#comments</comments>
		<pubDate>Wed, 24 Sep 2008 14:47:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Governance]]></category>
		<category><![CDATA[Infrastructure]]></category>
		<category><![CDATA[ITIL]]></category>
		<category><![CDATA[planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Risk]]></category>
		<category><![CDATA[SAN]]></category>
		<category><![CDATA[Sarbanes-Oxley]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[Strategy]]></category>

		<guid isPermaLink="false">http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/</guid>
		<description><![CDATA[think as you age, you become more and more like your parents. Not so long ago I went out paintballing with some friends and we all agreed that the 16-18 year olds who also happened to be there were all obnoxious little twerps who needed a good kick in the rear. At the same time, we also agreed that we were just as obnoxious back when we were that age. Your perspective changes as you learn and your experience grows, but you don't forget where you came from...

SharePoint, for a number of reasons, is one of those products that has a way of really laying bare any gaps that the organisation has in terms of their overall maturity around technology and strategy...<p class="tags">No Tags</p>]]></description>
			<content:encoded><![CDATA[<p>I think as you age, you become more and more like your parents. Not so long ago I went out paintballing with some friends and we all agreed that the 16-18 year olds who also happened to be there were all obnoxious little twerps who needed a good kick in the rear. At the same time, we also agreed that we were just as obnoxious back when we were that age. Your perspective changes as you learn and your experience grows, but you don&#8217;t forget where you came from.</p>
<p>I now find myself saying stuff to my kids that my parents said to me, I think today&#8217;s music is crap, I have taken a liking to drinking quality scotch. Essentially all I need now to complete the metamorphosis to being my father is for all my hair to fall out!</p>
<p>So when I write an article whining about an assertion that IT has a credibility issue and has gone backwards in its ability to cope with various challenges, I fear that I have now officially become my parents. I&#8217;ll sound like grandpa who always tells you that life was so much simpler back in the 1940&#8242;s. </p>
<h2>Consequences of complexity&#8230;</h2>
<p>Before I go and dump on IT as a discipline, how about we dump on finance as a discipline, just so you can be assured that my cynicism extends far beyond nerds. </p>
<p>I previously wrote about how <a href="http://www.cleverworkarounds.com/2008/03/27/compliance-is-about-to-get-worse/" target="_blank">Sarbanes Oxley legislation</a> was designed to, yet ultimately failed to, provide assurance to investors and regulators that public companies had adequate controls over their financial risk. As I write this, we are in the midst of a once in a generation-or-two credit crisis where some seven hundred billion dollars ($700,000,000,000) of US taxpayers&#8217; money will be used to take ownership of crap assets (foreclosed or unpaid mortgages).</p>
<p>Part of the problem with the credit crisis was through the use of &quot;collateralized debt obligations&quot;. This is a fancy, yet complex, way of taking a bunch of mortgages, and turning them into an &quot;asset&quot; that someone else who has some spare cash invests in. If you are wondering why the hell someone would invest in such a thing, then consider people with home loans, supposedly happily paying interest on those mortgages. It is that interest that finds its way to the holder (investor) of the CDO. So a CDO is supposedly an income stream.</p>
<p>Now if that explanation makes your eyes glaze over then I have bad news for you: that&#8217;s supposed to be the easy part. The reality is that the CDO&#8217;s are actually extremely complex things. They can be backed by residential property, commercial property, something called mortgage backed securities, corporate loans &#8211; essentially anything that someone is paying interest on can find its way into a CDO that someone else buys into, to get the income stream from the interest paid.</p>
<p>To provide &quot;assurance&quot; that these CDO&#8217;s are &quot;safe&quot;, ratings agencies give them a mark that investors rely upon when making their investment. So a &quot;AAA&quot; CDO is supposed to have been given the tick of approval by experts in debt instrument style finance.</p>
<p>Here&#8217;s the rub about rating agencies. Below is a news article from earlier in the year with some great quotes</p>
<p><a title="http://www.nytimes.com/2008/03/23/business/23how.html?pagewanted=print" href="http://www.nytimes.com/2008/03/23/business/23how.html?pagewanted=print">http://www.nytimes.com/2008/03/23/business/23how.html?pagewanted=print</a></p>
<blockquote><p>Credit rating agencies, paid by banks to grade some of the new products, slapped high ratings on many of them, despite having only a loose familiarity with the quality of the assets behind these instruments.</p>
</blockquote>
<blockquote><p>Even the people running Wall Street firms didn&#8217;t really understand what they were buying and selling, says Byron Wien, a 40-year veteran of the stock market who is now the chief investment strategist of Pequot Capital, a hedge fund. &#8220;These are ordinary folks who know a spreadsheet, but they are not steeped in the sophistication of these kind of models,&#8221; Mr. Wien says. &#8220;You put a lot of equations in front of them with little Greek letters on their sides, and they won&#8217;t know what they&#8217;re looking at.&#8221;</p>
</blockquote>
<blockquote><p>Mr. Blinder, the former Fed vice chairman, holds a doctorate in economics from <a href="http://topics.nytimes.com/top/reference/timestopics/organizations/m/massachusetts_institute_of_technology/index.html?inline=nyt-org">M.I.T.</a> but says he has only a &#8220;modest understanding&#8221; of complex derivatives. &#8220;I know the basic understanding of how they work,&#8221; he said, &#8220;but if you presented me with one and asked me to put a market value on it, I&#8217;d be guessing.&#8221;</p>
</blockquote>
<p>What do we see here? How many people really *understand* what&#8217;s going on underneath the complexity? </p>
<p>Of course, we now know that many of the mortgages backing these CDO&#8217;s were made to people with poor credit history, or with a high risk of not being able to pay the loans back. Jack up the interest rate or the cost of living and people foreclose or do not pay the mortgage. When that happens en masse, we have a glut of houses for sale, forcing down prices, lowering the value of the assets, eliminating the &quot;income stream&quot; that CDO investors relied upon, making them pretty much worthless.</p>
<p>My point is that the complexity of the CDO&#8217;s were such that even a <strong>guy with a doctorate in economics </strong>only had a &#8216;modest understanding&#8217; of them. Holy crap! If he doesn&#8217;t understand it then who the hell does? </p>
<p>Thus, the current financial crisis is a great case study in the relationship between complexity and risk. </p>
<h2>Consequences of complexity (IT version)&#8230;</h2>
<p>One thing about doing what I do, is that you spent a lot of time on-site. You get to see the IT infrastructure&#160; and development at many levels. But more importantly, you also spend a lot of time talking to IT staff and organisation stakeholders with a very wide range of skills and experience. Finally and most important of all, you get to see first hand organisational maturity at work.</p>
<p>My conclusion? IT is completely f$%#ed up across all disciplines and many will have their own mini equivalent of the US $700 billion dollar haemorrhage. Not only that, it is far worse today than it previously was &#8211; and getting worse! IT staff are struggling with ever accelerating complexity and the &quot;disconnect&quot; between IT and the business is getting worse as well. To many businesses, the IT department has a credibility problem, but to IT the feeling is completely mutual <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>You can find a nice <a href="http://ask.slashdot.org/article.pl?sid=08/09/16/029225&amp;from=rss" target="_blank">thread</a> about this topic on slashdot. My personal favourite quote from that thread is this one</p>
<blockquote><p>Let me just say, after 26 years in this business, of hearing this every year, the systems just keep getting more complex and harder to maintain, rather than less and easier.</p>
<p>Windows NT was supposed to make it so anyone who could use Windows could manage a server.</p>
<p>How many MILLION MSCEs do we have in the world now?</p>
<p>Storage systems with Petabytes of data are complex things. Cloud computing is a complex thing. Supercomputing clusters are complex things. World-spanning networks are complex things.</p>
<p>No offense intended, but the only people who think things are getting easier are people who don&#8217;t know how they work in the first place</p>
</blockquote>
<p>Also there is this&#8230;</p>
<blockquote><p>There are more software tools, programming languages, databases, report writers, operating systems, networking protocols, etc than ever before. And all these tools have a lot more features than they used to. It&#8217;s getting increasingly harder to know &quot;some&quot; of them well. Gone are the days when just knowing DOS, UNIX, MVS, VMS, and OS/400 would basically give you knowledge of 90% of the hardware running. Or knowing just Assembly/C/Cobol/C++ would allow you to read and maintain most of the source code being used. So I would argue that the need for IT staff is going to continue to increase.</p>
</blockquote>
<blockquote><p>I think the &quot;disconnect&quot; between IT and Business has a lot more to do with the fact that business &quot;knows&quot; they depend on IT, but they are frustrated that IT can&#8217;t seem to deliver what they want when they want it. On the other side, IT has to deal with more and more tools and IT staff has to learn more and more skills. And to increase frustration in IT, business users frequently don&#8217;t deliver clear requirements or they &quot;change&quot; their mind in the middle of projects&#8230;.</p>
</blockquote>
<p>So it seems that I am not alone <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>I mentioned previously that more often than not, <a href="http://www.cleverworkarounds.com/2008/08/30/sql-god-no-i-just-know-how-to-do-a-maintenance-plan/" target="_blank">SQL Server is poorly maintained</a> &#8211; I see it all the time. Yet today I was speaking to a colleague who is a storage (SAN) and VMware virtualisation god. I asked him what the average VMware setup was like and his answer was similar to my SQL Server and SharePoint experience. In his experience, most of them were sub-optimally configured, poorly maintained, poorly documented and he could not provide any assurance as to the stability of the platform. </p>
<p>These sorts of quality assurance issues are rampant in application development too. I see the same thing most definitely in the security realm too.</p>
<p>As the above quote sates, &quot;it&#8217;s increasingly harder to know *some* of them well&quot;. These days I am working with specialists who live and breathe their particular discipline (such as storage, virtualisation, security or comms). Those disciplines over time grow more complex and sub-disciplines appear. </p>
<p>Pity then, the poor developer/sysadmin/IT manager who is trying to keep a handle on all of this and try to provide a decent service to their organisation! </p>
<p>Okay, so what? IT has always been complex &#8211; I sound like a Gartner cliche. What&#8217;s this got to do with SharePoint? </p>
<h2>Consequences of SharePoint complexity&#8230;</h2>
<p>SharePoint, for a number of reasons, is one of those products that has a way of really <strong>laying bare</strong> any gaps that the organisation has in terms of their overall maturity around technology and strategy.</p>
<p>Why? </p>
<p>Because it is so freakin&#8217; complex! That complexity transcends IT disciplines and goes right to the heart organisational/people issues as well. </p>
<p>It&#8217;s bad enough getting nerds to agree on something, let alone organisation-wide stakeholders!</p>
<p>Put simply, if you do a half-arsed job of putting SharePoint in, you <strong>will</strong> be punished in so many ways! The simple fact is that the <strong>odds are against you </strong>before you even start because it only takes a mistake in one particular part of the complex layers of hardware, systems, training, methodology, information architecture and governance, to devalue the whole project.</p>
<p>When I first started out, I was helping organizations get SharePoint installed. However lately I am visiting a lot of sites where SharePoint has already been installed, but it has not been a success. There are various reasons;I have cited them in detail in the <a href="http://www.cleverworkarounds.com/2008/04/11/why-do-sharepoint-projects-fail-part-1/" target="_blank">project failure</a> series, so I won&#8217;t rehash all that here. (I&#8217;d suggest reading parts <a href="http://www.cleverworkarounds.com/2008/04/19/why-do-sharepoint-projects-fail-part-3/" target="_blank">three</a>, <a href="http://www.cleverworkarounds.com/2008/04/24/why-do-sharepoint-projects-fail-part-4/" target="_blank">four</a> and <a href="http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/" target="_blank">five</a> in particular). </p>
<p>I am firmly of the conclusion that much of SharePoint is more art than science, and what&#8217;s more, the organisation has to be ready to come with you. Due to differing <a href="http://www.cleverworkarounds.com/2008/06/26/thinking-sharepoint-part-2-the-unconsciously-incompetent-ikea-mecca/" target="_blank">learning styles</a> and <a href="http://www.cleverworkarounds.com/2008/05/27/why-do-sharepoint-projects-fail-part-7/" target="_blank">poor communication of strategy</a>, this is actually pretty rare. Unfortunately, IT are not the people who are well suited to &quot;getting the organisation ready for SharePoint.&quot; </p>
<p>If that wasn&#8217;t enough, then there is this question. If IT <strong>already struggle </strong>to manage the underlying infrastructure and systems that <strong>underpin</strong> SharePoint, then how can you have any assurance that IT will have a &quot;governance epiphany&quot; and start doing things the right way?</p>
<p>This translates to <strong>risk,</strong> people! I will be writing all about risk in a similar style to the <a href="http://www.cleverworkarounds.com/2007/11/17/learn-to-talk-to-your-cfo-in-their-language-part-1/" target="_blank">CFO Return on Investment series</a> very soon. I am very interested in methods to quantify the risk brought about by the complexity of SharePoint and the IT services it relies on. For me, I see a massive parallel from the complexity factor in the current financial crisis and I think that a lot can be learned from it. SOX was supposed to provide assurance and yet did nothing to prevent the current crisis. Therefore, SOX represents a great example of mis-focused governance where a lot of effort can be put in for no tangible gain.</p>
<h2>A quick test of &quot;assurance&quot;&#8230;</h2>
<p>Governance is like learning to play the guitar. It takes practice, and it does not give up its secrets easily and despite good intent, you will be crap at it for a while. It is easy to talk about, but putting it into practice is another thing. </p>
<p>Just remember this. The whole point of the exercise is to provide *assurance* to stakeholders. When you set any rule, policy, procedure, standard (or similar), just ask yourself: <em>Does this provide me the assurance I need that gives me confidence to vouch for the service I am providing? </em>Just because you may be adopting ITIL principles, does *not* mean that you are necessarily providing the right sort assurance that is required.</p>
<p>I&#8217;ll leave you with a somewhat biased, yet relatively easy litmus test that you can use to test your current level of assurance. </p>
<p>It might be simplistic, but if you are currently scared to apply a service pack to SharePoint, then you might have an assurance issue. <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>&#160;</p>
<p>Thanks for reading</p>
<p>&#160;</p>
<p>Paul Culmsee</p>
<p><a href="http://www.sevensigma.com.au">www.sevensigma.com.au</a></p>
<div id="spreadx">&nbsp;<a href="http://digg.com/submit?phase=2&url=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/digg.gif" alt="Digg" border="0" /></a>&nbsp;&nbsp;<a href="http://www.facebook.com/share.php?u=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/facebook.gif" alt="Facebook" border="0" /></a>&nbsp;&nbsp;<a href="http://www.stumbleupon.com/submit?url=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/&title=Complexity+bites%3A+When+SharePoint+%3D+Risk" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/stumble.gif" alt="StumbleUpon" border="0" /></a>&nbsp;&nbsp;<a href="http://technorati.com/faves?add=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/technorati.gif" alt="Technorati" border="0" /></a>&nbsp;&nbsp;<a href="http://del.icio.us/post?url=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/&title=Complexity+bites%3A+When+SharePoint+%3D+Risk" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/delicious.gif" alt="Deli.cio.us" border="0" /></a>&nbsp;&nbsp;<a href="http://slashdot.org/submit.pl?url=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/slashdot.gif" alt="Slashdot" border="0" /></a>&nbsp;&nbsp;<a href="http://www.twitter.com/home?status=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/twitter.gif" alt="Twitter" border="0" /></a>&nbsp;&nbsp;<a href="http://www.sphinn.com/submit.php?url=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/sphinn.gif" alt="Sphinn" border="0" /></a>&nbsp;&nbsp;<a href="http://www.mixx.com/submit?page_url=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/mixx.gif" alt="Mixx" border="0" /></a>&nbsp;&nbsp;<a href="http://www.google.com/bookmarks/mark?op=edit&bkmk=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/&title=Complexity+bites%3A+When+SharePoint+%3D+Risk" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/google.gif" alt="Google" border="0" /></a>&nbsp;&nbsp;<a href="http://www.dzone.com/links/add.html?url=http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/&title=Complexity+bites%3A+When+SharePoint+%3D+Risk" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/dzone.gif" alt="DZone" border="0" /></a>&nbsp;</div><p class="tags">No Tags</p>]]></content:encoded>
			<wfw:commentRss>http://www.cleverworkarounds.com/2008/09/25/complexity-bites-when-sharepoint-risk/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Why do SharePoint Projects Fail &#8211; Part 5</title>
		<link>http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/</link>
		<comments>http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/#comments</comments>
		<pubDate>Sun, 27 Apr 2008 13:27:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Governance]]></category>
		<category><![CDATA[Infrastructure]]></category>
		<category><![CDATA[planning]]></category>
		<category><![CDATA[Project Management]]></category>
		<category><![CDATA[Risk]]></category>
		<category><![CDATA[SAN]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[Wicked Problems]]></category>

		<guid isPermaLink="false">http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/</guid>
		<description><![CDATA[Hi again and welcome to this seemingly endless series of posts on the topic of SharePoint projects gone bad. We spent a couple of posts looking at problem projects in general before focusing specifically on SharePoint. If you have followed the series closely, you will observe that haven&#8217;t talked much on technical aspects of the [...]<p class="tags">No Tags</p>]]></description>
			<content:encoded><![CDATA[<p><!--adsense-->
<p>Hi again and welcome to this seemingly endless series of posts on the topic of SharePoint projects gone bad.</p>
<p>We spent a couple of posts looking at problem projects in general before focusing specifically on SharePoint. If you have followed the series closely, you will observe that haven&#8217;t talked much on technical aspects of the product yet. If you were expecting me to pick apart annoying aspects of the architecture then unfortunately, you will be disappointed because I really don&#8217;t believe that it is a big factor in why SharePoint projects fail. Besides which, 90% of SharePoint blogs are on technical/development content anyway.</p>
<p>So where am I going with part 5 then you ask?&nbsp; I am indeed delving into technical aspects, but once again it is all about the people involved.</p>
<p>So now its time to take a few cheap-shots at the geeks. (After all, they are sensitive souls and we don&#8217;t want them to feel left out do we). For the purposes of this post, infrastructure people, tech support, system administrators can be lumped into the same &#8216;geek bucket&#8217;. </p>
<p>Geeks can also cop it like Project Managers do, when projects take on wicked tendencies. They will implement the agreed requirements, but the stakeholders feel that the end result isn&#8217;t what they wanted. In the ensuing fallout that happens when the project sponsor realises that say, half a million bucks has been blown with little to show for it, blame is inevitably directed their way, whether justified or not.</p>
<p><span id="more-747"></span></p>
<p>In some ways the geeks have an easier job than others in the project (but don&#8217;t tell them that you will bruise their ego&#8217;s). The infrastructure geeks simply have to plan, build and configure the SharePoint farm and assimilate it into existing infrastructure.They deal with servers, SAN&#8217;s, networks and in general, devices are much more agreeable than other humans <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> . Infrastructure integration can range from easy to hellish, depending mainly on the attitude of management to its importance and the ability of the geek to sell that importance. Sadly, both sides equally suck at this &#8211; and it is a reflection of &#8220;organisational maturity&#8221; which we will get to a little later.&nbsp;&nbsp; </p>
<p><a href="http://www.cleverworkarounds.com/wp-content/uploads/2008/04/image1.png"><img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; margin: 0px 0px 0px 20px; border-right-width: 0px" height="201" alt="image" src="http://www.cleverworkarounds.com/wp-content/uploads/2008/04/image-thumb1.png" width="260" align="right" border="0"/></a>In Homer Simpson&#8217;s imaginary land of chocolate where everything is wonderful (and edible), the infrastructure people and developers take the functional specification and build it without ever having to speak to the users/stakeholders. You see, in this land, the business analysts and stakeholders have done their job and the agreed off requirements are exactly right, thus all of the problems outlined in the first four posts of this series never happened <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>So to complete this article, we have to spend it in the land of chocolate, because we have to suspend reality and assume that somehow, we have managed to avoid all of the issues outlined in parts 1 to 4. </p>
<p>I realise that this requires a significant suspension of belief, but humour me and just go with it&#8230;</p>
<h2>Product Complexity &#8211; Infrastructure</h2>
<p>Let&#8217;s face it. SharePoint is big, complex, nasty, over-engineered yet under-engineered, skinnable yet unskinnable and depends on other products and supporting technologies that have big, thick books written just about them (SQL Server, ASP.NET, etc). Such a large number of components means there are equally as many points of failure or disruption, therefore points of governance to cover and experience required to cover it.</p>
<p>The combination of skills required to really become an expert in this product is not easy to develop unless you have a significant amount of real world experience over a period of time. To give you some idea of what is required, Joel Oleson wrote a blog <a href="http://blogs.msdn.com/joelo/archive/2007/07/23/depth-and-breadth-in-a-sharepoint-architect-skills.aspx" target="_blank">post</a> some time ago on what he considered was the combination of skills required to be a SharePoint Architect. The list was expansive. I&#8217;ve listed some below (and cut a heap of them out too)</p>
<p>Ready? Take a deep breath&#8230;&nbsp;<br />
<blockquote>
<p>IIS, Windows Server, TCP/IP &amp; networks, SQL Server 2005 Advanced Administration, Firewalls, Proxies, Active Directory, Authentication, Security, IT Infrastructure Design, Hardware, Performance Monitoring, Capacity Planning, Workflow, IE, Firefox, Office Client tools, ASP.NET, HTML, Javascript, AJAX, XSL, XSLT, Exchange/SMTP, Clustering, NLB, SANs, Backup Solutions, Single Sign on, Monitoring &amp; Troubleshooting, Global Deployments, Dev, Test, Staging, Production &#8211; Staged deployments, ITIL, Virtualisation.</p>
</blockquote>
<p>&#8230; and that&#8217;s just the core skills apparently! There are many, many other skills listed by Joel &#8211; and I could add a few more myself.</p>
<p>The complexity of the infrastructure requirements are very much a product on the size of the organisation, the scope of the project and which SharePoint disciplines are involved. The biggest mistake project teams and infrastructure people make is to underestimate the <strong>implications </strong>of this infrastructure investment. </p>
<p>I remember sitting in on an early project team meeting for a widely scoped, document centric SharePoint deployment. It was for a company of some 500 staff with an existing 1TB+ file system. I told them that for what they wanted to do, and for the organisation size and utter reliance on its availability, they had better size up and budget for a clustered SQL Server and SAN. I also warned them, that their existing backup infrastructure may not be scaleable enough to accommodate the requirements of SharePoint and they should also investigate this. The look on the face of the CIO should have made my spider senses tingle. It turned out that they were not aware at all that all the documents lived inside SQL Server. Thus the possibility of a high speed, fault tolerant SAN, a review of their backup system and a clustered SQL server never entered their minds.</p>
<p>That small &#8216;oversight&#8217; ended up costing some $200,000 all up. That came close to doubling the initial budget that was sold to the project sponsor &#8211; ouch!</p>
<h2>Scope, Infrastructure and Organisational Maturity</h2>
<p>This doesn&#8217;t really belong in part 5, but I forgot to mention it in part 3 (blush). When I talk of &#8220;organisational maturity&#8221;, I am not talking about the how crude the office dirty jokes are, but I am talking about maturity in relation to <strong>awareness </strong>and <strong>pragmatic adoption </strong>of best practice methodologies. Perhaps another term to use is corporate wisdom? </p>
<p>Anyway, many methodologies, such as COBiT and CMMI, contain a measurement system which allows an organisation to rate themselves against what the standard considers to be &#8216;mature&#8217;. In this way, the organisation has the means to know where they are and where they need to get to. </p>
<p>In this competitive, post SOX world of compliance and governance, this is becoming an increasing part of the corporate and IT landscape. Organisations need to provide <em>assurance</em> to their customers, shareholders and staff that all is well and that their investment in the organisation is safe.</p>
<p><em>Sarcastic Note: I&#8217;m very interested in whether compliance has made any difference in the current subprime mess. Expect more posts on that topic.</em></p>
<p>What I have noticed is that the &#8216;less mature&#8217; an organisation is, the greater the propensity for wicked problems to occur, whether SharePoint or any other product. I believe this is because of all of the factors described in the first four parts, but particularly, panacea effect, described in <a href="http://www.cleverworkarounds.com/2008/04/19/why-do-sharepoint-projects-fail-part-3/" target="_blank">part 3</a>. The panacea effect can easily take root at organisations where the culture is not conducive to organisational maturity. A less mature organisation will find a tool with potential and then try and solve all of their problems at once, without the sort of soul searching, dialogue and raw data analysis that would give them a deeper understanding of the problems they face.</p>
<p><em>Another inexplicable problem that I have also noticed (but haven&#8217;t quantified), is that organisations with a low maturity often find it difficult to properly make use of the very methodologies and frameworks designed to improve maturity. They are well aware that they have problems and want to improve, but always seem to go about it the wrong way and go from complete disorganisation to complete over-the-top process and structure. Typically this does not end up improving productivity or resolving longstanding problems and in extreme cases, can do more harm than good. ISO9001, PMBOK, ITIL and process improvement methodologies like Six Sigma have suffered this fate. It is basically the panacea effect in action again, this time not around a platform like SharePoint, but around interpretation of the intent of the methodology. </em></p>
<h2>Infrastructure and Project Budget</h2>
<p>The result of product complexity and low organisational maturity is a vicious circle. The poor old infrastructure architect/engineer is asked to plan, design and size a solution to a system that will &#8220;do everything&#8221;. The infrastructure person usually have had little visibility or input into scope and the requirements. Therefore, with so many knowns and equally many unknowns, they have little choice but to produce an infrastructure design to accommodate <strong>all</strong> of these possibilities. </p>
<p>SharePoint&#8217;s complexity and aspects of its architecture mean that there can be a significant infrastructure cost for many projects. For example. A stakeholder would have very little idea just how much work the seemingly innocuous request of requiring that the SharePoint solution be extranet accessible, adds to a project. Another example would be that a stakeholder would also not appreciate the implications of mandating that all files in SharePoint are to have a complete version history.</p>
<p>Inevitably, infrastructure is going to be costly. As a general rule, the more ambitious the scope of a project, the more complex it is to plan for a cost effective infrastructure. When faced with an uncertain future, it is always preferable to add another server or two for more redundancy <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  When it is all said and done, the infrastructure person can rarely give you a guarantee that their solution is adequate either. Instead they can rate the solution in how <strong>comfortable</strong> they feel about it.</p>
<p>Thus, in the low maturity organisation, the project manager and project sponsor will balk at the cost because it blows away their initial, relatively naive, time and budget estimate. This is despite the fact the scope of the project is likely so broad that is has some wicked problem elements in it. The Project Manager may inform the infrastructure architect that the cost is unacceptable and try and pin them down into reducing the cost to save the project, and in bad cases, save face with the project sponsor or senior management.</p>
<p><em>I used to ask senior management to provide me growth assumptions to try and work through a balance between cost and benefit when this occurred. This method placed accountability for the assumptions in the right place, but often did not solve the infrastructure and budget issues. One notable case I had was an infrastructure design for a private company owned by a single managing director. The director had a serious case of rose-coloured glasses and delusions of grandeur around the growth prospects of his company. His growth figures were wildly optimistic and thus so was the cost that I provided. But at least I was able to argue that the design was sound, based on the assumptions that I had been given.</em></p>
<p>Conversely when there is a budget issue in a higher maturity organisation, senior management, the project manager and project sponsor would initially be more interested in <strong>why</strong> there is such a disparity between their budget estimate and the actual cost. From there they would determine the root cause factors that allowed this to happen. <em>I&#8217;d love to get into how an organisation gets from low to higher maturity, but that is not the intent of this series of posts, so we&#8217;ll have to leave it at that.</em></p>
<h2>Infrastructure and Product Skills</h2>
<p>As previously mentioned, SharePoint is complex and the products it relies on are also complex. In the wrong infrastructure/architect hands, this can cause costly problems. Interestingly however, I have noticed that a lack of product skills among architect and infrastructure staff does not necessarily impact the project in terms of the project metrics of time and budget. Nerds are rather adept at hacking away enough to &#8220;make it work&#8221;, and thus they have a talent for winging it. Instead the cost will be quality, but that cost will not be immediately apparent.</p>
<p>The geek contribution to project failure is not as overt. Instead, problems caused by cutting corners tend to manifest themselves <strong>post implementation</strong>, where bad decisions, poor governance and dodgy workarounds all have a habit of coming home to roost in some nasty, high profile and costly way. By then however the project team can deny all knowledge <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> . <em>I really should do a blog post about infrastructure complexity separately to this series for the above reason. Since the risks around infrastructure complexity manifest themselves usually after the project has been delivered and is into its operating phase</em>. </p>
<p>That said, In the project planning process however, it is common that several infrastructure oriented tasks are under estimated due to a lack of appreciation of what is involved. Some notable ones are:</p>
<ul>
<li>Capacity planning  </li>
<li>Impact on existing infrastructure  </li>
<li>Information Architecture  </li>
<li>Governance (procedures, standards, guidelines, change control, configuration management, etc</li>
</ul>
<p>In the final section of Part 5, we will touch on each of these areas</p>
<h2>Infrastructure &#8211; Capacity Planning</h2>
<p>This is a particularly complex and overlooked area in document oriented collaboration projects. I specifically modelled a <a href="http://www.cleverworkarounds.com/2007/11/28/learn-to-talk-to-your-cfo-collaboration-scenario-part-3/" target="_blank">mythical project budget estimate</a> in my return on investment series on this exact project type. Being document centric, it is the scenario that puts the most pressure on your infrastructure in terms of disk IO performance and growth due to the added overhead of version control, full text indexing, backup and recycle bin requirements. It is also impacts (and is impacted by) the information architecture and logical architecture design of SharePoint because of the <a href="http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/" target="_blank">architectural limitations</a> of the product.</p>
<p>Microsoft&#8217;s top support call reasons were <a href="http://blogs.msdn.com/joelo/archive/2007/08/29/tips-from-top-support-calls.aspx" target="_blank">listed</a> by Joel some time back and many of them are basic issues addressed via a capacity planning exercise. </p>
<ul>
<li>Are you monitoring all your disks?&nbsp; If you did a simple/basic all in one install is it all on one drive that you are watching?&nbsp; Disk space available on WFE and SQL, common support issue is Basic install running out of drive space for SQL  </li>
<li>If large file support is enable are the myriad of configuration settings to make this work configured, <a href="http://support.microsoft.com/?id=925083">http://support.microsoft.com/?id=925083</a>  </li>
<li>Scan the SharePoint farm and report if any of our capacity limits are exceeded, <a href="http://technet2.microsoft.com/WindowsServer/WSS/en/library/2aa12954-2ea7-475c-9dce-663f543820811033.mspx">http://technet2.microsoft.com/WindowsServer/WSS/en/library/2aa12954-2ea7-475c-9dce-663f543820811033.mspx</a>  </li>
<li>Check if /3GB switch is enabled in boot.ini, WSS does not support /3GB switch <a href="http://support.microsoft.com/kb/933560"><br />http://support.microsoft.com/kb/933560</a></li>
</ul>
<h2>Impact on existing infrastructure</h2>
<p>Closely related to capacity planning is the impact that SharePoint has on existing infrastructure. As I mentioned in one of the examples above, the client gave utterly no thought to how adequate their existing backup system was for accommodating the database oriented nature of SharePoint. As it turned out, it was completely inadequate as it was, before the complexity of SharePoint was added to the mix. To rectify the problem required a new backup system that cost in the region of $50,000. </p>
<p>Extranet requirements are also typically unappreciated too. It is easy to &#8216;extend&#8217; a SharePoint virtual server to be accessible via the extranet, utilising say, SQL authentication. But there are firewalls, reverse proxy as well as logical architecture to consider. Do you really want say, your internal documents potentially accessible via an external facing web server? No? Then you may require separate content databases, web applications and site collections to improve the &#8220;chinese wall&#8221; between internal and external oriented content. Ah, but that has its own implications on design, governance, custom development costs and information architecture. </p>
<h2>Information Architecture</h2>
<p>Information architecture is a large topic and I cannot do it justice here. Suffice to say, that we are talking about concepts such as design decisions around the set-up of web applications, site collections, sites, sub sites, site columns, site content types, libraries, lists, workflows, forms, navigation, user profiles and search to name a few.</p>
<p>Prior to SharePoint, many users will have known nothing else but messy shared file systems where the only means of classification was folders and file naming conventions (that no-one ever followed anyway). Now we have many other tools at our disposal which in theory is a good thing. </p>
<p>But as I said, many people know nothing but folders. This has been the predominant file classification mechanism for more than 30 years. Trying to &#8220;un-learn&#8221; more than 30 years of operating fundamentally the same way is not something that will come naturally. Thinking in terms of columns, views and content types requires a deeper understanding of the divisions, disciplines, compliance and vertical market of an organisation.</p>
<p>Information Architecture is one of those phases in a project that should come with a safety warning. &#8220;Please kids, <strong>do not </strong>try this at home&#8221;</p>
<p>I&#8217;d love to write more on information architecture because it cuts to the heart of what I currently spend a lot of time doing, but this post is getting long <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> . So, I&#8217;ll simply say this: Information architecture is a very, very difficult area to get right and it can seem like more art than science. (don&#8217;t worry, there is science). Even in a good project, the amount of time and effort to develop it is grossly underestimated. </p>
<p><em>Yep, you heard right, even in a good project</em>. </p>
<p>My absolute worst scenario is for people come at it with a naive notion that you can say, pick 5 columns to classify *all* files in an organisation the same way. This is records management thinking, and if you read this post, and think that I am mistaken and standard classification is the way document management should be, then I say to you in all seriousness, <strong>you have picked the wrong product and your definition of document management is different to mine!</strong></p>
<h2>Governance</h2>
<p>Governance thankfully has been getting much more press in blogs, webcasts, whitepapers and the like in the last half year. A lot of it is still of questionable quality, but at least people are starting to factor it into their SharePoint project planning.</p>
<p>It is all well and good to use the term, but project teams still underestimate exactly what is required for governance. For all of SharePoint&#8217;s good points, it does have a relatively high cost of ownership in my opinion and that ownership cost is completely in the area of governance. In other words, I don&#8217;t think day to day management of a SharePoint farm is a big task. But if there is not a certain degree of discipline around change management, configuration management, procedures, standards and guidelines to administrators, users, site owners and developers, bad things will happen. Failure to maintain this discipline, means that the ongoing reliability of the system will be slowly but surely eroded.</p>
<p>Now rather that do a big write-up here about governance, I urge you to read Microsoft&#8217;s &#8220;Governance Checklist&#8221; found <a href="http://office.microsoft.com/download/afile.aspx?AssetID=AM102306291033" target="_blank">here</a>. In your project plans, you should use this checklist and ensure you cover off all of the sections applicable to your SharePoint deployment. Additionally, when I wrote my <a href="http://www.cleverworkarounds.com/2007/11/17/learn-to-talk-to-your-cfo-in-their-language-part-1/" target="_blank">ROI Series</a>, I actually used the aforementioned governance checklist as the <a href="http://www.cleverworkarounds.com/2007/11/25/learn-to-talk-to-your-cfo-in-their-language-part-2/" target="_blank">methodology</a> to estimate project costs. You may find that post useful as a reference for your own project planning.</p>
<h2>Conclusion</h2>
<p><em>It is when you get to this part in the series, that you realise that you missed some important points in the previous posts. That is the nature of blogs I guess, since I post them as I write them. I think by the time this series is finished, I might release the overall content as a much more coherent and comprehensive whitepaper. Please let me know what you think about this idea and whether you&#8217;d pay a few bucks for it.</em></p>
<p>Part 5 was the longest post so far in this series, yet I still firmly believe that these topics are not the overriding reasons why SharePoint projects fail. Some of the topics covered here are simply symptoms of the <strong>fallout </strong>from a project that was wicked in the first place. So really, I believe that parts 1 to 4 of this series is where you will find most of your answers.</p>
<p>The next post is going to cover application development factors in terms of failed projects, which will be interesting, since I&#8217;m not really a developer, so I might miss a few things that are obvious to developers. </p>
<p>I&#8217;ll then follow that up with the end user factors.. after that it&#8217;s a little grey at this stage <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>I&#8217;m not sure how long it will take to get the next post out either, as the next couple of weeks are busy for me. In any event, if you have found this article or this series of articles useful, please let me know.</p>
<p>Later</p>
<p>Paul</p>
<p>&nbsp;</p>
<p><!--adsense--></p>
<div id="spreadx">&nbsp;<a href="http://digg.com/submit?phase=2&url=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/digg.gif" alt="Digg" border="0" /></a>&nbsp;&nbsp;<a href="http://www.facebook.com/share.php?u=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/facebook.gif" alt="Facebook" border="0" /></a>&nbsp;&nbsp;<a href="http://www.stumbleupon.com/submit?url=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/&title=Why+do+SharePoint+Projects+Fail+%26%238211%3B+Part+5" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/stumble.gif" alt="StumbleUpon" border="0" /></a>&nbsp;&nbsp;<a href="http://technorati.com/faves?add=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/technorati.gif" alt="Technorati" border="0" /></a>&nbsp;&nbsp;<a href="http://del.icio.us/post?url=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/&title=Why+do+SharePoint+Projects+Fail+%26%238211%3B+Part+5" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/delicious.gif" alt="Deli.cio.us" border="0" /></a>&nbsp;&nbsp;<a href="http://slashdot.org/submit.pl?url=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/slashdot.gif" alt="Slashdot" border="0" /></a>&nbsp;&nbsp;<a href="http://www.twitter.com/home?status=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/twitter.gif" alt="Twitter" border="0" /></a>&nbsp;&nbsp;<a href="http://www.sphinn.com/submit.php?url=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/sphinn.gif" alt="Sphinn" border="0" /></a>&nbsp;&nbsp;<a href="http://www.mixx.com/submit?page_url=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/mixx.gif" alt="Mixx" border="0" /></a>&nbsp;&nbsp;<a href="http://www.google.com/bookmarks/mark?op=edit&bkmk=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/&title=Why+do+SharePoint+Projects+Fail+%26%238211%3B+Part+5" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/google.gif" alt="Google" border="0" /></a>&nbsp;&nbsp;<a href="http://www.dzone.com/links/add.html?url=http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/&title=Why+do+SharePoint+Projects+Fail+%26%238211%3B+Part+5" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/dzone.gif" alt="DZone" border="0" /></a>&nbsp;</div><p class="tags">No Tags</p>]]></content:encoded>
			<wfw:commentRss>http://www.cleverworkarounds.com/2008/04/27/why-do-sharepoint-projects-fail-part-5/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>SharePoint External Storage API &#8211; Crushing My Dream</title>
		<link>http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/</link>
		<comments>http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 12:43:04 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Application Development]]></category>
		<category><![CDATA[Documentum]]></category>
		<category><![CDATA[Governance]]></category>
		<category><![CDATA[Infrastructure]]></category>
		<category><![CDATA[planning]]></category>
		<category><![CDATA[Risk]]></category>
		<category><![CDATA[SAN]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SharePoint]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[STSDEV]]></category>

		<guid isPermaLink="false">http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/</guid>
		<description><![CDATA[When I read several months back, that Microsoft was going to supply an API for external storage in MOSS/WSS, I sprang from my desk and danced around the room and babbled incoherently as if I&#8217;d been touched by Benny Hinn. Okay, well maybe I didn&#8217;t quite do that. But what I did do was forward [...]<p class="tags">No Tags</p>]]></description>
			<content:encoded><![CDATA[<p>When I <a href="http://support.microsoft.com/kb/938499/" target="_blank">read</a> several months back, that Microsoft was going to supply an API for external storage in MOSS/WSS, I sprang from my desk and danced around the room and babbled incoherently as if I&#8217;d been touched by <a href="http://www.youtube.com/watch?v=5lvU-DislkI" target="_blank">Benny Hinn</a>.</p>
<p>Okay, well maybe I didn&#8217;t quite do that. But what I did do was forward the KB article to a colleague whose company is the leading reseller for <a href="http://www.documentum.com/" target="_blank">EMC Documentum</a> in my town. We&#8217;d previously had one of those conversations over a few beers where we questioned the wisdom of SharePoint&#8217;s potentially unwise, yet unsurprising use of SQL Server as the storage engine.</p>
<h2>&#8230;so what&#8217;s wrong with SQL?</h2>
<p><em>I am going to briefly dump on SQL here for a minute. But first, let me tell you, I actually like SQL Server! Always have. I hated other Office Server products like Exchange until the 2003 version and SharePoint until the 2007 version. But on the whole, I found SQL to be pretty good. So hopefully that will stop the SQL fanboys from flaming me!</em></p>
<p>Those readers who appreciate capacity planning issues would appreciate the challenges SQL based storage brings to the table.Additionally, those who have used Enterprise Information Management products like <a href="http://www.documentum.com/" target="_blank">Documentum</a> or Hummingbird (now <a href="http://www.opentext.com/" target="_blank">OpenText</a>) would nod as if Microsoft have finally realised the error of their ways with this updated API.</p>
<p>All of the SharePoint goodies like version control, full text indexing and records management come at a price. Disk consumption and performance drain.&nbsp; Microsoft say to plan for 1.5 times your previous growth in disk usage. In my own <a href="http://www.cleverworkarounds.com/2007/10/17/disk-and-io-sizing-for-moss2007-part-1/" target="_blank">real-world results</a> it is more like 2.5 times previous growth. Disk I/O is also increased markedly.</p>
<p>&#8220;So what? Disk is cheap&#8221;, you reply. Perhaps so, but the disk itself was never the major cost. Given that this is a SQL database we are talking about, a backup of a 100 gigabyte SQL database could take hours and a restore possibly longer. A differential backup of a SQL database would be the entire 100 gig as it is generally one giant database file! So the whole idea of differential backups during the week and full backups on weekends suddenly has to be re-examined. Imagine a disk partition gets corrupted rendering the data useless. In a file server, this might mean 20% of shared files are unavailable while a restore takes place. In a SQL world, you have likely toasted the whole thing and a full restore is required. Often organisations overlook the common issue of existing backup infrastructure not being scalable enough to deal with SQL databases of this size.</p>
<p>&#8220;100 gig&#8221;, you scoff, don&#8217;t be ridiculous&#8221;. Sorry but I have news for you. At an application level, there is a scalability issue in that the lowest logical SharePoint object that can have its own database is a <strong>Site Collection</strong>, not an individual site. For many reasons, it is usually better to use a single site collection where possible. But if one particular SharePoint site has a library with a lot of files, then the entire content database for the site collection is penalised.</p>
<p>Now the above reasons may be the big ticket items that vendors use to sell SAN&#8217;s and complex Backup/Storage solutions, but that&#8217;s not the real issue.</p>
<h2>The real issue (drumroll&#8230;)</h2>
<p>It may come as a complete shock to you, but documents are not all created equal. No! Really? <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  If they were, those crazy cardigan wearing, file-plan obsessed document controllers and records managers wouldn&#8217;t exist. But as it happens, different content is handled and treated completely differently, based on its characteristics.</p>
<p>Case in point: Kentucky Fried Chicken would have some interesting governance around the recipe for its 11 herbs and spices, as would the object of <a href="http://www.theregister.co.uk/2005/09/05/chair_chucking/" target="_blank">Steve Balmer&#8217;s chair throwing</a> with their search engine page ranking algorithms.</p>
<p>I picked out those two obvious examples to show an extreme in documents with high intrinsic value to an organisation. The reality is much more mundane. For example, you may be required by law to store all financial records for seven years. In this day and age, invoices can be received electronically, via fax or email. Once processed by accounts payable, invoices largely have little real value.</p>
<p>By using SQL Server, <strong>Microsoft is in effect allocating an identical cost of each document in terms of infrastructure cost</strong>. Since all documents of a site collection reside inside a SQL content database, you have limited flexibility to shift lower value documents to lower cost storage infrastructure.</p>
<h2>How do the big boys do it then?</h2>
<p><a href="http://www.documentum.com/" target="_blank">Documentum</a> as an example stores the content itself in traditional file shares and then stores the name and location of that document (and any additional metadata) in the SQL database. Those of you who have only seen SharePoint may think this is a crazy idea and introduce much more complex disaster recovery issues. But the reality is the opposite.</p>
<p>Consider the sorts of things you can do with this set-up. You can have many file shares on many servers or SAN&#8217;s. <a href="http://www.documentum.com/" target="_blank">Documentum</a> for example, would happily allow an administrator to automatically move all documents not accessed in three months to older, slower file storage. It would move the files and then update the file location in SQL so the new location is hidden from the user and they don&#8217;t even know it has been moved. Conversely, documents on older, slower storage that have been accessed recently can be moved back to the faster storage automatically.</p>
<p>It also facilitates geographically dispersed organisations having a central SQL repository for the document metadata, but each remote site has a local file store, to make retrieval work at LAN speeds for most documents. This is a much simpler geographically dispersed scenario than SharePoint can ever do right now.</p>
<p>Restores from backup are quite simple. If a file server corrupts, it only affects the documents stored on that file server. Individual file restores are easy to perform and you don&#8217;t have to do a major 100gig database restore for a few files.</p>
<p>Furthermore, documents that have a compliance requirement, but do not need to be immediately available, can easily be archived off to read-only media, thus reducing disk space consumption. The metadata detail of the file can still be retrieved from the SQL database, but location information in the SQL database can now refer to a DVD or tape number.</p>
<p>For this reason, it is clear that SharePoint&#8217;s architecture has some cost and scalability limitations when it comes to disk usage and management, largely due to SQL Databases and the limitation of Site Collections for content databases.</p>
<p>So how can we move less valuable documents onto less expensive disk hardware? Multiple databases? Possibly, but that requires multiple site collections and this complicates your architecture significantly. (Doing that is the Active Directory equivalent of using separate forests for each of your departments).</p>
<p><em>Note to SharePoint fanboys: I am well aware that you can &#8216;sort of&#8217; do some of this stuff via farm design, site design and 3rd party tools. But until you have seen an high end enterprise content management system, there is no contest. </em></p>
<p>So you might wonder why SharePoint is all the rage then &#8211; even for organisations that already have high end ECM systems? Well the short answer is other ECM vendors&#8217; GUIs suck balls and users like SharePoint&#8217;s front end better. (And I am not going to provide a long answer <img src='http://www.cleverworkarounds.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  )</p>
<h2>Utopia then?</h2>
<p>As I said at the start of this post, I was very happy to hear about Microsoft&#8217;s external storage API. In my mind&#8217;s eye, I envisaged a system where you create two types of document libraries: &#8216;standard&#8217; document libraries that use SQL as the store and &#8216;enhanced&#8217; document libraries that look and feel identical to a regular document library, but it stores the data outside of SQL. Each &#8216;enhanced document library&#8217; would be able to point to various different file stores, configured from within the properties of the document library itself.</p>
<h2>Utopia my butt!</h2>
<p>Then a few weeks back some more detail emerged in <a href="http://msdn2.microsoft.com/en-us/library/bb802976.aspx" target="_blank">SDK documentation</a> and my dream was shattered. This really smells like a &#8220;just get version 1 out there and we will fix it properly in version 2&#8243; release. I know all software companies partake in this sales technique, but it is Microsoft we are talking about here. Therefore it it my god given right&#8230;no&#8230;my god given <strong>privilege</strong> to whine about it as much as I see fit.</p>
<p>Essentially this new feature defines an external BLOB store (EBS). The EBS runs parallel to the SQL Server content database, which stores the site&#8217;s structured data. You will note that this is pretty much the <a href="http://www.documentum.com/" target="_blank">Documentum</a> method.</p>
<p>In SharePoint, you must implement a COM interface (called the EBS Provider) to keep these two stores in sync. The COM interface recognizes file Save and Open commands and invokes redirection calls to the EBS. The EBS Provider also ensures that the SQL Server content database contains metadata references to their associated BLOB streams in the external BLOB store.</p>
<p>You install and configure the EBS Provider on each Web front end server in your farm. <strong>In its current version, external BLOB storage is supported only at the scope of the farm (</strong><a href="http://msdn2.microsoft.com/en-us/library/ms429183.aspx">SPFarm</a><strong>).</strong></p>
<h2>Your point being?</h2>
<p>If you haven&#8217;t realised why I marked the previous sentence in bold, it is this. Since this EBS provider can only be supported at farm scope, then every document library on every site on every site collection in your farm now saves its data via the EBS provider.</p>
<p>So there is utterly nil granularity with this approach. It&#8217;s an all or nothing deal. (There goes my utopian dream of two different types of document libraries). All of your documents in the farm are doing to be stored in this EBS provider!</p>
<h2>But it gets worse!</h2>
<blockquote><p><em>The external BLOB storage feature in the present release will not remain syntactically consistent with external BLOB storage technology to be released with the next full-version release of Microsoft Office and Windows SharePoint Services. Such compatibility was not a design goal, so you cannot assume that your implementation using the present version will be compatible with future versions of Microsoft Office or Windows SharePoint Services.</em></p>
</blockquote>
<p>So basically, if you invest time and resources into implementing an EBS provider, then you&#8217;re pretty much have to rewrite it all for the next version. (At least you find this out up front).</p>
<blockquote><p><em>No utility is available for moving BLOB data from the content database into the external BLOB store. Therefore, when you install and enable the EBS Provider for the first time, you must manually move existing BLOBs that are currently stored in the content database to your external BLOB store. </em></p>
</blockquote>
<p>Okay that makes sense. It is annoying but I can forgive that. Basically if you implement an EBS provider and enable it, your choices for migrating your existing content into it is a backup and restore/overwrite operation or simply wait it out and allow the natural process of file updates do the job for you.</p>
<blockquote><p><em>When using an external BLOB store with the EBS Provider, you must re-engineer your backup and restore procedures, as well as your provisions for disaster recovery, because some backup and restore functions in Windows SharePoint Services operate on the content database but not on the external BLOB store. You must handle the external BLOB store separately. </em></p>
</blockquote>
<p>I would have preferred Microsoft to flesh this statement out, as this will potentially cause much grief if people are not aware of this. It implies that STSADM isn&#8217;t going to give you the sort of full-fidelity backup that you expect. Yeouch! I feel I might get a few late night call-outs on that one!</p>
<p><em>Ah, but wait a minute there, sunshine, is that any different to now? STSADM backup and restore is not exactly rock solid now!</em></p>
<blockquote><p>Any error conditions, resource drag, or system latency that is introduced by using the EBS Provider, or in the external BLOB store itself, are reflected in the performance of the SharePoint site generally.</p>
</blockquote>
<p>Yeah whatever, this is code word for Microsoft&#8217;s tech support way of getting out of helping you. &#8220;I&#8217;m sorry sir, but call your EBS vendor. Thank you come again!&#8221;</p>
<h2>Conclusion</h2>
<p>I can&#8217;t say I am surprised at this version 1 implementation, but I am disappointed. If only the granularity extended to a site collection or better still an individual site, I could forgo the requirement to extend it to individual document libraries or content types.</p>
<p>So it will be interesting to see if this API gets any real uptake and if it does, who would actually use it!</p>
<p>later</p>
<p>Paul</p>
<div id="spreadx">&nbsp;<a href="http://digg.com/submit?phase=2&url=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/digg.gif" alt="Digg" border="0" /></a>&nbsp;&nbsp;<a href="http://www.facebook.com/share.php?u=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/facebook.gif" alt="Facebook" border="0" /></a>&nbsp;&nbsp;<a href="http://www.stumbleupon.com/submit?url=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/&title=SharePoint+External+Storage+API+%26%238211%3B+Crushing+My+Dream" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/stumble.gif" alt="StumbleUpon" border="0" /></a>&nbsp;&nbsp;<a href="http://technorati.com/faves?add=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/technorati.gif" alt="Technorati" border="0" /></a>&nbsp;&nbsp;<a href="http://del.icio.us/post?url=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/&title=SharePoint+External+Storage+API+%26%238211%3B+Crushing+My+Dream" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/delicious.gif" alt="Deli.cio.us" border="0" /></a>&nbsp;&nbsp;<a href="http://slashdot.org/submit.pl?url=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/slashdot.gif" alt="Slashdot" border="0" /></a>&nbsp;&nbsp;<a href="http://www.twitter.com/home?status=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/twitter.gif" alt="Twitter" border="0" /></a>&nbsp;&nbsp;<a href="http://www.sphinn.com/submit.php?url=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/sphinn.gif" alt="Sphinn" border="0" /></a>&nbsp;&nbsp;<a href="http://www.mixx.com/submit?page_url=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/mixx.gif" alt="Mixx" border="0" /></a>&nbsp;&nbsp;<a href="http://www.google.com/bookmarks/mark?op=edit&bkmk=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/&title=SharePoint+External+Storage+API+%26%238211%3B+Crushing+My+Dream" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/google.gif" alt="Google" border="0" /></a>&nbsp;&nbsp;<a href="http://www.dzone.com/links/add.html?url=http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/&title=SharePoint+External+Storage+API+%26%238211%3B+Crushing+My+Dream" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/dzone.gif" alt="DZone" border="0" /></a>&nbsp;</div><p class="tags">No Tags</p>]]></content:encoded>
			<wfw:commentRss>http://www.cleverworkarounds.com/2008/03/25/sharepoint-external-storage-api-crushing-my-dream/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Upgrading HBA controller driver and firmware for IBM Blade</title>
		<link>http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/</link>
		<comments>http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/#comments</comments>
		<pubDate>Tue, 09 Oct 2007 12:56:58 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[IBM]]></category>
		<category><![CDATA[Infrastructure]]></category>
		<category><![CDATA[SAN]]></category>

		<guid isPermaLink="false">http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/</guid>
		<description><![CDATA[Seriously.. this particular post is so fringe I wonder if there is any point, given I mostly blog around SharePoint 2007. But hey, governance is critical at all levels and its all well and good to have all this governance at a SharePoint farm level, only to find the underlying infrastructure supporting it is sub-optimally [...]<p class="tags">No Tags</p>]]></description>
			<content:encoded><![CDATA[<p>Seriously.. this particular post is so fringe I wonder if there is any point, given I mostly blog around SharePoint 2007. But hey, governance is critical at all levels and its all well and good to have all this governance at a SharePoint farm level, only to find the underlying infrastructure supporting it is sub-optimally configured or maintained.</p>
<p>For what its worth, I don&#8217;t do this sort of work anymore.. its been a long time since geeky low level stuff pushed my buttons. But hey, you never know &#8211; maybe someone may find this of some use..</p>
<p>So here we go. This post simply outlines the process of upgrading an IBM blade server to the latest greatest (at the time of writing) drivers, firmware and stuff. The operating system was installed by IBM&#8217;s fancy schamzy ServerGuide CD&#8217;s. But from my experience with IBM in particular, by the time you rip open the packaging, the CD is out of date and there are much newer versions on IBM&#8217;s site. Given that we are talking about disk subsystems, BIOS, drivers and that sort of stuff here, you should ideally ensure you always do a comprehensive check of all components of your server and system infrastructure and make sure you have the latest.</p>
<p>Upgrading this stuff before the server is in production is less risky and allows you to capture really useful information that helps for next time.</p>
<p><strong>Example HBA and storage subsystem driver install for WINDOWS Cluster on IBM BladeServers</strong></p>
<p>1. Qlogic San Surfer management agent</p>
<p>Run the QLogic SANsurfer install program on the blade server and click on the custom button and then click on the Next button:</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb17.png" /></p>
<p>Deselect everthing except SANsurfer FC Windows Agent (we do not need all the other crap) and click on the Next button:</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb21.png" /></p>
<p>Click on the Install button:</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb31.png" /></p>
<p>Click on the Done button:</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb41.png" /></p>
<p><strong>2. Update the Qlogic drivers</strong></p>
<p>So now that we have the SanSurfer management agent installed, we can use the SanSurfer Administration utility to connect to this server and check things out. You can collect some useful stats from this utility which I will blog about some other time. (I used it to corroborate disk I/O performance as reported by my SAN as well as Windows physicaldisk performance counters)</p>
<p>Anyway I digress. So I am assuming here that you have installed the SanSurfer management components (the stuff you skipped in step 1) onto management PC. So using SANSurfer Administration utility, Connect to the IP of the server running the agent and then click on each HBA/Port listed.</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb51.png" /></p>
<p>Click UTILITIES tab and click Update Driver and choose &#8220;from the Qlogic Website&#8221;</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb61.png" /></p>
<p>If there is a new driver, then you will see a message like the one below</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb71.png" /></p>
<p>You will be asked to enter a password.. (you can find the default password in the documentation that comes with the blade if you have never set it)</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb81.png" /></p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb91.png" /></p>
<p>Now the update has completed..</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb101.png" /></p>
<p><strong>3. Option ROM and Firmware</strong></p>
<p>Note the OS driver was not the only thing upgradable via this utility. It is also possible to upgrade firmware and BIOS for the controller itself</p>
<p>So I went snooping at the IBM website and came across the is the IBM OEM Support page</p>
<p>http://support.qlogic.com/support/oem_detail_all.asp?oemid=224</p>
<p>Listed on this page is:</p>
<p><strong>4Gb Expansion Card ROM Image for HS &amp; LS blades 1.38 4Gb Expansion Card BIOS 1.24, Fcode 1.25, Firmware 4.00.24. </strong></p>
<p>Examination of the current BIOS using SanSurfer showed an older BIOS.</p>
<p><strong>BIOS is 1.04, FW 4.00.23, fcode 1.08 </strong></p>
<p>Downloaded <strong>ibm_qmix472cf1.38risc4.00.24.zip </strong>from the above site and saved it to my PC.</p>
<p>Now back in the SANSurfer GUI, choose UPDATE OPTION ROM</p>
<p>Choose the downloaded zip file</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb111.png" /></p>
<p>enter password</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb121.png" /></p>
<p>Reboot the server and check the option rom Information. Well what do you know.. now it matches the version on the IBM OEM site.</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb131.png" /></p>
<p><strong>4. Install IBM Storage Manager host agent for failover</strong></p>
<p>This site has a nice new IBM SAN, and to achieve redundancy within the SAN, you have to install an IBM component that sets up the HBA&#8217;s on the blade for failover. This software came with the SAN and once again I checked IBM&#8217;s web site for the latest version.</p>
<p>Here, I used Storage Manager v9.19 for Windows 64-bit\Windows</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb141.png" /></p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb151.png" /></p>
<p>Choose HOST from the list here.</p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb161.png" /></p>
<p>Choose the RDAC Driver as recommended. This is holding my entire farm and I&#8217;ll stick to the recommendation <img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb171.gif" /></p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb181.png" /></p>
<p><img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb191.png" /></p>
<p>Restart and hey presto! You will see in a later post my test plan for stress testing this SAN once set up as I test this failover by pulling cables <img src="http://www.cleverworkarounds.com/wp-content/uploads/2007/10/100907-1256-upgradinghb201.gif" /></p>
<div id="spreadx">&nbsp;<a href="http://digg.com/submit?phase=2&url=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/digg.gif" alt="Digg" border="0" /></a>&nbsp;&nbsp;<a href="http://www.facebook.com/share.php?u=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/facebook.gif" alt="Facebook" border="0" /></a>&nbsp;&nbsp;<a href="http://www.stumbleupon.com/submit?url=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/&title=Upgrading+HBA+controller+driver+and+firmware+for+IBM+Blade" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/stumble.gif" alt="StumbleUpon" border="0" /></a>&nbsp;&nbsp;<a href="http://technorati.com/faves?add=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/technorati.gif" alt="Technorati" border="0" /></a>&nbsp;&nbsp;<a href="http://del.icio.us/post?url=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/&title=Upgrading+HBA+controller+driver+and+firmware+for+IBM+Blade" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/delicious.gif" alt="Deli.cio.us" border="0" /></a>&nbsp;&nbsp;<a href="http://slashdot.org/submit.pl?url=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/slashdot.gif" alt="Slashdot" border="0" /></a>&nbsp;&nbsp;<a href="http://www.twitter.com/home?status=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/twitter.gif" alt="Twitter" border="0" /></a>&nbsp;&nbsp;<a href="http://www.sphinn.com/submit.php?url=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/sphinn.gif" alt="Sphinn" border="0" /></a>&nbsp;&nbsp;<a href="http://www.mixx.com/submit?page_url=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/mixx.gif" alt="Mixx" border="0" /></a>&nbsp;&nbsp;<a href="http://www.google.com/bookmarks/mark?op=edit&bkmk=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/&title=Upgrading+HBA+controller+driver+and+firmware+for+IBM+Blade" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/google.gif" alt="Google" border="0" /></a>&nbsp;&nbsp;<a href="http://www.dzone.com/links/add.html?url=http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/&title=Upgrading+HBA+controller+driver+and+firmware+for+IBM+Blade" target="_new"><img src="http://www.cleverworkarounds.com/wp-content/plugins/spreadx/images/dzone.gif" alt="DZone" border="0" /></a>&nbsp;</div><p class="tags">No Tags</p>]]></content:encoded>
			<wfw:commentRss>http://www.cleverworkarounds.com/2007/10/09/upgrading-hba-controller-driver-and-firmware-for-ibm-blade/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

