<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>World of cloud computing</title>
	<atom:link href="http://cloudcomputinghub.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://cloudcomputinghub.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Wed, 14 Apr 2010 08:41:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='cloudcomputinghub.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>World of cloud computing</title>
		<link>http://cloudcomputinghub.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://cloudcomputinghub.wordpress.com/osd.xml" title="World of cloud computing" />
	<atom:link rel='hub' href='http://cloudcomputinghub.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Confirming Commercial Availability and Announcing Microsoft Azure Pricing</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/02/11/confirming-commercial-availability-and-announcing-microsoft-azure-pricing/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/02/11/confirming-commercial-availability-and-announcing-microsoft-azure-pricing/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 09:05:36 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Microsoft Azure]]></category>
		<category><![CDATA[Microsoft azure storage]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[Microsfot Azure Pricing]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=39</guid>
		<description><![CDATA[Upon commercial availability Microsoft will offer Windows Azure through a consumption-based pricing model, allowing partners and customers to pay only for the services that they consume. Windows Azure: Compute @ $0.12 / instance hour Storage @ $0.15 / GB / month stored Storage Transactions @ $0.01 / 10K SQL Azure: Web Edition – Up to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=39&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Upon commercial availability Microsoft will offer Windows Azure through a consumption-based pricing model, allowing partners and customers to pay only for the services that they consume.</p>
<p>Windows Azure:</p>
<ul>
<li> Compute @  $0.12 / instance hour</li>
<li> Storage @ $0.15 / GB / month stored</li>
<li> Storage Transactions @ $0.01 / 10K</li>
</ul>
<p>SQL Azure:</p>
<ul>
<li> Web Edition – Up to 1 GB relational database @ $9.99</li>
<li> Business Edition – Up to 10 GB relational database @ $99.99</li>
</ul>
<p>.NET Services:</p>
<ul>
<li> Messages @ $0.15/100K message operations , including Service Bus messages and Access Control tokens</li>
</ul>
<p>Bandwidth across all three services will be charged at $0.10 in / $0.15 out / GB</p>
<p><strong>You can get the full information from <a href="http://blogs.msdn.com/windowsazure/archive/2009/07/14/confirming-commercial-availability-and-announcing-business-model.aspx">here</a>.</strong></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/39/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=39&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/02/11/confirming-commercial-availability-and-announcing-microsoft-azure-pricing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>
	</item>
		<item>
		<title>VMware vCloud Express : On-demand, pay-as-you-go Infrastructure as a Service</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/02/10/vmware-vcloud-express-on-demand-pay-as-you-go-infrastructure-as-a-service/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/02/10/vmware-vcloud-express-on-demand-pay-as-you-go-infrastructure-as-a-service/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 14:00:13 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[VMware cloud computing]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=37</guid>
		<description><![CDATA[vCloud Express is an Infrastructure as a Service (IaaS) offering delivered by leading VMware service provider partners<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=37&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>vCloud Express is an Infrastructure as a Service (IaaS) offering delivered by leading VMware service provider partners. It provides reliable, on-demand, pay-as-you-go infrastructure that ensures compatibility with internal VMware environments and with VMware Virtualized™ services.</p>
<p>This class of service allows IT to reduce both the capex and resource challenges associated with the fluctuating infrastructure requirements of development teams. Developers are able to use the vCloud Express service at their convenience to address various infrastructure and programming needs such as experimentation, prototyping and testing. The vCloud Express service retains the robustness, interoperability and reliability that VMware is known for.</p>
<p>vCloud <a href="http://www.vmware.com/appliances/services/vcloud-express/ecosystem-partners.html">Partner Ecosystem</a>, which includes the ISV and open source community has taken note of our investment in vCloud and is integrating key solutions with the VMware vCloud API as part of innovative services from VMware vCloud Express providers. For example, we now have available both Java and Python software development kits (SDKs) for the vCloud API, making it easier for developers and ISVs to jumpstart their projects by flexibly leveraging private and public cloud services via the vCloud API.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/37/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=37&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/02/10/vmware-vcloud-express-on-demand-pay-as-you-go-infrastructure-as-a-service/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>
	</item>
		<item>
		<title>How to Migrate a Database by Using the Generate Scripts Wizard</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/02/10/how-to-migrate-a-database-by-using-the-generate-scripts-wizard/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/02/10/how-to-migrate-a-database-by-using-the-generate-scripts-wizard/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 10:12:45 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Microsoft Azure]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[Microsoft azure storage]]></category>
		<category><![CDATA[SQL Server to SQL Azure migration]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=35</guid>
		<description><![CDATA[How to Migrate a Database by Using the Generate Scripts Wizard When you deploy an application to Microsoft SQL Azure Database, you may need to migrate a database from an on-premises instance of SQL Server to SQL Azure. This topic shows how to migrate a simple database to SQL Azure by using Transact-SQL scripts. SQL [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=35&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>How to Migrate a Database by Using the Generate Scripts Wizard</strong></p>
<p>When you deploy an application to Microsoft SQL Azure Database, you may need to migrate a database from an on-premises instance of SQL Server to SQL Azure. This topic shows how to migrate a simple database to SQL Azure by using Transact-SQL scripts.</p>
<p>SQL Azure supports a subset of the Transact-SQL language. You must modify the generated script to only include supported Transact-SQL statements before you deploy the database to SQL Azure.</p>
<p>Create the Transact-SQL Script</p>
<ol>
<li>In <strong>Object</strong> <strong>Explorer</strong>, right-click the <strong>School</strong> database, point to <strong>Tasks</strong>,      and select <strong>Generate</strong> <strong>Scripts</strong>.</li>
<li>In the <strong>Script</strong> <strong>Wizard</strong> dialog box, click <strong>Next</strong> to get to the <strong>Select</strong> <strong>Database</strong> step. Select <strong>School</strong>, select <strong>Script all objects in the selected      database</strong>, and then click <strong>Next</strong>.</li>
<li>In <strong>Choose</strong> <strong>Script</strong> <strong>Options</strong>, set the following options:
<ul>
<li>Convert UDDTs       to Base Types = True</li>
<li>Script Extended       Properties = False</li>
<li>Script Logins =       False</li>
<li>Script USE       DATABASE = False</li>
<li>Script Data =       True</li>
</ul>
</li>
</ol>
<p>SQL Azure does not support user-defined data types, extended properties, Windows authentication, or the USE statement.</p>
<ol>
<li>Click <strong>Next</strong>,      click <strong>Next</strong>, and then click <strong>Finish</strong>. The Script Wizard      generates the script. Click <strong>Close</strong> when the script is completed.</li>
<li>In the generated      script, delete all instances of &#8220;SET ANSI_NULLS ON&#8221;.</li>
<li>Each CREATE      TABLE statement includes a &#8220;WITH (PAD_INDEX = OFF,      STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON,      ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]&#8221; clause. Delete all instances of      that clause.</li>
<li>Each CREATE      TABLE statement includes the &#8220;ON [PRIMARY]&#8221; clause. Delete all      instances of that clause.</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/35/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/35/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/35/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=35&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/02/10/how-to-migrate-a-database-by-using-the-generate-scripts-wizard/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>
	</item>
		<item>
		<title>Convert SQL Server 2008 Database to SQL Azure &#8211; SQL Azure Migration Wizard</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/02/10/convert-sql-server-2008-database-to-sql-azure-sql-azure-migration-wizard/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/02/10/convert-sql-server-2008-database-to-sql-azure-sql-azure-migration-wizard/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 09:49:33 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[SQL Azure]]></category>
		<category><![CDATA[Microsoft Azure]]></category>
		<category><![CDATA[SQL Azure migration wizard]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=33</guid>
		<description><![CDATA[SQL Azure does not support everything in SQL Server 2005 or SQL Server 2008 so you have to be careful about migrating SQL Server to SQL Azure. There is also no manager application currently available from the Azure Team to help you migrate databases or even create databases at the moment. You can&#8217;t use SQL [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=33&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>SQL Azure</strong> does not support everything in SQL Server 2005 or SQL Server 2008 so you have to be careful about migrating SQL Server to SQL Azure.</p>
<p>There is also no manager application currently available from the Azure Team to help you migrate databases or even create databases at the moment. You can&#8217;t use SQL Server Management Studio fully via the Object Explorer at this time either.</p>
<p>One of the solutions available that is pretty good IMHO is the free <strong>SQL Azure Migration Wizard</strong> on CodePlex that will attempt to migrate a SQL Server 2005 or SQL Server 2008 database to SQL Azure. You pick the items you want to migrate and the wizard will show any warnings and/or move the database ( schema not data ) to SQL Azure.</p>
<p>I had a really simple database I wanted to copy last night and it did an excellent job. However, this was indeed a simple database just for testing SQL Azure via ASP.NET MVC, etc.</p>
<p><img src="/Users/Manas/AppData/Local/Temp/moz-screenshot-1.png" alt="" /></p>
<p>That being said, however, if you are just getting started with SQL Azure, the SQL Azure Migration Wizard is a good and simple place to start for making that first test database.</p>
<p>You can download the SQL Azure Migration Wizard from CodePlex <a href="http://sqlazuremw.codeplex.com/">here</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/33/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/33/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/33/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=33&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/02/10/convert-sql-server-2008-database-to-sql-azure-sql-azure-migration-wizard/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>

		<media:content url="/Users/Manas/AppData/Local/Temp/moz-screenshot-1.png" medium="image" />
	</item>
		<item>
		<title>Amazon Cloud Computing Stack</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/02/09/amazon-cloud-computing-stack/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/02/09/amazon-cloud-computing-stack/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 19:27:21 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Amazon cloud computing]]></category>
		<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Amazon web services]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=29</guid>
		<description><![CDATA[Cloud computing is becoming a very hot area as it provides cost savings and time-to-market benefits to a wide spectrum of organizations. At the consumer end, small startup companies found Cloud computing can significantly reduce their initial setup cost. Large enterprises also found Cloud computing allows them to improve resource utilization and cost effectiveness, although [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=29&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Cloud computing is becoming a very hot area as it provides cost savings and time-to-market benefits to a wide spectrum of organizations.</p>
<p>At the consumer end, small startup companies found Cloud computing can significantly reduce their initial setup cost. Large enterprises also found Cloud computing allows them to improve resource utilization and cost effectiveness, although they also have security and control concerns.</p>
<p>Traditional software companies who distributes software on CD also look into the SaaS model as a new way of doing business. However, a SaaS model typically requires the companies to build some kind of web site. But these companies may not have the expertise to build large scale web sites and operate it. Cloud computing also allows them to outsource the SaaS infrastructure.</p>
<p>Here we look at the leader in the cloud computing provider space. AWS from Amazon.<strong></strong></p>
<p><strong>Amazon Web Service</strong></p>
<p>Amazon is the current leading provider in the Cloud computing space. At the heart of its technology stack (which is known as the Amazon Web Services), it includes an IaaS stack, a PaaS stack and a SaaS stack.</p>
<ol>
<li>Their IaaS stack      includes infrastructure resource such as virtual machine, virtual mount      disks, virtual network, load balancer, VPN, Databases.</li>
<li>Their PaaS stack      provides a set of distributed computing services including queuing, data      storage, metadata, parallel batch processing,</li>
<li>Their SaaS stack      provides a set of high level services such as content delivery network,      payment processing services, ecommerce fulfillment services.</li>
</ol>
<p>Since we are focusing in the Cloud Computing aspects, we will describe their IaaS and PaaS stack below but will skip their SaaS stack.</p>
<p><strong>EC2 – Elastic Computing</strong></p>
<p>Amazon has procured a large number of commoditized Intel boxes running virtualization software Xen. On top of Xen, Linux or Windows can be run as the guest OS . The guest operating system can have many variations with different set of software packages installed.</p>
<p>Each configuration is bundled as a custom machine image (called AMI). Amazon host a catalog of AMI for the users to choose from. Some AMI is free while other requires a usage charge. User can also customize their own setup by starting from a standard AMI, make their special configuration changes and then create a specific AMI that is customized for their specific needs. The AMIs are stored in Amazon’s storage subsystem S3.</p>
<p>Amazon also classifies their machines in terms of their processor power (no of cores, memory and disk size) and charged their usage at a different rate. These machines can be run in different network topology specified by the users. There is an “availability zone” concept which is basically a logical data center. “Availability zone” has no interdependency and is therefore very unlikely to fail at the same time. To achieve high availability, users should consider putting their EC2 instances in different availability zones.</p>
<p>“Security Group” is the virtual firewall of Amazon EC2 environment. EC2 instances can be grouped under “security group” which specifies which port is open to which incoming range of IP addresses. So EC2 instances that running applications at various level of security requirements can be put into appropriated security groups and managed using ACL (access control list). Somewhat very similar to what network administrator configure their firewalls.</p>
<p>User can start the virtual machine (called an EC2 instance) by specifying the AMI, the machine size, the security group, and its authentication key via command line or an HTTP/XML message. So it is very easy to startup the virtual machine and start running the user’s application. When the application completes, the user can also shutdown the EC2 instance via command line or HTTP/XML message. The user is only charged for the actual time when the EC2 instance is running.</p>
<p>One of the issue of extremely dynamic machine configuration (such as EC2) is that a lot of configuration setting is transient and does not survive across reboot. For example, the node name and IP address may have been changed, all the data stored in local files is lost. Latency and network bandwidth between machines may also have changed. Fortunately, Amazon provides a number of ways to mitigate these issues.</p>
<ul>
<li>By paying some      charge, user can reserve a stable IP address, called “elastic IP”, which      can be attached to EC2 instance after they bootup. External facing machine      is typically done this way.</li>
<li>To deal with      data persistence, Amazon also provides a logical network disk, called      “elastic block storage” to store the data. By paying some charges, EBS is      reserved for the user and it survives across EC2 reboots. User can attach      the EBS to EC2 instances after the reboot.</li>
</ul>
<p><strong>EBS – Elastic Block Storage</strong></p>
<p>Based on RAID disks, EBS provides a persistent block storage device for data persistence where user can attach it to a running EC2 instance within the same availability zone. EBS is typically used as a file system that is mounted to EC2 instance, or as raw devices for database.</p>
<p>Although EBS is a network devices to the EC2 instance, benchmark from Amazon shows that it has higher performance than local disk access. Unlike S3 which is based on eventual consistent model, EBS provides strict consistency where latest updates are immediately available.</p>
<p><strong>CloudWatch — Monitoring Services</strong></p>
<p>CloudWatch provides an API to extract system level metrics for each VM (e.g. CPU, network I/O and disk I/O) as well as for each load balancer services (e.g. response time, request rate). The collected metrics is modeled as a multi-dimensional data cube and therefore can be queried and aggregated (e.g. min/max/avg/sum/count) in different dimensions, such as by time, or by machine groups (by ami, by machine class, by particular machine instance id, by auto-scaling group).</p>
<p>This metrics is also used to drive the auto-scaling services (described below). Note that the metrics are predefined by Amazon and custom metrics (application level metrics) is not supported at this moment.</p>
<p><strong>Load Balancing Services</strong></p>
<p>Load balancer provides a way to group identical VMs into a pool. Amazon provides a way to create a software load balancer in a region and then attach EC2 instances (of the same region) to the it. The EC2 instances under a particular load balancer can be in different availability zone but they have to be in the same region.</p>
<p><strong>Auto-Scaling Services</strong></p>
<p>Auto-scaling allows the user to group a number of EC2 instances (typically behind the same load balancer) and specify a set of triggers to grow and shrink the group. Trigger defines the condition which is matching the collected metrics from the CloudWatch and match that against some threshold values. When match, the associated action can be to grow or shrink the group.</p>
<p>Auto-scaling allows resource capacity (number of EC2 instances) automatically adjusted to the actual workload. This way user can automatically spawn more VMs as the workload increases and shutdown the VM as the load decreases.</p>
<p><strong>Relational DB Services</strong></p>
<p>RDS is basically running MySQL in the EC2.</p>
<p><strong>S3 – Simple Storage Service</strong></p>
<p>Amazon S3 provides a HTTP/XML services to save and retrieve content. It provides a file system-like metaphor where “objects” are group under “buckets”. Based on a REST design, each object and bucket has its own URL.</p>
<p>With HTTP verbs (PUT, GET, DELETE, POST), user can create a bucket, list all the objects within the bucket, create object within a bucket, retrieve an object, remove an object, remove a bucket … etc.</p>
<p>Under S3, each object has a unique URI which serves as its key. There is no query mechanism in S3 and User has to lookup the object by its key. Each object is stored as an opaque byte array with maximum 5GB size. S3 also provides an interesting partial object retrieval mechanism by specifying the ranges of bytes in the URL.</p>
<p>However, partial put is not current support but it can be simulated by breaking the large object into multiple small objects and then do the assembly at the app level. Breaking down the object also help to speed up the upload and download by doing the data transfer in parallel.</p>
<p>Within Amazon S3, each S3 objects are replicated across 2 (or more) data center and also cache at the edge for fast retrieval.</p>
<p>Amazon S3 is based on an “eventual consistent” model which means it is possible that an application won’t see the change it just made. Therefore, some degree of tolerance of inconsistent view is required by the application. Application should avoid the situation of having two concurrent modifications to the same object. And application should wait for some time between updates, and also should expect all the data it reads is potentially stale for few seconds.</p>
<p>There is also no versioning concept in S3, but it is not hard to build one on top of S3.</p>
<p><strong>SimpleDB – queriable data storage</strong></p>
<p>Unlike S3 where data has to be looked up by key, SimpleDB provides a semi-structured data store with querying capability. Each object can be stored as a number of attributes where the user can search the object by the attribute name.</p>
<p>Similar to the concepts of “buckets “ and “objects” in S3, SimpleDB is organized as a set of “items” grouped by “domains”. However, each item can have a number of “attributes” (up to 256). Each attribute can store one or multiple values and the value must be a string (or a string array in case of multi-valued attribute). Each attribute can store up to 1K bytes, so it is not appropriate to store binary content.</p>
<p>SimpleDB is typically used as a metadata store in conjuction with S3 where the actual data is being stored. SimpleDB is also schema-less. Each item can define its own set of attributes and is free to add more or remove some attributes at runtime.</p>
<p>SimpleDB provides a query capability which is quite different from SQL. The “where” clause can only match an attribute value with a constant but not with other attributes. On the other hand, the query result only return the name of the matched items but not the attributes, which means subsequent lookup by item name is needed. Also, there is no equivalent of “order by” and the returned query result is unsorted.</p>
<p>Since all attribute are store as strings (even number, dates … etc). All comparison operation is done based on lexical order. Therefore, special encoding is needed for data type such as date, number to string to make sure comparison operation is done correctly.</p>
<p>SimpleDB is also based on an eventual consistency model like S3.</p>
<p><strong>SQS – Simple Queue Service</strong></p>
<p>Amazon provides a queue services for application to communicate in an asynchronous way with each other. Message (up to 256KB size) can be sent to queues. Each queue is replicated across multiple data centers.</p>
<p>Enterprises use HTTP protocol to send messages to a queue. “At least once” semantics is provided, which means, when the sender get back a 200 OK response, SQS guarantees that the message will be received by at least one receiver.</p>
<p>Receiving messages from a queue is done by polling rather than event driven calling interface. Since messages are replicated across queues asynchronously, it is possible that receivers only get some (but not all) messages sent to the queue. But the receiver keep polling the queue, he will eventually get all messages sent to the queue. On the other hand, message can be delivered out of order or delivered more than once. So the message processing logic needs to be idempotent as well as independent of message arrival order.</p>
<p>Once message is taken by a receiver, the message is invisible to other receivers for a period of time but it is not gone yet. The original receiver is supposed to process the message and make an explicit call to remove the message permanently from the queue. If such “removal” request is not made within the timeout period, the message will be visible in the queue again and will be picked up by subsequent receivers.</p>
<p><strong>Elastic Map/Reduce</strong></p>
<p>Amazon provides an easy way to run Hadoop Map/Reduce in the EC2 environment. They provide a web UI interface to start/stop a Hadoop Cluster and submit jobs to it.</p>
<p>Under elastic MR, both input and output data are stored into S3 rather than HDFS. This means data need to be loaded to S3 before the Hadoop processing can be started. Elastic also provides a job flow definition so user can concatenate multiple Map/Reduce job together. Elastic MR supports the program to be written in Java (jar) or any programming language (Hadoop streaming) as well as PIG and Hive.</p>
<p><strong>Virtual Private Cloud</strong></p>
<p>VPC is a VPN solution such that the user can extend its data center to include EC2 instances running in the Amazon cloud. Notice that this is an “elastic data center” because its size can grow and shrink when the user starts / stops EC2 instances.</p>
<p>User can create a VPC object which represents an isolated virtual network in the Amazon cloud environment and user can create multiple virtual subnets under a VPC. When starting the EC2 instance, the subnet id need to be specified so that the EC2 instance will be put into the subnet under the corresponding VPC.</p>
<p>EC2 instances under the VPC is completely isolated from the rest of Amazon’s infrastructure at the network packet routing level (of course it is software-implemented isolation). Then a pair of gateway objects (VPN Gateway on the Amazon side and Customer gateway on the data center side) need to be created. Finally a connection object is created that binds these 2 gateway objects together and then attached to the VPC object.</p>
<p>After these steps, the two gateway will do the appropriate routing between your data center and the Amazon VPC with VPN technologies used underneath to protect the network traffic.</p>
<p><strong>Things to watch out</strong></p>
<p>I personally think Amazon provides a very complete set of services that is sufficient for a wide spectrum of deployment scenarios. Nevertheless, there are a number of limitations that needs to pay attention to …</p>
<ol>
<li>There are no      Cloud standards today. Whatever choice made for a provider will imply some      degree of lock-in to a vendor specific architecture. Amazon is no      exception. One way to minimize such lock-in is to introduce an insulation      layer to localize all the provider-specific API.</li>
<li>Cloud providers      typically run their infrastructure on low-cost commodity hardware inside      some data center with network connected between them. Amazon is not making      their hosting environment very transparently and so it is not very clear      how much reliability one can expect from their environment. On the other      hand, the SLA guarantee that Amazon is willing to provide is relatively      low.</li>
<li>Multicast      communication is not supported between EC2 instances. This means      application has to communicate using TCP point-to-point protocol. Some      cluster replication framework based on IP multicast simply doesn’t work in      EC2 environment.</li>
<li>EBS currently      cannot be attached to a multiple EC2 instance at the same time. This means      some application (e.g. Oracle cluster) which based on having multiple      machines accessing a shared disk simply won’t work in EC2 environment.</li>
</ol>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/29/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/29/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/29/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=29&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/02/09/amazon-cloud-computing-stack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>
	</item>
		<item>
		<title>February 2010 release of Windows Azure Tools and SDK</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/02/09/february-2010-release-of-windows-azure-tools-and-sdk/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/02/09/february-2010-release-of-windows-azure-tools-and-sdk/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 14:10:00 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Microsoft Azure]]></category>
		<category><![CDATA[Microsoft azure storage]]></category>
		<category><![CDATA[window azure table storage]]></category>
		<category><![CDATA[Windows Azure CTP]]></category>
		<category><![CDATA[windows Azure Platform]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=24</guid>
		<description><![CDATA[Microsoft has released version 1.1 of the Windows Azure Tools and SDK. (direct link here). This release supports Visual Studio 2008 SP1 and the upcoming Visual Studio 2010 RC. What’s New Windows Azure Drive: Enables a Windows Azure application to use existing NTFS APIs to access a durable drive. This allows the Windows Azure application [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=24&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Microsoft has released version 1.1 of the <a href="http://go.microsoft.com/fwlink/?LinkID=128752">Windows Azure Tools and SDK</a>.</p>
<p>(direct link <a href="http://download.microsoft.com/download/5/5/E/55E49560-47A8-4E9E-B3A5-FF8FDB37046B/VSCloudService.exe">here</a>). This release supports Visual Studio 2008 SP1 and the upcoming Visual Studio 2010 RC.</p>
<p><strong>What’s New</strong></p>
<ul>
<li> Windows Azure Drive: Enables a Windows Azure application to use existing NTFS APIs to access a durable drive. This allows the Windows Azure application to mount a page blob as a drive letter, such as X:, and enables easily migration of existing NTFS applications to the cloud.</li>
<li> OS Version Support: Allows a Windows Azure application to choose the appropriate Guest OS to run on in the cloud.</li>
<li> Bug Fixes:</li>
</ul>
<ol>
<li> StorageClient: Expose account key from storage credentials, expose continuation tokens for pagination, reduce maximum buffer size for parallel uploads.</li>
<li> Windows Azure Diagnostics: Fix path corruption for crash dumps, OnDemandTransfer now respects LogLevelFilter.</li>
<li> VS 2010: Improved packaging performance.</li>
<li> VS 2010: Support for linked files in Web projects.</li>
<li> VS 2010: Support for ASP.NET web project web.config transformations.</li>
<li> Certificate selection lists certificates from LocalMachine\My instead of CurrentUser\My.</li>
<li> Right click on Role under Roles folder to select whether to launch the browser against HTTP, HTTPS or not at all.</li>
</ol>
<p>Updated and additional samples are available at: <a href="http://code.msdn.microsoft.com/windowsazuresamples">http://code.msdn.microsoft.com/windowsazuresamples</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/24/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=24&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/02/09/february-2010-release-of-windows-azure-tools-and-sdk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>
	</item>
		<item>
		<title>Introduction to SaaS Architecture</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/02/08/introduction-to-saas-architecture/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/02/08/introduction-to-saas-architecture/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 18:24:55 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[SaaS]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=21</guid>
		<description><![CDATA[There are three key differentiators that separate a well-designed SaaS application from a poorly designed one. A well-designed SaaS application is scalable, multi-tenant-efficient, and configurable. Scalable: Scaling the application means maximizing concurrency and using application resources more efficiently—for example, optimizing locking duration, sharing pooled resources such as threads and network connections, caching reference data, and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=21&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>There are three key differentiators that separate a well-designed SaaS application from a poorly designed one. A well-designed SaaS application is scalable, multi-tenant-efficient, and configurable.</p>
<p><strong>Scalable:</strong> Scaling the application means maximizing concurrency and using application resources more efficiently—for example, optimizing locking duration, sharing pooled resources such as threads and network connections, caching reference data, and partitioning large databases.</p>
<p><strong>Multi-tenant-efficient:</strong> When a user at one company accesses customer information by using a CRM application service, the application instance that the user connects to may be accommodating users from dozens, or even hundreds, of other companies—all completely unknown to any of the users. This requires an architecture that maximizes the sharing of resources across tenants, but that is still able to differentiate data belonging to different customers.</p>
<p><strong>Configurable:</strong> If a single application instance on a single server has to accommodate users from several different companies at once, you can’t simply write custom code to customize the end-user experience—anything you do to customize the application for one customer will change the application for other customers as well. Instead of customizing the application in the traditional sense, then, each customer uses metadata to configure the way the application appears and behaves for its users. The challenge for the SaaS architect is to ensure that the task of configuring applications is simple and easy for the customers, without incurring extra development or operation costs for each configuration.</p>
<p><strong>Software as a Service Maturity Model:</strong></p>
<p>SaaS architecture has four maturity levels, whose key attributes are configurability, multi-tenant-efficiency, and scalability.  Followings are the four maturity levels:</p>
<p><img src="/Users/NAVINV%7E1/AppData/Local/Temp/moz-screenshot-2.png" alt="" /></p>
<p><img src="/Users/NAVINV%7E1/AppData/Local/Temp/moz-screenshot.png" alt="" /><img src="/Users/NAVINV%7E1/AppData/Local/Temp/moz-screenshot-1.png" alt="" /></p>
<p><a href="http://blogs.globallogic.com/wp-content/uploads/2009/12/saasarchitecture.gif"></a></p>
<p><strong>Level 1</strong> – Ad-Hoc/Custom: At the first level of maturity, each customer has its own customized version of the hosted application and runs its own instance of the application on the host’s server. Migrating a traditional non-networked or client-server application to this level of SaaS typically requires the least development effort and reduces operating cost by consolidating server hardware and administration.</p>
<p><strong>Level 2</strong>- Configurable: The second maturity level provides greater flexibility through configurable metadata, so that many customers can use separate instance of the same application code. This allows the vendor to meet the different needs of each customer through detailed configuration options, while simplifying maintenance and updating of a common code base.</p>
<p><strong>Level 3</strong>- Configurable, Multi-Tenant-Efficiency: The third maturity level adds multi-tenancy to the second level, so that a single program instance serves all customers. This approach enables more efficient use of server resources without any apparent difference to the end user. But ultimately comes up against limits in scalability.</p>
<p><strong>Level 4</strong>- Scalable, Configurable, Multi-Tenant-Efficiency: The fourth and final SaaS maturity level adds scalability through a multitier architecture supporting a load-balanced farm of identical application instances, running on a variable number of servers. The provider can increase or decrease the system’s capacity to match demand by adding or removing servers, without the need for any further alteration of application software architecture.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/21/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=21&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/02/08/introduction-to-saas-architecture/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>

		<media:content url="/Users/NAVINV%7E1/AppData/Local/Temp/moz-screenshot-2.png" medium="image" />

		<media:content url="/Users/NAVINV%7E1/AppData/Local/Temp/moz-screenshot.png" medium="image" />

		<media:content url="/Users/NAVINV%7E1/AppData/Local/Temp/moz-screenshot-1.png" medium="image" />
	</item>
		<item>
		<title>Microsoft Azure vs. Google Apps vs. Amazon – Your choice?</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/02/08/microsoft-azure-vs-google-apps-vs-amazon-%e2%80%93-your-choice/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/02/08/microsoft-azure-vs-google-apps-vs-amazon-%e2%80%93-your-choice/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 18:20:23 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Microsoft Azure]]></category>
		<category><![CDATA[Amazon web services]]></category>
		<category><![CDATA[Google Apps]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=18</guid>
		<description><![CDATA[It’s been quite some time, Microsoft have joined the Cloud computing space with the advent of Microsoft Azure platform. The other players already fighting battle in this scenario are Amazon and Google. It would be an interesting task to compare the three major offerings existing today in the cloud compute market space. So now it [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=18&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It’s been quite some time, Microsoft have joined the Cloud computing space with the advent of Microsoft Azure platform. The other players already fighting battle in this scenario are Amazon and Google. It would be an interesting task to compare the three major offerings existing today in the cloud compute market space.</p>
<p>So now it is right time to compare all the option available in market for cloud computing. Here is a good <a href="http://www.expertdevelopersblog.co.cc/2010/04/microsoft-azure-vs-google-apps-vs.html" target="_blank">blog</a> to <a href="http://www.expertdevelopersblog.co.cc/2010/04/microsoft-azure-vs-google-apps-vs.html" target="_blank">compare Microsoft Azure vs. Google Apps vs. Amazon</a>.</p>
<p><strong>Related blogs:</strong></p>
<p><a href="http://www.expertdevelopersblog.co.cc/2010/04/important-tips-on-sql-azure-programming.html" target="_blank">Important tips on SQL Server programming model</a></p>
<p><a href="http://www.expertdevelopersblog.co.cc/2010/04/key-benefits-of-sql-azure.html" target="_blank">Key benefits of SQL Azure</a></p>
<p><a href="http://www.expertdevelopersblog.co.cc/2010/04/tools-and-utilities-support-by-sql.html" target="_blank">Tools and utilities support by SQL Azure</a></p>
<p><a href="http://www.expertdevelopersblog.co.cc/2010/03/introduction-to-saas-architecture.html" target="_blank">Introduction to SaaS architecture</a></p>
<p><a href="http://www.expertdevelopersblog.co.cc/2010/02/how-to-migrate-from-sql-server-to-sql.html" target="_blank">How to migrate SQL Server database to SQL Azure database by using the generate script wizard</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/18/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/18/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/18/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=18&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/02/08/microsoft-azure-vs-google-apps-vs-amazon-%e2%80%93-your-choice/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>
	</item>
		<item>
		<title>Windows Azure Walkthrough: Table Storage</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/01/29/windows-azure-walkthrough-table-storage/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/01/29/windows-azure-walkthrough-table-storage/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 09:48:13 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Microsoft Azure]]></category>
		<category><![CDATA[Microsoft azure storage]]></category>
		<category><![CDATA[Tablestorage]]></category>
		<category><![CDATA[window azure table storage]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=15</guid>
		<description><![CDATA[  This walkthrough covers what I found to be the simplest way to get a sample up and running on Windows Azure that uses the Table Storage Service. It is not trying to be comprehensive or trying to dive deep in the technology, it just serves as an introduction to how the Table Storage Service [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=15&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p> </p>
<p>This walkthrough covers what I found to be the simplest way to get a sample up and running on Windows Azure that uses the Table Storage Service. It is not trying to be comprehensive or trying to dive deep in the technology, it just serves as an introduction to how the Table Storage Service works.</p>
<p>Please take the <a href="http://msdn.microsoft.com/en-us/library/dd203059.aspx">Quick Lap Around the Tools</a> before doing this walkthrough.</p>
<p><strong>Note</strong>: The code for this walkthrough is attached, you will still have to add and reference the Common and StorageClient projects from the Windows Azure SDK.</p>
<p>After you have completed this walkthrough, you will have a Web Role that is a simple ASP.Net Web Application that shows a list of Contacts and allows you to add to and delete from that list. Each contact will have simplified information: just a name and an address (both strings).</p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/image_2.png"></a></p>
<p><strong>Table Storage Concepts</strong></p>
<p>The Windows Azure Table Storage Services provides queryable structured storage. Each account can have 0..n tables.</p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/image_6.png"></a></p>
<p><strong>Design of the Sample</strong></p>
<p>When a request comes in to the UI, it makes its way to the Table Storage Service as follows (click for larger size):</p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/clip_image002_2.gif"></a></p>
<p>The UI class (the aspx page and it’s code behind) is data bound through an ObjectDataSource to the SimpleTableSample_WebRole.ContactDataSource which creates the connection to the Table Storage service gets the list of Contacts and Inserts to, and Deletes from, the Table Storage.</p>
<p>The SimpleTableSample_WebRole.ContactDataModel class acts as the data model object and the SimpleTableSample_WebRole.ContactDataServiceContext derives from TableStorageDataServiceContext which handles the authentication process and allows you to write LINQ queries, insert, delete and save changes to the Table Storage service.</p>
<p><strong>Creating the Cloud Service Project</strong></p>
<p>1. Start Visual Studio as an administrator</p>
<p>2. Create a new project: File à New à Project</p>
<p>3. Select “Web Cloud Service”. This will create the Cloud Service Project and an ASP.Net Web Role. Call it “SimpleTableSample”</p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/image_12.png"></a></p>
<p>4. Find the installation location of the Windows Azure SDK. By default this will be: C:\Program Files\Windows Azure SDK\v1.0</p>
<p>a. Find the file named “samples.zip”</p>
<p>b. Unzip this to a writeable location</p>
<p>5. From the samples you just unzipped, add the StorageClient\Lib\StorageClient.csproj and HelloFabric\Common\Common.csproj to your solution by right-clicking on the solution in Solution Explorer and selecting Add à Existing Project.</p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/image_14.png"></a></p>
<p>a. Common and StorageClient and libraries that are currently distributed as samples that provide functionality to help you build Cloud Applications. Common adds Access to settings and logging while StorageClient provides helpers for using the storage services.</p>
<p>6. From your Web Role, add references to the Common and StorageClient projects you just added along with a reference to System.Data.Services.Client</p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/image_16.png"></a></p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/image_18.png"></a></p>
<p>7. Add a ContactDataModel class to your Web Role that derives from TableStorageEntity. For simplicity, we’ll just assign a new Guid as the PartitionKey to ensure uniqueness. This default of assigning the PartitionKey and setting the RowKey to a hard coded value (String.Empty) gives the storage system the freedom to distribute the data.</p>
<p>using Microsoft.Samples.ServiceHosting.StorageClient;</p>
<p>public class ContactDataModel : TableStorageEntity</p>
<p>{</p>
<p>    public ContactDataModel(string partitionKey, string rowKey)</p>
<p>        : base(partitionKey, rowKey)</p>
<p>    {</p>
<p>    }</p>
<p>    public ContactDataModel()</p>
<p>        : base()</p>
<p>    {</p>
<p>        PartitionKey = Guid.NewGuid().ToString();</p>
<p>        RowKey = String.Empty;</p>
<p>    }</p>
<p>    public string Name</p>
<p>    {</p>
<p>        get;</p>
<p>        set;</p>
<p>    }</p>
<p>    public string Address</p>
<p>    {</p>
<p>        get;</p>
<p>        set;</p>
<p>    }</p>
<p>}</p>
<p>8. Now add the ContactDataServiceContext to the Web Role that derives from TableStorageDataServiceContext.</p>
<p>a. We’ll use this later to write queries, insert, remove and save changes to the table storage.</p>
<p>using Microsoft.Samples.ServiceHosting.StorageClient;</p>
<p>internal class ContactDataServiceContext : TableStorageDataServiceContext</p>
<p>{</p>
<p>    internal ContactDataServiceContext(StorageAccountInfo accountInfo)</p>
<p>        : base(accountInfo)</p>
<p>    {</p>
<p>    }</p>
<p>    internal const string ContactTableName = &#8220;ContactTable&#8221;;</p>
<p>    public IQueryable&lt;ContactDataModel&gt; ContactTable</p>
<p>    {</p>
<p>        get</p>
<p>        {</p>
<p>            return this.CreateQuery&lt;ContactDataModel&gt;(ContactTableName);</p>
<p>        }</p>
<p>    }</p>
<p>}</p>
<p>9. Next add a ContactDataSource class. We&#8217;ll fill this class out over the course of the next few steps.  This is the class the does all the hookup between the UI and the table storage service. Starting with the first part of the constructor, a StorageAccountInfo class is instantiated in order to get the settings required to make a connection to the Table Storage Service. (note that this is just the first part of the constructor code, the rest is in step 12)</p>
<p>using Microsoft.Samples.ServiceHosting.StorageClient;</p>
<p>using System.Data.Services.Client;</p>
<p>public class ContactDataSource</p>
<p>{</p>
<p>    private ContactDataServiceContext _ServiceContext = null;</p>
<p>    public ContactDataSource()</p>
<p>    {</p>
<p>        // Get the settings from the Service Configuration file</p>
<p>        StorageAccountInfo account =<br />
        StorageAccountInfo.GetDefaultTableStorageAccountFromConfiguration();</p>
<p>10. In order for the StorageAccountInfo class to find the configuration settings, open up ServiceDefinition.csdef and add the following to &lt;WebRole/&gt;. These define the settings.</p>
<p>    &lt;ConfigurationSettings&gt;</p>
<p>      &lt;Setting name=&#8221;AccountName&#8221;/&gt;</p>
<p>      &lt;Setting name=&#8221;AccountSharedKey&#8221;/&gt;</p>
<p>      &lt;Setting name=&#8221;TableStorageEndpoint&#8221;/&gt;</p>
<p>    &lt;/ConfigurationSettings&gt; </p>
<p>11. Likewise, add the actual local development values to the ServiceConfiguration.cscfg file. Note that the settings between both files have to match exactly otherwise your Cloud Service will not run.</p>
<ul>
<li>When you run in the Cloud, the AccountName and AccountSharedKey will be set to the values you will get back from the Portal for your account. The TableStorageEndpoint will be set the URL for the Table Storage Service: <a href="http://table.core.windows.net/">http://table.core.windows.net</a></li>
<li>Because these are set in the ServiceConfiguration.cscfg file, these values can be updated even after deploying to the cloud by uploading a new Service Configuration.</li>
<li>For the local development case, the local host and port 10002 (by default) will be used as the Table Storage Endpoint. The AccountName and AccountSharedKey are hard coded to a value that the Development Storage service is looking for (it’s the same for all 3, Table, Blob and Queue services).</li>
</ul>
<p>    &lt;ConfigurationSettings&gt;</p>
<p>      &lt;Setting name=&#8221;AccountName&#8221; value=&#8221;devstoreaccount1&#8243;/&gt;</p>
<p>      &lt;Setting name=&#8221;AccountSharedKey&#8221;<br />
        value=&#8221;Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==&#8221;/&gt;</p>
<p>      &lt;Setting name=&#8221;TableStorageEndpoint&#8221;<br />
        value=&#8221;<a href="http://127.0.0.1:10002/%22%3E%3C/A%3E">http://127.0.0.1:10002/</a><a href="http://127.0.0.1:10002/%22%3E%3C/A%3E">&#8220;/&gt;</a><br />
    &lt;/ConfigurationSettings&gt;</p>
<p>12. Next, continue to fill out the constructor (just after the call to GetDefaultTableStorageAccountFromConfiguration ()) by instantiating the ContactDataServiceContext. Set the RetryPolicy that applies only to the methods on the DataServiceContext (i.e. SaveChanges() and not the query. )</p>
<p>    // Create the service context we&#8217;ll query against</p>
<p>    _ServiceContext = new ContactDataServiceContext(account);</p>
<p>    _ServiceContext.RetryPolicy = RetryPolicies.RetryN(3, TimeSpan.FromSeconds(1));</p>
<p>}</p>
<p>13. We need some code to ensure that the tables we rely on get created.  We&#8217;ll do this on first request to the web site &#8212; which can be done by adding code to one of the handlers in the global application class.  Add a global application class by right clicking on the web role and selecting Add -&gt; New Item -&gt; Global Application Class. (see <a href="http://blog.smarx.com/posts/try-to-create-tables-only-once">this post</a> for more information)</p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/WindowsAzureWalkthroughSimpleTableStorag_FE2E/image_2.png"></a></p>
<p>14. Add the following code to global.asax.cs to create the tables on first request:</p>
<p>using Microsoft.Samples.ServiceHosting.StorageClient;</p>
<p>protected void Application_BeginRequest(object sender, EventArgs e)</p>
<p>{</p>
<p>    HttpApplication app = (HttpApplication)sender;</p>
<p>    HttpContext context = app.Context;</p>
<p>    // Attempt to peform first request initialization</p>
<p>    FirstRequestInitialization.Initialize(context);</p>
<p>}</p>
<p>And the implementation of the FirstRequestInitialization class:</p>
<p>internal class FirstRequestInitialization</p>
<p>{</p>
<p>    private static bool s_InitializedAlready = false;</p>
<p>    private static Object s_lock = new Object();</p>
<p>    // Initialize only on the first request</p>
<p>    public static void Initialize(HttpContext context)</p>
<p>    {</p>
<p>        if (s_InitializedAlready)</p>
<p>        {</p>
<p>            return;</p>
<p>        }</p>
<p>        lock (s_lock)</p>
<p>        {</p>
<p>            if (s_InitializedAlready)</p>
<p>            {</p>
<p>                return;</p>
<p>            }</p>
<p>            ApplicationStartUponFirstRequest(context);</p>
<p>            s_InitializedAlready = true;</p>
<p>        }</p>
<p>    }</p>
<p>    private static void ApplicationStartUponFirstRequest(HttpContext context)</p>
<p>    {</p>
<p>        // This is where you put initialization logic for the site.</p>
<p>        // RoleManager is properly initialized at this point.</p>
<p>        // Create the tables on first request initialization as there is a performance impact</p>
<p>        // if you call CreateTablesFromModel() when the tables already exist. This limits the exposure of</p>
<p>        // creating tables multiple times.</p>
<p>        // Get the settings from the Service Configuration file</p>
<p>        StorageAccountInfo account = StorageAccountInfo.GetDefaultTableStorageAccountFromConfiguration();</p>
<p>        // Create the tables</p>
<p>        // In this case, just a single table. </p>
<p>        // This will create tables for all public properties that are IQueryable (collections)</p>
<p>        TableStorage.CreateTablesFromModel(typeof(ContactDataServiceContext), account);</p>
<p>    }</p>
<p>}</p>
<p>15. When running in the real cloud, this code is all that is needed to create the tables for your Cloud Service. The TableStorage class reflects over the ContactDataServiceContext classs and creates a table for each IQueryable&lt;T&gt; property where the columns of that table are based on the properties of the type T of the IQueryable&lt;T&gt;.</p>
<p>a. There is a bit more to do in order to get this to work in the local Development Storage case, more on that later.</p>
<p>16. At this point, it’s just a matter of filling out the ContactDataSource class with methods to query for the data, insert and delete rows. This is done through LINQ and using the ContactDataServiceContext.</p>
<p>a. Note: in the Select() method, the TableStorageDataServiceQuery&lt;T&gt; class enables you to have finer grained control over how you get the data.</p>
<p>i. Execute() or ExecuteWithRetries() will access the data store and return up to the first 1000 elements.</p>
<p>ii. ExecuteAll() or ExecuteAllWithRetries() will return all of the elements with continuation as you enumerate over the data.</p>
<p>iii. ExecuteWithRetries() and ExecuteAllWithRetries() uses the retry policy set on the ContactDataServiceContext for the queries.</p>
<p>b. Note: the use of AttachTo() in the Delete() method to connect to and remove the row.</p>
<p>public IEnumerable&lt;ContactDataModel&gt; Select()</p>
<p>{</p>
<p>    var results = from c in _ServiceContext.ContactTable</p>
<p>                  select c;</p>
<p>    TableStorageDataServiceQuery&lt;ContactDataModel&gt; query =<br />
        new TableStorageDataServiceQuery&lt;ContactDataModel&gt;(results as DataServiceQuery&lt;ContactDataModel&gt;);</p>
<p>    IEnumerable&lt;ContactDataModel&gt; queryResults = query.ExecuteAllWithRetries();</p>
<p>    return queryResults;</p>
<p>}</p>
<p>public void Delete(ContactDataModel itemToDelete)</p>
<p>{</p>
<p>    _ServiceContext.AttachTo(ContactDataServiceContext.ContactTableName, itemToDelete, &#8220;*&#8221;);</p>
<p>    _ServiceContext.DeleteObject(itemToDelete);</p>
<p>    _ServiceContext.SaveChanges();</p>
<p>}</p>
<p>public void Insert(ContactDataModel newItem)</p>
<p>{</p>
<p>    _ServiceContext.AddObject(ContactDataServiceContext.ContactTableName, newItem);</p>
<p>    _ServiceContext.SaveChanges();</p>
<p>}</p>
<p>17. The UI is defined in the aspx page and consists of 3 parts. The GridView which will display all of the rows of data, the FormView which allows the user to add rows and the ObjectDataSource which databinds the UI to the ContactDataSource.</p>
<p>18. The GridView is placed after the first &lt;div&gt;. Note that in this sample, we’ll just auto-generate the columns and show the delete button. The DataSourceId is set the ObjectDataSource which will be covered below.</p>
<p>    &lt;asp:GridView</p>
<p>        id=&#8221;contactsView&#8221;</p>
<p>        DataSourceId=&#8221;contactData&#8221;</p>
<p>        DataKeyNames=&#8221;PartitionKey&#8221;</p>
<p>        AllowPaging=&#8221;False&#8221;</p>
<p>        AutoGenerateColumns=&#8221;True&#8221;</p>
<p>        GridLines=&#8221;Vertical&#8221;</p>
<p>        Runat=&#8221;server&#8221;</p>
<p>        BackColor=&#8221;White&#8221; ForeColor=&#8221;Black&#8221;</p>
<p>        BorderColor=&#8221;#DEDFDE&#8221; BorderStyle=&#8221;None&#8221; BorderWidth=&#8221;1px&#8221; CellPadding=&#8221;4&#8243;&gt;</p>
<p>        &lt;Columns&gt;</p>
<p>            &lt;asp:CommandField ShowDeleteButton=&#8221;true&#8221;  /&gt;</p>
<p>        &lt;/Columns&gt;</p>
<p>        &lt;RowStyle BackColor=&#8221;#F7F7DE&#8221; /&gt;</p>
<p>        &lt;FooterStyle BackColor=&#8221;#CCCC99&#8243; /&gt;</p>
<p>        &lt;PagerStyle BackColor=&#8221;#F7F7DE&#8221; ForeColor=&#8221;Black&#8221; HorizontalAlign=&#8221;Right&#8221; /&gt;</p>
<p>        &lt;SelectedRowStyle BackColor=&#8221;#CE5D5A&#8221; Font-Bold=&#8221;True&#8221; ForeColor=&#8221;White&#8221; /&gt;</p>
<p>        &lt;HeaderStyle BackColor=&#8221;#6B696B&#8221; Font-Bold=&#8221;True&#8221; ForeColor=&#8221;White&#8221; /&gt;</p>
<p>        &lt;AlternatingRowStyle BackColor=&#8221;White&#8221; /&gt;</p>
<p>    &lt;/asp:GridView&gt;   </p>
<p>19. The Form view to add rows is really simple, just labels and text boxes with a button at the end to raise the “Insert” command. Note that the DataSourceID is again set to the ObjectDataProvider and there are bindings to the Name and Address.</p>
<p>    &lt;br /&gt;       </p>
<p>    &lt;asp:FormView</p>
<p>        id=&#8221;frmAdd&#8221;</p>
<p>        DataSourceId=&#8221;contactData&#8221;</p>
<p>        DefaultMode=&#8221;Insert&#8221;</p>
<p>        Runat=&#8221;server&#8221;&gt;</p>
<p>        &lt;InsertItemTemplate&gt;</p>
<p>            &lt;asp:Label</p>
<p>                    id=&#8221;nameLabel&#8221;</p>
<p>                    Text=&#8221;Name:&#8221;</p>
<p>                    AssociatedControlID=&#8221;nameBox&#8221;</p>
<p>                    Runat=&#8221;server&#8221; /&gt;</p>
<p>            &lt;asp:TextBox</p>
<p>                    id=&#8221;nameBox&#8221;</p>
<p>                    Text=&#8217;&lt;%# Bind(&#8220;Name&#8221;) %&gt;&#8217;</p>
<p>                    Runat=&#8221;server&#8221; /&gt;</p>
<p>            &lt;br /&gt;</p>
<p>            &lt;asp:Label</p>
<p>                    id=&#8221;addressLabel&#8221;</p>
<p>                    Text=&#8221;Address:&#8221;</p>
<p>                    AssociatedControlID=&#8221;addressBox&#8221;</p>
<p>                    Runat=&#8221;server&#8221; /&gt;</p>
<p>            &lt;asp:TextBox</p>
<p>                    id=&#8221;addressBox&#8221;</p>
<p>                    Text=&#8217;&lt;%# Bind(&#8220;Address&#8221;) %&gt;&#8217;</p>
<p>                    Runat=&#8221;server&#8221; /&gt;</p>
<p>            &lt;br /&gt;</p>
<p>            &lt;asp:Button</p>
<p>                    id=&#8221;insertButton&#8221;</p>
<p>                    Text=&#8221;Add&#8221;</p>
<p>                    CommandName=&#8221;Insert&#8221;</p>
<p>                    Runat=&#8221;server&#8221;/&gt;</p>
<p>        &lt;/InsertItemTemplate&gt;</p>
<p>    &lt;/asp:FormView&gt;</p>
<p>20. The final part of the aspx is the definition of the ObjectDataSource. See how it ties the ContactDataSource and the ContactDataModel together with the GridView and FormView.</p>
<p>    &lt;%&#8211; Data Sources &#8211;%&gt;</p>
<p>    &lt;asp:ObjectDataSource runat=&#8221;server&#8221; ID=&#8221;contactData&#8221;<br />
        TypeName=&#8221;SimpleTableSample_WebRole.ContactDataSource&#8221;</p>
<p>        DataObjectTypeName=&#8221;SimpleTableSample_WebRole.ContactDataModel&#8221;</p>
<p>        SelectMethod=&#8221;Select&#8221; DeleteMethod=&#8221;Delete&#8221; InsertMethod=&#8221;Insert&#8221;&gt;   </p>
<p>    &lt;/asp:ObjectDataSource&gt;</p>
<p>21. Build. You should not have any compilation errors, all 4 projects in the solution should build successfully.</p>
<p>22. Create Test Storage Tables. As mentioned in step 15, creating tables in the Cloud is all done programmatically, however there is an additional step that is needed in the local Development Storage case.</p>
<p>a. In the local development case, tables need to be created in the SQL Express database that the local Development Storage uses for its storage. These need to correspond exactly to the runtime code. This is due to a current limitation in the local Development Storage.</p>
<p>b. Right click on the Cloud Service node in Solution Explorer named “Create Test Storage Tables” that runs a tool that uses reflection to create the tables you need in a SQL Express database whose name corresponds to your Solution name.</p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/image_20.png"></a></p>
<p>i. ContactDataServiceContext is the type that the tool will look for and use to create those tables on your behalf.</p>
<p>ii. Each IQueryable&lt;T&gt; property on ContactDataServiceContext will have a table created for it where the columns in that table will correspond to the public properties of the type T of the IQueryable&lt;T&gt;.</p>
<p>23. F5 to debug. You will see the app running in the Development Fabric using the Table Development Storage</p>
<p><a href="http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/image_4.png"></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/15/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/15/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/15/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=15&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/01/29/windows-azure-walkthrough-table-storage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>
	</item>
		<item>
		<title>Failed to initialize the Development Storage service</title>
		<link>http://cloudcomputinghub.wordpress.com/2010/01/29/failed-to-initialize-the-development-storage-service/</link>
		<comments>http://cloudcomputinghub.wordpress.com/2010/01/29/failed-to-initialize-the-development-storage-service/#comments</comments>
		<pubDate>Fri, 29 Jan 2010 07:52:01 +0000</pubDate>
		<dc:creator>manasranjansahu</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Microsoft Azure]]></category>
		<category><![CDATA[Windows Azure CTP]]></category>
		<category><![CDATA[Failed to initialize the Development Storage]]></category>

		<guid isPermaLink="false">http://cloudcomputinghub.wordpress.com/?p=11</guid>
		<description><![CDATA[Problem :- Due to some reasons, i reinstalled all the azure setup beginning from the SQL server. But when i try to debug(F5) a very basic HelloWorld application after building the solution, Getting a dialog box saying: &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; Microsoft Visual Studio &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; Windows Azure Tools for Microsoft Visual Studio CTP Failed to initialize the Development [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=11&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Problem :-</strong></p>
<p>Due to some reasons, i reinstalled all the azure setup beginning from the SQL server. But when i try to debug(F5) a very basic HelloWorld application after building the solution, Getting a dialog box saying:<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
Microsoft Visual Studio<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>Windows Azure Tools for Microsoft Visual Studio CTP</p>
<p>Failed to initialize the Development Storage service.</p>
<p>Even i can&#8217;t see the Development Fabric Icon in the Task Bar items at this time<br />
<strong>Answer :-</strong></p>
<p> This scenario happens when your SQL&#8217;s default instance name is not SQLEXPRESS. Because Azure SDK searches for this instance by defualt.</p>
<p> So when this instance name is not found development Fabric doesn&#8217;t initializes.</p>
<p>Solution :-</p>
<p>1. Open Azure Sdk command prompt</p>
<p>2.     type DSInit /sqlinstance:&lt;your sql instance name&gt; press enter.<br />
3. This utility opens up a small window and show the progress. this will automatically create three Ports for blob, queue and Tables. and create the Development  storage DB.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cloudcomputinghub.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cloudcomputinghub.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cloudcomputinghub.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cloudcomputinghub.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cloudcomputinghub.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cloudcomputinghub.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cloudcomputinghub.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cloudcomputinghub.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cloudcomputinghub.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cloudcomputinghub.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cloudcomputinghub.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cloudcomputinghub.wordpress.com/11/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cloudcomputinghub.wordpress.com/11/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cloudcomputinghub.wordpress.com/11/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cloudcomputinghub.wordpress.com&amp;blog=11704943&amp;post=11&amp;subd=cloudcomputinghub&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cloudcomputinghub.wordpress.com/2010/01/29/failed-to-initialize-the-development-storage-service/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/25739066bfe1426bf0ffb193eb5c804a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">manasranjansahu</media:title>
		</media:content>
	</item>
	</channel>
</rss>
