Sharing some bits that I found interesting during the last week while reading about cloud computing.
This is a nice video on the hardware used in Microsoft latest generation datacenters. It is really inspiring to see hardware and software innovations creating extremely elastics environments opening up a world of new opportunities.
You want strongly types blob IO on Windows Azure Storage? Check this out: http://lokadcloud.codeplex.com/
WOW! Do you wonder what Project Dallas is all about? It’s the Data Grail: http://blogs.msdn.com/dallas/archive/2010/03/24/the-data-grail.aspx
This took only a few minutes to create using “Dallas” and Tableau Public.
I spoke at CloudStorm Antwerp this week. Slides and pictures will be made available here later: http://www.cloudstorm.org/pages/viewpage.action?pageId=19628848
I was really inspired by the Kai-Mook baby Elephant case. This is a marketing story about a campaign the zoo ran when a baby elephant was born. Cool stuff.
Of course this event lent itself extremely well to make use of the public cloud:
- It was very unpredictable when the birth would happen. Then knew they had a window of about 6 months. - It wasn’t even sure the birth would happen. There was a chance of about 50% the baby would be born dead. - They weren’t sure how popular/successful the campaign would be. They expected to have a need for 20 virtual machines in the Amazon cloud but the campaign ended up being so successful that at one point in time they were using 180+ machines. - After the peak the scaled back to a much lower number
- It was very unpredictable when the birth would happen. Then knew they had a window of about 6 months.
- It wasn’t even sure the birth would happen. There was a chance of about 50% the baby would be born dead.
- They weren’t sure how popular/successful the campaign would be. They expected to have a need for 20 virtual machines in the Amazon cloud but the campaign ended up being so successful that at one point in time they were using 180+ machines.
- After the peak the scaled back to a much lower number
Also the questions from the audience were very interesting. Most of the debate was about cloud vendor lock in. Every vendor has to deal with that all of the time. It is not a new concern. I think about it this way:
- Standards are important and at Microsoft we are fully engaged in developing the necessary standards.
- There hasn’t been a major way of innovation that started with developing standards, though. First vendors compete to be best of breed and then standards arise based on the requirements customers communicate to the vendors.
- Interoperability and openness of a platform go a long way to dealing with these concerns. Windows Azure for instance lets you run .NET code but also Java code, native code etc… It uses rest protocols for communication and so on… This openness is as important as standards.
As always it was very inspiring to be there.
See you next week at TechDays or on my blog.
Hans
I found this nice overview of sessions to follow here (http://blogs.msdn.com/billzack/archive/2010/03/13/windows-azure-platform-training-roadmap.aspx). I’m copying the links from that post.
Level 100 – Basic After completing the units recommended for this level, you should be able to articulate the Microsoft strategy for the Windows Azure Platform and the value proposition it brings to you. Windows Azure Windows Azure Fundamentals (.75h) Windows Azure AppFabric Windows Azure Platform: Azure AppFabric Fundamentals (.75h) SQL Azure Microsoft SQL Azure Overview (.75h) Level 200 – Intermediate After completing the units recommended for this level, you should be able to describe the architecture of the Windows Azure Platform, have an understanding of its capabilities and limitations, and understand its deployment scenarios and requirements. Windows Azure Developing a Windows Azure Application (1h) Service Bus Windows Azure Platform: Introducing the Service Bus (.5h) SQL Azure Microsoft SQL Azure Overview for Developers (.75h) In addition: Download the Windows Azure Platform Training Kit (Hands on Labs) Download the Windows Azure Tools for Microsoft Visual Studio View PDC 2009 Azure videos Level 300 – Advanced After completing the units recommended for this level, you should be able to build, deploy and troubleshoot solutions based on the Windows Azure platform. Windows Azure Windows Azure Blob & Table Storage (1h) Windows Azure – Worker Roles and Queue Storage (1h) Windows Azure AppFabric Windows Azure Platform: the Access Control Service (.5h) SQL Azure Microsoft SQL Azure RDBMS Support (.5h) SQL Azure Programmability (.5h) Microsoft SQL Azure tooling (.5h) SQL Azure Security Model (.5h)
After completing the units recommended for this level, you should be able to articulate the Microsoft strategy for the Windows Azure Platform and the value proposition it brings to you.
Windows Azure Windows Azure Fundamentals (.75h)
Windows Azure AppFabric Windows Azure Platform: Azure AppFabric Fundamentals (.75h)
SQL Azure Microsoft SQL Azure Overview (.75h)
After completing the units recommended for this level, you should be able to describe the architecture of the Windows Azure Platform, have an understanding of its capabilities and limitations, and understand its deployment scenarios and requirements.
Windows Azure Developing a Windows Azure Application (1h)
Service Bus Windows Azure Platform: Introducing the Service Bus (.5h)
SQL Azure Microsoft SQL Azure Overview for Developers (.75h)
In addition:
Download the Windows Azure Platform Training Kit (Hands on Labs)
Download the Windows Azure Tools for Microsoft Visual Studio
View PDC 2009 Azure videos
After completing the units recommended for this level, you should be able to build, deploy and troubleshoot solutions based on the Windows Azure platform.
Windows Azure Windows Azure Blob & Table Storage (1h)
Windows Azure – Worker Roles and Queue Storage (1h)
Windows Azure AppFabric Windows Azure Platform: the Access Control Service (.5h)
SQL Azure Microsoft SQL Azure RDBMS Support (.5h)
SQL Azure Programmability (.5h)
Microsoft SQL Azure tooling (.5h)
SQL Azure Security Model (.5h)
Other Yes, Microsoft and Open Source meet also in the cloud! http://geekcast.fm/archives/cloud-computing-with-windows-azure-cory-fowler-interview/?utm_source=AzureMagic&utm_medium=twitter
Yes, Microsoft and Open Source meet also in the cloud! http://geekcast.fm/archives/cloud-computing-with-windows-azure-cory-fowler-interview/?utm_source=AzureMagic&utm_medium=twitter
Check out AppFabrik LABS: https://portal.appfabriclabs.com AppFabric Labs is a place for us to preview cool new AppFabric technologies for interested customers. We're very excited about the features we put up on Labs, so we want to get your feedback on them as soon as possible. Labs is a developer preview, not a full commercial release, so there is no formal support or SLA in place.
Power of the great cloud providers is that they can go where taxes are low :-) http://www.datacenterknowledge.com/archives/2010/03/18/washington-data-center-tax-break-passes/?utm-source=AzureMagic&utm-medium=twitter
Every Cloud Computer has a Silver Lining http://blog.kitetail.com/2010/03/14/every-cloud-computer-has-a-silver-lining/?utm_source=AzureMagic&utm_medium=twitter
I’m repeating this post for some our Belgian ISV’s in the Healthcare vertical.
Hear about the requirements and the architecture of this app in the video. Or check out the case study you can read. All is referenced in this blog post:
http://blogs.msdn.com/innov8showcase/archive/2010/03/14/arcast-tv-ihi-shines-silverlight-on-healthcare-improvement.aspx
I really enjoyed reading the Socratic Dialectic in the RDBMS vs NoSQL post on ‘the codeface’ blog. SUPER stuff!!!http://blog.markrendle.net/2010/03/do-you-need-relational-database.html Yes, you have NoSQL from Microsoft. Just look at Windows Azure Storage. But sometimes it makes more sense to go to SQL Server for functional or business reasons. But remember, it all depends and even the cost comparison should be made with care:
I would have a hard time justifying the time and money required for our developers to learn the new skills. Then again, in the cloud the NoSQL storage can be much, much cheaper than the RDBMS. For example, Windows Azure storage costs $0.15 per gigabyte per month, whereas a 1GB SQL Azure instance is $9.99 per month; 10GB is $99.99 per month. So Windows Azure storage is cheaper than SQL Azure storage? Not necessarily. With Windows Azure Storage you also pay for transactions, at the rate of $0.01 for every ten thousand. SQL Azure doesn't charge for transactions. So if you're storing less than a gigabyte but running more than ten million transactions per month, SQL Azure would be cheaper. Or if you're storing less than ten gigabytes but running more than a hundred million transactions-
I would have a hard time justifying the time and money required for our developers to learn the new skills.
Then again, in the cloud the NoSQL storage can be much, much cheaper than the RDBMS. For example, Windows Azure storage costs $0.15 per gigabyte per month, whereas a 1GB SQL Azure instance is $9.99 per month; 10GB is $99.99 per month.
So Windows Azure storage is cheaper than SQL Azure storage?
Not necessarily. With Windows Azure Storage you also pay for transactions, at the rate of $0.01 for every ten thousand. SQL Azure doesn't charge for transactions. So if you're storing less than a gigabyte but running more than ten million transactions per month, SQL Azure would be cheaper. Or if you're storing less than ten gigabytes but running more than a hundred million transactions-
Do you prefer to read a book, check out Cloud Computing with the Windows Azure Platform. Some sample chapters are available here:
Chapter 12: “Managing SQL Azure Accounts and Databases” Chapter 13: “Exploiting SQL Azure Database's Relational Features”
Chapter 12: “Managing SQL Azure Accounts and Databases”
Chapter 13: “Exploiting SQL Azure Database's Relational Features”
A non-exhaustive list of things to consider: If constant consistency is a key requirement then you should probably use an RDBMS. If horizontal scalability is important and eventual consistency is good enough, then a NoSQL solution might be better. If you're deploying an application to Windows Azure or Amazon Web Services, then you should probably compare the costs of Windows Azure Storage Services or SimpleDB to SQL Azure or Elastic RDBMS for your particular application. If you're writing an application for a mobile platform, you're back to limited storage space so you might get back to RDBMS and normalising for efficient use of that space. If you're writing a small application you want to knock out quickly using Entity Framework or NHibernate or ActiveRecord then use SQL Server Compact or SQLite, or skip that stuff altogether and serialise object graphs to files on the hard-disk
Here’s a webcast with Ben Riga about the lessons learned from the Windows Azure implementation at RiskMetrics: http://www.ditii.com/2010/03/10/windows-azure-lessons-learned-riskmetrics-with-ben-riga-webcast/
Azure also seems to be taking of in India: http://economictimes.indiatimes.com/Infotech/Software/Microsoft-unveils-cloud-based-operating-system-in-India/articleshow/5660938.cms?utm_source=AzureMagic&utm_medium=twitter
The company claims to have over 3,000 applications developed from India that are currently hosted on the cloud platform. It already claims to have about 250 small and medium-sized customers in India. There are about 22,000 developers from India who are making applications on the Azure platform. Companies like Infosys, HCL Technologies, Persistent Software, Wings Info, Cerebrate and CDC Software are developing commercial applications and solutions on Windows Azure platform.
Here’s a great article by David Linthicum: http://www.infoworld.com/d/cloud-computing/3-cloud-computing-mistakes-you-can-avoid-today-895
1. Not considering a public cloud 2. Security and governance as afterthoughts 3. No continuation of business strategy
1. Not considering a public cloud
2. Security and governance as afterthoughts
3. No continuation of business strategy
http://www.zhen.org/zen20/category/cloud-computing/
On this blog Jian Zhen discussed the thousand faces of Cloud Computing in 4 parts (1, 2, 3 and 4.) Although from mid last year, still worth reading. For instance this piece: One large enterprise has outsourced their test and development environments to an outsourcer, and paying approximately $10,000 per environment per year, regardless of whether the resources are virtual or physical. They have 3000 such environments, so they are essentially paying $30 million per year on just test and development environments. They did a user survey to find out the utilization of these environments, and all the developers responded saying that these environments are heavily utilized and there’s tight handoff from one team to another. An audit, however, revealed that overall, the environments are utilized < 10%, and that 70% of the environments are logged into once per year by developers.
On this blog Jian Zhen discussed the thousand faces of Cloud Computing in 4 parts (1, 2, 3 and 4.) Although from mid last year, still worth reading. For instance this piece:
One large enterprise has outsourced their test and development environments to an outsourcer, and paying approximately $10,000 per environment per year, regardless of whether the resources are virtual or physical. They have 3000 such environments, so they are essentially paying $30 million per year on just test and development environments. They did a user survey to find out the utilization of these environments, and all the developers responded saying that these environments are heavily utilized and there’s tight handoff from one team to another. An audit, however, revealed that overall, the environments are utilized < 10%, and that 70% of the environments are logged into once per year by developers.
http://www.developforwindows.com/
Some cool sample applications can be found on this site that will most certainly help a lot with getting started. Also tookits are downloadable from this page!
Do you want to access, manage and interact with your Facebook account quickly and directly from your desktop? Fishbowl is a cool Windows Client WPF app that does exactly that by providing a richer and more powerful experience.
Have you ever needed to memorize words in a new language, or names of certain people or objects? If so, now you can use FlashCards.Show to easily produce decks of flashcards — making learning easier and fun!
Enjoy!
This week was a pretty exciting week for those following the ventures of Microsoft into cloud computing. If you didn’t see the talk online, I recommend watching it on demand: http://www.microsoft.com/presspass/presskits/cloud/videogallery.aspx
Our new site covering all things cloud is http://www.microsoft.com/cloud
And I do love the new theme: We’re all in. Windows is in, Office is in, SQL Server is in, SharePoint is in, and so on…
On the more technical side of things, it was great to see the Beta 2 of AppFabric being released. Here’s the announcement on the Windows Server blog: http://blogs.technet.com/windowsserver/
Tools continue to be built. Here’s another Windows Azure Storage Browser: http://clumsyleaf.com/products/cloudxplorer?utm_source=AzureMagic&utm_medium=twitter
This certainly sounds like a webcast signing up for:
March 26, 2010 at 1:00pm – 2:00pm EST Title: Windows Azure Design Patterns Link to Register: https://swrt.worktankseattle.com/webcast/4241/preview.aspx
Do you want your solution to shine at the Microsoft World Wide Partner Conference? Read this: http://blogs.msdn.com/windowsazure/archive/2010/03/03/submit-your-solution-for-the-windows-azure-platform-partner-of-the-year-award.aspx
For other Microsoft independent news, I would just like to focus on this definition from cloud computing from NIST (http://csrc.nist.gov/groups/SNS/cloud-computing/):
Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models. o 5 essential characteristics (on-demand self-service, resource pooling, elasticity, measured service, broad network access) o 3 service models (IAAS, PAAS and SAAS) o 4 deployment models (public cloud, private, community and hybrid cloud)
Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models.
o 5 essential characteristics (on-demand self-service, resource pooling, elasticity, measured service, broad network access)
o 3 service models (IAAS, PAAS and SAAS)
o 4 deployment models (public cloud, private, community and hybrid cloud)
I do believe this is one of the best definitions I have seen so far. Especially the 5-3-4 part is very strong.
See you next week!