Welcome to MSDN Blogs Sign in | Join | Help

Cost Oriented Architecture of Cloud Applications

As I was speaking to a group of customers few days ago, one question kept coming back - the impact of the architecture decisions on the monthly charges. The operational expenses of an application deployed to Cloud can be significantly impacted by the architecture decisions. Typical Cloud storage costs around $0.15/GB/month. Imagine if one decides to store all the web logs (for behavior tracking) in such a storage. one can pay huge monthly bill because of this decision.

Similarly, if an eCommerce  application uses huge product catalog like that of a consumer retail web site, the merchandizing process can leave lot of retired products in the storage; unless data archival strategy is part of the core architecture, the opex of the application can dramatically increase as the time progresses.

Same principle can be applied to the growth of the transactional information in Cloud based applications. The event streams (system, application, business) generated through the instrumentation can start adding to the monthly opex if the architecture does not take into the account the cost implications. One may be better off by streaming those events out to an on-premise BI and problem management systems so that you may be better off by paying one time egress charges than the perpetual monthly storage costs.

The above is quite different for on-premise operations as there are no usage based fees. The data archival strategy is often an afterthought than the core part of the architecture.

So an architect transforming from an on-premise system space to the Cloud environment, need to be aware of the impact of the architecture decisions on the monthly bill.

I don't mean to introduce a new term but I think "Cost Oriented Architecture" is a fitting term that can be described through a collection of principles that will help architects create better Cloud based systems optimized for opex.

Here are a few random thoughts about the Cost Oriented Architecture for the Cloud:

  • Archive your data to a less expensive storage
  • Check the temporal growth of the reference and transactional data
  • Weigh the impact of perpetual storage costs versus one time egress charges to stream the data out
  • Events streams (system, application, business) resulting form the operations can be piped back to the less expensive storage
  • For large eCommerce sites, the generated behavioral tracking data can have a huge impact on the monthly opex.
  • Compression of text payloads wherever possible
  • Trim the number of active web servers in a web farm based on the heuristics of the operations
  • Use batch transactions if the underlying storage supports such a feature

 

- Hanu

Silverlight ad publishing resources

Just come across a couple of nice resources for the creation and publishing of ads on Silverlight platform:

Download: Silverlight Advertising Creation Kit

Download: Silverlight Ad Publishing and Serving Guide

 

- Hanu

Posted by hanuk | 0 Comments

Advertising terminology on the Internet

Just found a great resource while doing a bit of research on the advertising terminology:

http://whatis.techtarget.com/definition/0,,sid9_gci211535,00.html#io

I am hoping to find this one day when I need it.

-Hanu

Posted by hanuk | 0 Comments

Windows Azure product team blogs

Here are the official Microsoft product team blogs for Windows Azure:

Window Azure: http://blogs.msdn.com/windowsazue

.NET Services: http://blogs.msdn.com/netservices

SQL Azure: http://blogs.msdn.com/ssds

 

- Hanu

Posted by hanuk | 0 Comments

Windows Azure Management API and .NET Services Update

Couple of new announcement from the Windows Azure team:

Windows Azure Management API: http://blogs.msdn.com/windowsazure/archive/2009/09/17/introducing-the-windows-azure-service-management-api.aspx

What will be in the .NET Services October CTP (which may closely resemble the production release): http://blogs.msdn.com/netservices/archive/2009/09/18/update-on-the-next-microsoft-net-services-ctp.aspx

- Hanu

Technorati Tags: ,,
Posted by hanuk | 0 Comments

Windows 7 legacy scanner support by VueScan

If you have an old scanner you can't let go, I recently come across this application VueScan that supports of loads old scanners.

- Hanu

Posted by hanuk | 0 Comments

How to do Silverlight push notifications?

Here is a nice  blog post on Silverlight PolingHttpPushBinding usage:

http://tomasz.janczuk.org/2009/09/scale-out-of-silverlight-http-polling.html.

 

-Hanu

Posted by hanuk | 0 Comments

Video card testing tools

I was on the phone with tech support for a laptop display issue and they pointed me to a nice set of tools to test the video card:

The video card temperature initially should be around 75 degrees Celsius and after 5 min of VideoCardStabilityTest.exe use,  it should not be above 95 degrees Celsius.

-Hanu

Posted by hanuk | 0 Comments

Internet Explorer 8 (IE8) Web Slice, Accelerator, Search Provider resources

I constantly receive questions about IE8 resources and thought that it is useful to aggregate them in a blog post:

 

IE8 Team Blog: http://blogs.msdn.com/ie/

Personalize IE8 through web services: http://blogs.msdn.com/ie/archive/2009/02/03/personalize-ie8-through-services.aspx

Visual Search Providers

i. Extend IE8 through Visual Search Providers  http://msdn.microsoft.com/en-us/library/cc891507(VS.85).aspx

ii. Search Suggestions Format: http://msdn.microsoft.com/en-us/library/cc891508(VS.85).aspx

Accelerators

i. IE 8 Search Accelerator Developer Guide: http://msdn.microsoft.com/en-us/library/cc289775(VS.85).aspx

ii. Open Service format specification for IE8 Accelerators: http://msdn.microsoft.com/en-us/library/cc304163(VS.85).aspx

Web Slices

i. Web Slice format specification: http://msdn.microsoft.com/en-us/library/cc304073(VS.85).aspx

ii. All about Web Slices: http://msdn.microsoft.com/en-us/library/cc956158(VS.85).aspx

iii. IE8 Web Slice guide: http://msdn.microsoft.com/en-us/library/cc848871(VS.85).aspx 

iv. Authenticated web slices: http://msdn.microsoft.com/en-us/library/dd565670(VS.85).aspx

v. How do I build a web slice (video): http://msdn.microsoft.com/en-us/ie/cc304683.aspx

vi. Step by step guide to create a web slice: http://blogs.msdn.com/giorgio/archive/2009/05/01/h1n1-flu-swine-flu-web-slice-step-by-step.aspx

IE8 Case studies

i. Popular IE8 services: http://www.ieaddons.com/en/popular/

ii. eBay IE8 services: http://ie8.ebay.com

iii. Amazon IE8 services: http://www.ieaddons.com/en/search/?search=amazon

iv. Wal-Mart IE8 services: http://www.ieaddons.com/en/search/?search=walmart

Hope this helps.

-Hanu

JDBC Driver for SQL Server 2008

I was researching on the availability of JDBC driver for SQL Server 2008 and found the following information:

  • JDBC Driver for SQL Server V 1.1 and 2.0 are the versions supported by Microsoft
  • JDBC driver for SQL Server 2008 runs on any JVM but is only supported by Microsoft on Sun Solaris, SUSE Linux, and Windows XP or later versions of Windows OS (it probably means Windows XP, Windows Server 2003, Windows Server 2008, Windows Vista). Not sure if it includes Windows 7 yet though.
  • The Microsoft SQL Server JDBC Driver has been tested against various major JEE application servers including BEA WebLogic, IBM WebSphere, and JBoss. Note that the version 1.2 of the JDBC driver is certified with IBM WebSphere 6.1.
  • The Microsoft SQL Server JDBC Driver is freely redistributable under a separate Redistribution License that requires registration. For more information, see Register for Microsoft SQL Server JDBC Driver Redistribution Rights.

 

The above are the excerpts of the JDBC Driver FAQ located at http://msdn.microsoft.com/en-us/data/cc325721.aspx

For detailed documentation visit:  Microsoft SQL Server JDBC Driver Documentation.

-Hanu

SQL Azure CTP announced

SQL-Azure Logo

 

SQL Azure Community Technology Preview (CTP) was announced on 8/18/2009; SQL Azure is a database in the Cloud that helps easy provisioning of relational databases to be used by Azure as well as on premise applications. Here is the excerpt from the SQL Azure blog (http://blogs.msdn.com/ssds/default.aspx) that mentions the editions and the respective price points:

"SQL Azure Database will be available as a free trial until the service goes live in November. SQL Azure Database will be available in two editions: Web Edition, which will include up to 1 GB of relational data, priced at $9.99 per month, and Business Edition, which will include up to 10 GB of data, priced at $99.99 per month."

Additional information on SQL Azure can be found at : http://www.microsoft.com/azure/sql.mspx.

Other SQL Azure resources:

  • SQL Azure Database Features Overview
  • SQL Azure Database Datasheet
  • Frequently Asked Questions
  • SQL Azure Database Labs
  • MSDN: SQL Azure Database Developer Center

    SQL Azure MSDN documentation can be found at http://msdn.microsoft.com/en-us/library/ee336279.aspx.

     

    - Hanu

  • National Instruments (NI) showcased their Silverlight based instrumentation tools today!

    Austin based National Instruments showcased their Silverlight based programming tools this morning. The tooling enables the construction of remote display panels that consume data from a web services enabled instrument. Which in simple terms could be an instrument monitoring a wind turbine, a wireless router at home, or a meter that monitors the oil flow in a pipeline.

    Here is a blog by Kamran Shah of the NI LabVIEW R&D team on the above subject:

    http://kamrans.wordpress.com/2009/08/05/preview-of-the-web-labview-ui-builder/

    The following is the example (reproduced from Kamran’s post)  of a remote instrumentation panel monitoring the wind turbines:

    Screenshot of Web LabVIEW UI Builder from NI-Week 2009 Keynote

    The related Silverlight case study was recently published on Microsoft.com at http://www.microsoft.com/casestudies/Case_Study_Detail.aspx?CaseStudyID=4000004889

    The above is a fine example of Silverlight usage in engineering applications.

    - Hanu

    Posted by hanuk | 0 Comments

    Azure pricing explained!

     

    Azure Capability

    Price

    Remarks

    Compute (server usage) $0.12 /instance-hour Compute charge is not usage based; the charges start adding up once you deploy the application.
    Storage (persistent) Storage @ $0.15 / GB-month stored This will include Azure Blobs and Azure Tables where the information stored is not transient. Even though Azure Queue is part of the Azure Storage, the information stored being transient, no charges for the data that goes into the queues. However each transaction (item you write to the queue) you perform on the queue accrues charges. Please see the next row for the transaction charge.
    Storage Transactions $0.01/10K transactions Every CRUDy (Create, Read, Update, Delete) transaction into Azure Queues (this is the only charge for the queues), Azure Tables, Azure Blobs will incur this charge.
    SQL Azure: Web Edition $9.99 /month (1GB RDBMS) The SQL Server editions support access from on-premise applications through the familiar connection string approach. One can manage the cloud database through on-premise tools and access from on-premise applications
    SQL Azure: Business Edition $99.99 /month (10GB RDBMS) Same as above.
    .NET Services $0.15/100K messages A message may be Service Bus request or an Access Control token.
    Bandwidth – ingress $0.10/GB Bandwidth charges are for the traffic in and out of Azure Cloud infrastructure. There will be no charges for the intra Azure Cloud data transfers. E.g. Web Role –> Azure Queue will not incur any charge.
    Bandwidth – egress $0.15/GB Same as above.

     

    For the original post, read it at http://blogs.msdn.com/windowsazure/archive/2009/07/14/confirming-commercial-availability-and-announcing-business-model.aspx.

    -Hanu

     

    (Disclaimer: the opinions expressed above are my own and not to be considered as the official response from Microsoft)

    Posted by hanuk | 1 Comments

    List of Silverlight 3 case studies published recently!

    Hi,

    I was recently looking for the latest Silverlight 3 case studies and one of my favorite Directors within the Microsoft evangelism group, Daniel Ingitaraj Karuppiah,  forwarded me the following list:

    clip_image001[4]

    Continental Airlines Modernizes Call Center Application with Web-Based Technology

    Continental Airlines stands out from its competition through a commitment to superior customer service and a forward-thinking approach to technology. When it came time to update its call center reservations system, Continental and its partner Infusion Development chose the Microsoft® Silverlight™ browser plug-in to build the new reservations solution as a rich Internet application.

    clip_image002[4]

    Financial Site Transforms Online Investing With Interactive Tools

    Zignals aims to transform investing for individuals by offering them sophisticated trading tools previously only available to industry professionals and by enabling new ways for people to collaborate on investment strategies for free. Microsoft Silverlight™ helped the company’s relatively small development group keep costs low by reusing their existing .NET Framework code base and development skills.

    clip_image003[4]

    Rich Media Platform Delivers Powerful Results for Fans of India’s Cricket League

    Headquartered in Dubai, NetlinkBlue is the media technology and services firm that won the online broadcasting rights to India’s most popular sports event, the Indian Premier League (IPL) cricket season. NetlinkBlue used Microsoft® Silverlight™ to stream cricket matches in near-real time, with advanced features and interactive activities for fans, such as chat, voting, and updated profiles of teams and players. At the end of the season, NetlinkBlue found that the audience for the 2009 IPL season was three times larger than the previous season.

    clip_image004[4]

    Cross-Platform Plug-In Powers Rich Internet Applications for Scientists and Engineers

    The company was looking to meet rising demand for a graphical programming tool that would help companies quickly deploy Web-based line-of-business applications that could be accessed across a network. The company chose Microsoft® Silverlight™, a cross-platform, cross-browser plug-in for developing rich Internet applications, choosing the software over competing solutions, including Adobe Flash. Taking advantage of powerful graphics and data-binding capabilities in Silverlight, combined with its native cross-platform support, the company accelerated development and market delivery of its new application and capitalized on a key business opportunity.

    clip_image005[4]

    Yahoo! JAPAN Finds Unique Solution for Multiplatform Online Video

    Looking to make the most of its exclusive license to distribute Major League Baseball (MLB) online to the Japanese market, Yahoo! JAPAN needed to find a way to get content to users on multiple technology platforms while protecting the content. When the company heard about the digital rights management capabilities available in Microsoft Silverlight® 2, it began working with Microsoft and local Microsoft® Certified Partner 2ndFACTORY to create a new service based on the technology. As a testament to how easy Microsoft Silverlight is to work with, Yahoo! JAPAN was able to bring the service to market in time for the start of the MLB championship series in just two-and-a-half months. Yahoo! JAPAN now reaches more users with MLB video and will continue to attract new visitors and improve usability of its site with Microsoft Silverlight.

    clip_image006[4]

    Electronics Manufacturer Reinvigorates BI Application with New Interface

    The company wanted to improve the Web interface for its Hyperion business intelligence (BI) solution from Oracle, which was slow and confusing for users. By using Microsoft Silverlight to create a new interface for the BI platform, TDK-Lambda simplified the way in which developers access business data and let them use their existing skills creating applications for the Microsoft .NET Framework. The new Silverlight interface is also much more responsive because it caches data locally and shifts some of the application-processing burden from the server to the client. Employees are more enthusiastic about the BI platform now and the company is exploring ways to transform the way employees interact with information and coworkers using the application.

    clip_image007[4]

    NASA Provides Interactive, 3-D Views of the Next Mars Rover

    NASA is always taking advantage of the latest interactive Web technologies to generate public awareness for its projects, educate, and inspire. For its next-generation Mars rover, NASA worked with Microsoft to create an online three-dimensional (3-D) view of a full-scale model of the rover by using Microsoft® Photosynth™ technology and the Microsoft Silverlight™ cross-browser plug-in. The solution lets people easily pan and zoom to see a full 360-degree view of the machine and its surroundings. The Mars rover Photosynth is accessible to people using Mac or Windows operating systems and a variety of browsers. In addition, people with limited bandwidth can still explore image details because of the way Silverlight optimizes image delivery and the fact that Photosynth serves only the image data needed.

    clip_image008[4]

    Australian Web Site Gives Visitors a “Wow” Experience with Rich Media Platform 

    One of the top three Web sites in Australia, Ninemsn needed a way to create rich, interactive experiences for visitors to stay competitive. Ninemsn used Microsoft Silverlight to create a new way to display content it already had leveraging the .NET Framework skills of its existing staff. The results give Ninemsn visitors a dramatically different view of a fashion photography site, with features that can’t be duplicated in any other display format.

     

    I hope the above compilation is useful to you.

     

    Regards,

    Hanu

    Posted by hanuk | 1 Comments

    Silverlight Version Compatibility

    Considering Silverlight being in its 3rd rev, end users often come across scenarios where a web browser need to render pages composed from applications compiled against different Silverlight versions. As only one version of the Silverlight plug-in can be installed on the end user machine at a given time, the CLR associated with the plug-in should be compatible to run current and previous versions of the Silverlight applications.

     

    The following picture illustrates a scenario where a web page is composed of Silverlight 2 and Silverlight 3 applications:

     

    Silverlight version compatibilityWhen the Silverlight 3 plug-in encounters a situation like the above, the CoreCLR creates a Silverlight 2 compatible (v2 “quirks mode”) AppDomain, a Silverlight 3 compatible (v3 “quirks mode”) AppDomain and provides proper environments for the respective XAP files. The above is accomplished while at the same time while adhering to the principle of one CLR version per a managed Windows process.

     

    Regards,

    Hanu

    Posted by hanuk | 0 Comments
    More Posts Next page »
     
    Page view tracker