>> Navendu Jain: Good morning and thank you for coming. Today it's my pleasure to introduce Professor Raj Buyya from University of Melbourne. Raj has worked extensively in the cloud computing space. He has several papers and also several text books which are being used in several engineering colleges across the globe. I also heard that he's commercializing some of his work for use in industry. Today he's going to tell us about market-oriented cloud computing and big data apps. So without further adieu: Raj.
>> Rajkumar Buyya: So thank you, Navendu, for having us. Of course [inaudible] good seeing you after a few weeks in Melbourne and Seattle. It is my privilege and honor to be here. I'd like to discuss some of the latest developments in cloud computing but I'll focus quite a bit on this aspect of market orientation. What does it mean in terms of application development? What does it mean in terms of quality of services? What does it mean in terms of resource provisioning to support the application, [inaudible]? So obviously some of the applications that are we are looking at are big data oriented coming from the scientific domain, healthcare domain and [inaudible] domain. That will be the focus of this seminar. Since I'm wearing two hats, one as a professor researcher at University of Melbourne and also [inaudible] of company, therefore, you will probably see me mix up these two qualities as you'll see in my presentation as well.
Although I don't need to really convince you about the importance of cloud computing, just briefly who are not familiar with it there's the traditional model of computing that we all know that is all about ownership of software, hardware, applications, making things work then you finally get to use it. And we know that high capital investment is necessary for such a model. So if there are small and medium businesses, if they need access to
CRM [inaudible] kind of software, it becomes an expensive proposition. As a result 90 percent of small and medium businesses in emerging economies like China and India, they don't use any [inaudible] technologies. And on top of it we know every 18 months we get a set of new hardware and software and we have to repeat this cycle. So this model is what traditional is, and of course cloud computing model is changing. So basically it says you don't have to own any software, hardware and services. You simply subscribe to those services offered by a third-party, consume it and pay for what you consume.
And of course the price that you pay can also vary. It can be based on the quality of service that you expect. So that is the cloud model. Then, thinking for a technical perspective like software engineers, what does it mean? When I've developing software for this model, our phone, the application is probably used by one organization or our phone used by one person [inaudible] district computer at any point. However, when applications are running on this cloud at any point millions of users are using it.
Therefore, the application has to be highly scalable, highly elastic and highly reliable and all those aspects play a dominant role. Then quality of service has an important role. So different people expect different levels of quality, response time and so on; that changes.
So there is a difference in the skill sets necessary to build to this cloud application as a result. So having run through this cloud computing very briefly, let's take a greater look into it. What does it mean? How do we build it? How do we deploy? How do we manage? To begin with this is my oral outline for the rest of the one-hour and fifteen minutes or so. I will give you just a quick vision of how these computer utilities actually started and where it is. Just very, very briefly, just taking a look. This not something where an idea appeared overnight. It has been around, but it took some time to reach this point, the point where there are the right alignment of necessary technologies out there.
Then we will talk more in-depth into cloud computing: what are its strengths, look into some of the challenges that are very, very fundamental. Some of these are addressed but there are many more things to do. I think that would be of interest to researchers and of course even people interested in developing products and services as well. Then we will take a look at this cloud architecture which is market-oriented. So market principles,
[inaudible] role. Here we have [inaudible] so he says he has done Bachelor's in economics but [inaudible] in computer science. I think people with those skills can do a great job in this area. So economics knowledge will definitely help in the way you build algorithms, the way you build services; that knowledge can directly become input in the development of software systems. Then we'll also take a look at this cloud marketplace.
Given that there are many, many companies and vendors offering cloud services
[inaudible] so it clears a marketplace. Different companies offer different services at a different price.
Even the same companies offering different prices for different reasons. So I know of companies [inaudible] CPUs they have a different price compared to, say, [inaudible]. So this is creating a marketplace of multiple companies. So there are companies that are creating that kind of market exchange. So we will take a look at that architecture. Then of course after that we will take a look at one of these software systems that we built where many of these market elements play an important role in resource provisioning, in application delivery, along with rapid creation of application. So this is more of a practical system which is a commercial product company called Manjrasoft. Manjrasoft is basically a spin-off company from University of Melbourne. So then we will just conclude and have a look into the thoughts of the future.
So there's our oral outline. We will begin with computing utilities vision. As we know, the primary reason for building the Internet: it was not for creating emails. They are the byproduct. The primary reason for building the Internet was so that it could provide applications and computing services to end users. And here is a statement from a person called Leonard [inaudible]. So Leonard was the chief scientist for a project called
ARPANET. ARPANET is often called the mother of the Internet. And this is what
Leonard said in 1969, over 45 years ago, "As of now computer networks are still in infancy but when they become sophisticated we will see the spread of computer utilities serving homes and office just like telephone and electric utilities." So there was the vision. And during the last 40-45 years we have seen several advances taking place in both computing and communication. This communication is also important, right, like mobile devices. That is due to advances in communication. All these are the ones which are paving the way for this vision of computing utilities to become reality. We are now at the point where we can see this is becoming a dominant way of delivering these computing utilities. Then what are those advances?
Very, very briefly, just to take a quick look at it. So of course web started as a providing access to remote information but in the last few years we saw advances in service computing, in particular through web services enabling [inaudible] of applications that can talk to each other in a seamless manner. And there were things such as a paradigm called grid computing. This was quite dominant 10 years ago. I think Microsoft also had some support activities in the direction through some of the forums and also [inaudible] development. So grid computing was popular, inspired from the power grid so the power grid that connects power sources and the consumers in a seamless manner; similar paradigm in computing. That was the model with which it started; however, grid computing was very much focused on scientific applications, dominant with scientific
applications or big scientific problems where multiple scientists want to work together and save instruments and save big data sets. It was very much dominated by scientific community as a result.
And of course this aspect of market orientation: so this was around when only a few a computers, like mini computers and mainframes were available. Few organizations had it so they had [inaudible] multiple users who were competing for it. And then they were using bidding strategies for example to decide whom to allocate resources. And then, of course [inaudible] the model changes. However, these are the things [inaudible] I know are very, very important for cloud computing. And we see now cloud computing which is very much a 2D model but the focus is more and more on consumer application unlike grid computing which was on scientific applications. This is really consumer applications,
[inaudible] applications. As we go along we will take those examples and demonstrate how cloud computing is enabling those along with this market orientation and SLA and all these concepts that we see as a first-class element in cloud computing.
So what we see is some kind of convergence. Many of these ideas are getting converged, so when we build a cloud we are not building for a few users. We are building for a worldwide scale set of users. You've got multiple clouds. Applications need to scale. Protocol needs to scale. Therefore, you might also borrow techniques from things like peer-to-peer computing. [Inaudible] so, therefore, we need convergence. And such a convergence has huge business potential. I think everybody is aware, of course, of Microsoft is a leader in that area. So there's a huge business potential by the year
2020. Some estimate that it's a trillion-dollar [inaudible] business potential which is good.
Now let's take a look into this cloud computing, just having a little bit of history of how we came from that reason to [inaudible] reality. So cloud computing of course is hugely popular. There are many ways to look at it. One of the way of looking at it would be, for example here, I'm just comparing grid computing and cloud computing. You see the interest from the general community in knowing about what cloud computing is, like number of searches people are making. This is from Google Trends. You will see grid computing was hugely popular. It's popularity diminished then cloud computing gained popularity from late 2007 so a huge number of searches. In fact yesterday I tried to take a look at comparing, for example, big data and cloud computing. So that interest is still growing. I think, of course, big data interest is growing even more rapidly compared to cloud computing. So this is [inaudible] snapshot. But these are the reasons from where requests are originating.
Perhaps that is determined by the skill set interest. Even yesterday I also checked where the interests are originating number one for cloud computing or big data, for instance; still, I think India occupies the number one position. It's possible because of the mere size of so many software engineers and they want to develop skills in this area. So this is a good interest but not just public interest. Business are interested in it and not just IT companies like Microsoft but other companies. So here is something global: an alliance for data centers focusing on cloud computing. This alliance has, I don't know, probably
500 members, business communities. So they all make so that the cloud is here to stay and best practices are followed either in terms building data centers, in terms of platform, in terms of building solutions. And you will see this alliance is led by not really
IT companies. It's led by real business users like, for example, BMW. So BMW is playing a significant role in this area. Perhaps looking at the future cars, like self-driving cars.
There is more IT in those cars than mechanical devices so much [inaudible] has to be
built. So that's an example. Even the banks, like National Australian Bank is also significantly playing a role and other organizations.
So they say their businesses are also so much interested in this area. This is just a highleve view of what the interest is. Then, taking a look at cloud. So of course if you ask 20 people what is cloud computing, different people are going to have different meanings for it. In fact, I was looking at what are those things people are searching. The top one is what is cloud computing? If you've seen Google Trends, what are those searches that are top ranked within cloud computing. So I think people still want to understand what it is. Of course different people have different views. I heard about at least 100 definitions.
If you go to the website you will see every day people are adding their own definition for it. Some have a view that it is like renting remote storage or renting a server. These are different views people are having. But here is my own definition for cloud computing.
This is something I proposed in 2007. I think this really captures the real vision, the goal of the cloud computing environment. So cloud computing to me is basically a marketoriented computing system in which we [inaudible] virtualized computers, virtual machines, and these virtual machines when I make a request to public load there is no computer named after me. I get a virtualized computer. And this virtualized computer, virtual machine is mapped to a physical machine dynamically based on so many aspects.
It can be – There is dynamic provisioning. It can be driven by user requirement. So depending upon who the user is, where the person is located and what kind of response time they're expected, it may be created and mapped to a specific place. Right now I'm here in Seattle, perhaps map it to a data center located in Seattle. And tomorrow I go to
Australia, perhaps that virtual machine serving me will be migrated to Australia to get the best response time from that service, virtual machine. So this is how it happens ultimately based on service-level agreements. So these service-level agreements are as simple as something that is established through a negotiation between consumer and provider. Consumers say, "This are the expectations. These are my quality of service expectations. If you agree to provide," that becomes the agreement. Of course agreements [inaudible] reward. Any service delivered as per the agreement has a reward and if they don't deliver as per the agreement, there is also a penalty because they're violating an agreement. So these aspects considered terms are very much market terms.
Market principles play an important role in how we architect our software system, how we provision resources and how we deliver the services. Of course we need to build also applications that are agile to be able to handle these aspects more easily. So this is the definition. The rest of our discussion will focus on how we make it happen, what kind of technology and what kind of techniques we need to have in place to realize this. I'm sure more and more services are coming from different companies are slow exhibiting these qualities if you see a roadmap of various companies. At least a few years ago I saw a roadmap of cloud computing [inaudible] Microsoft that has these elements. Not right now but over a period of time.
So how does the cloud look like in the big picture? We have these capabilities. There are users. Users subscribe to it and of course consume and pay for what they consume. So they may be subscribing for low-level services like infrastructure as a service which is just basically renting a CPU storage and so on. Very basic. They might be subscribing for some kind of platform that helps them to build applications rapidly or they might be
subscribing to an end user application. So end users don't care about where you host it or what kind of computers you are using to host it; they are just focused on the application. There are different ways they can access. Then sometimes there are users, they also have their own private cloud. Maybe for security reasons they might not want to do everything on a public cloud so they have a private cloud. And this user may have a subscription to one provider, that doesn't mean that one provider does everything. This service provider may be using other services. For example, Dropbox, right? How many of you heard of Dropbox? Perhaps you've got Microsoft box. A Dropbox some of you've got. So this Dropbox company: they don't [inaudible] everywhere. They are basically using storage service from multiple cloud infrastructure service providers and putting them together. So to us it looks like I have an account with Dropbox and they are doing all the things for me. But internally they are using storage services from five or six companies and then delivering it to me.
So must of us are using free but there is a limit to how much we can use free. After that you start paying for it. It becomes quickly pay for service. If you expect a better quality and better reliability then of course you have to pay for it. So this is an example of how cloud services are built. Basically I want to highlight that no single vendor is doing everything, especially when it comes to application-level services. They are harnessing capability from multiple to make it happen. So as a result quickly it has become a hybrid cloud or intracloud, multiple clouds together to deliver end user services. Then of course there are lots of applications are today running and many people are using without their knowledge that they're running on the cloud. The traditional scientific and business: we hear a lot about them. So that happens. And then, there are things like CRM and ERP.
So many, many small and medium businesses are quickly adopting this. The largest
[inaudible] players, of course, they already have these things in their office. They don't quickly drop what they do and move to the cloud but they will take their time and it will be a gradual move.
However, small and medium businesses are taking advantage of such capabilities already which is a good move. Then coming to this consumer application and social network kind of applications: they are even more popular, like Twitter. I'm sure many people have Twitter accounts. Twitter is running on a storage cloud service. You can check if you visit my one Twitter site, Twitter.com/buyya. You can see the messages at the bottom are pulled from a storage service. For example, [inaudible]. So it is hosted there, Twitter. Then of course Dropbox we discussed. Dropbox, they are harnessing storage services off of a cloud. Really this is like a global distributed [inaudible] system; very simple. We can not only store but we can also share with others, update and save.
So that's how it became popular. Of course Facebook is not really public cloud but it is a hybrid cloud. So they are using it because millions of users are using Facebook, to be able to support them. And then of course not just supporting interaction between you and your friends, but they also do targeted advertisements.
That's where they [inaudible] graph computation. So Facebook – I'm sorry, everybody has a Facebook, right, account? Yeah, so [inaudible] if you don't have a Facebook account [inaudible] it looks like you are not from this world. You must have to be able to connect with friends and keep up with what they are doing so you can know from them what their activities are on Facebook. So here on Facebook if you observe: the layout of
Facebook on the top is your name and the left side panel are the messages, your messages or messages that you are following between others. And then the right side of the [inaudible] is advertisement. And these advertisements are really targeted. So based
on your profile, the kind of friends you got, the messages that are flowing over there they put the right advertisement. For example, here I was meeting with a colleague. For example, let's say he just [inaudible] and joined Microsoft. So next what? They want to get married. So the people with an Indian origin they always want to marry someone from their region. So [inaudible] Facebook so over here he was in Seattle. You're from
Canada. So here is a girl from Canada. Perhaps you might want to marry. So these advertisements are highly targeted. They require a lot of graph computations to decide what to advertise.
Therefore, compute also plays a role not just data. So [inaudible] a big data computing application. How much do you want to analyze? You don't want to go through everything but just take some snapshots and do it. And then Animoto. Likewise, there are many applications that the general community is interested in. So how many of you have heard about Animoto? Okay, so only one. Basically Animoto is in the business of converting images into video; a very simple business. You feed in images and you get a video of whatever you are looking for. So nowadays we all have a camera, a mobile phone with a camera and of course digital camera. We take so many photographs for a single visit.
I'm sure if somebody was on Microsoft campus for the first time in their life they would take at least for a half-day visit five new photos. When you go home, what do you do with them? Nobody has the time to go through them. So this is where this service is useful. Feed in these images and they create a video of length two minutes: My Visit to
Microsoft. Photographs outside, inside, whatever you took. So it'll be an interesting movie to play. So they are very successful. [Inaudible] started with 24 servers in their office. Because of popularity it was not able to handle so much workload; it broke down.
That is when they moved to a public cloud and now they're happy. They're able to provision whatever they need based on the demand they experience for their service.
So these are applications that are consumer-oriented. The good news is that many are using them. I think this is very good news for cloud computing success from their perspective. The general public uses cloud services. Of course the business potential as
I said. Here is potential. This is something, of course, I'm not making up but there is also an IDC figure. For 2012 worldwide IT spending was about five hundred billion dollars and ten percent went to the cloud. But the projections are there for 2020; it's going to be a huge market especially coming from emerging regions like China and India. In fact there's [inaudible] called Chindia. I don't know how many of you heard. It means China plus India's market: Chindia Market. So huge potential. And if you look at places like
India: they made a generation shift in telephones. Now everybody has a mobile phone but a few years ago hardly one percent of the population had land phones. So now they made a generation shift. I think a country like India will also make a generation shift by not having any desktop computers or PC in their home. Two, having something application services accessible through mobile phones.
So this generation shift is going to happen and that will be a utility. So here is a market opportunity by 2020. Okay, so now what about if I want to explore this potential and want to create some interesting things – Yeah?
>>: Question: how do you make these estimates?
>> Rajkumar Buyya: Oh, so that's why I didn't put estimate. It's a guesstimate. So it's a guesstimate. I basically looked at 2013 and 2014, right? So you can go to like 10 percent, 15 percent, 20 percent slowly. However, my feeling is that when we create
some healthcare services, for example, and you make it available there's a huge marketplace for places like China and India. So right now these things, healthcare services, are not available. So if you make it at a low cost – Soon I will give you one implementation that we did looking at economic analysis but also the service. So with that adoption we can easily have it. It is all about adoption. Healthcare applications which are not at all there, healthcare services not available in those countries, so they will adopt because they already have necessary elements like mobile phones.
[Inaudible] available as part of [inaudible] at a small price. So you are ready to go. That is why I am guesstimating that this going to happen. Of course time is the best answer but this is a guesstimate.
Okay, now what are the challenges? The first challenge is virtualization. Basic virtual technologies are there, but I'm talking about once I create a virtual machine, how do I manage the life cycle of the virtual machine especially when people are mobile. Correct?
Here you might be in Seattle and tomorrow you'll be in Washington D.C., right? So what do we do? Deliver the service that you're delivering from Seattle so it will continually happening or the virtual machine needs to migrate, managing the life cycle of a virtual machine, the policies. That is an interesting challenge to look at. And then of course we were talking Navendu just before coming here: things like security and privacy. These are very sensitive. If you want to bring applications such as banking or healthcare on the cloud, these aspects play a very important role. [Inaudible] various countries have their own regulatory concerns, legal concerns and what you can put where, where you can move. So just to provide scalability you might move your container to many places; that is not acceptable in some areas. So how do we do that?
And then of course service pricing: we cannot have a fixed price for everyone in the world. So prices [inaudible] how to be set in such a way that it is affordable to consumers in those regions. The service may be a global cloud service; however, the pricing has to vary. Then the QoS: this quality of service means different things to different people. And also the same QoS what it means to me at this moment can be different at the next moment. So, therefore, how do we deal with this QoS and how do we bring the highlevel expression to a low-level allocation? And then risk management: if you are a service provider, you are accepting a lot of requests. So you may not be able to meet all of them. How do you manage the risk? Even the [inaudible] industry does risk management, [inaudible] management-based allocation of selling of their services. So how do we do that here?
Then, scalability: as I said in the beginning, cloud applications are built to support billions of users using it at any point so how do we make sure that it's highly scalable. What kind of data [inaudible]? What kind of algorithm is used to make it really scalable? And then, reliability is absolutely important. We cannot afford to go down. If it is a desktop or a laptop and something fails, I can reboot it. But, can I do that in the cloud? I cannot. So because millions of people are using it, it affects a large number of users. You and I, the people who are on Facebook, I know that so many people that are using Facebook are very, very addicted. So even if they are crossing a road, they're taking photographs, uploading. I even saw some people while driving they're looking at Facebook. This is too dangerous. But anyway some people are so addicted at midnight they announce they are going to sleep, they will not sleep. They have to announce they won't sleep also.
There are some people who, imagine, for some reason if it goes down at any point, they keep refreshing several times and have their hand pain and finger pain. And then of
course because they did this for a half an hour then [inaudible] don't sleep anymore. So we need to make sure that reliability is supported very well. That's very, very important.
Finally the data centers that are powering this cloud, we all know that they're consuming so much power. Correct? So we need to think of how do we minimize that conjunction?
Still deliver services that – What kind of techniques [inaudible] technique we need to use to make that happen. Then, of course we all know there is climate change problem.
Everywhere this has become a big issue and governments don't have a solution. The only solution they have is to introduce new taxes. In Australia they introduced in July last year something called the carbon tax. Even though we have income tax [inaudible] percent, [inaudible] this carbon tax came into the picture. There's a huge problem, a political issue happening all the time. And then, of course [inaudible]. At this moment this tax is imposed on those who are emitting big carbon into the environment like power generators and companies and so on. But these guys have increased the price of electricity quickly. So blaming the carbon tax. And everybody increased their things' prices by ten percent blaming carbon tax. So this is already happening.
But in my opinion in ten years time the government, if you let them do the way they are doing, at least in Australia they'll introduce what is called oxygen tax. So based on how many times you breathe in and breathe out they will charge you. So nowadays we are all inventing nano devices, nanometers. They measure. They are here in our nose; they measure how much, maybe, you're consuming your oxygen and leaving out. Anybody does here yoga? Hot yoga? In [inaudible] quite popular. Right? Yoga. Okay only one.
Like those who want to keep themselves fit, even if they are 70 years they want to look
25. Many of the models are doing it. Of course it's good to do; to keep our body fit is very important. But there what they do in yoga, what they do is they take a deep breath, take this breath, and they take all the oxygen and leave out carbon. And these people will be charged a higher tax because it's very efficient. Just like a higher income is higher tax; similarly with the oxygen they are consuming. I think by 2050 as we know 75 percent of all population will live in the cities so this cloud of oxygen will become a very precious resources.
So perhaps depending upon where you stay the tax will vary: carbon and oxygen tax.
But then coming to this computing, we need to think in terms of how we develop algorithms that are energy efficient. Today the goodness of algorithms like even if I pick up a simple algorithm like sorting and searching, goodness is measured by time complexity and space complexity. I'm sure people are looking into investigating how to make it energy efficient so they'll be energy complexity; the text book will be updated with another one. I think getting a job at Microsoft will become even more difficult. Often this space complexity, time complexity [inaudible] is asked and now you'll ask in ten years time, energy complexity. So this is a huge opportunity; a little bit of work is done in this area. A huge opportunity to look into. Finally application development: It's all about how we minimize the cost of software engineering. How can we create software that is scalable, elastic, reliable quickly? We need some help in this area so some progress is necessary.
These are our challenges that are there in the cloud, and some progress in each of these areas but more needs to happen. With that, just taking a look at cloud architecture, how do we architect a cloud to realize many of these? So this is the big picture. At the bottom you have infrastructure and then at the top, users. Then, users make a request to the cloud. Even though people say the cloud has infinite resource [inaudible] finite; there
are a finite set of resources. So users [inaudible] certain SLA. We cannot admit every request that is coming in; we need to have what is called admission control to see whether we can admit or not admit. So that depends on the user's [inaudible] expectation, how much resource I've got, how much is already promised to others; and, can I admit it? If yes, you admit it. Otherwise, you reject it or negotiate to vary that expectation. So this is called admission control. Slowly the admission control is also coming into the picture. I think right now more of this IaaS, Infrastructure as a Service, is popular. So there it is up to the requestor to decide to really [inaudible] admission or not.
But, however, here with application services, admission control needs to be looked into depending upon the kind of the service they are looking at.
So once you admit of you can manage admission control through pricing. If there is too much demand, you can increase the price so that way people will decide whether to use it or not use it at the time. And then [inaudible] admit you create, let's say, this virtual machine. You map it to a physical machine here and later on their service running on this virtual machine. Maybe a more number of users who start using it so that [inaudible] higher demand so then of course you must be able to expand the number of resources you have rented to support your application quality. So that has to happen in an elastic manner, in a seamless manner. So this sometimes is expensive; it can be within one cloud or across multiple clouds. This ability is necessary.
Because of this property some people call cloud computing elastic computing because an application has to exhibit elastic qualities, the platform needs to exhibit elastic qualities and of course infrastructure depends upon what kind of protocol [inaudible] so that can also change. So elastic nature is very, very important. Elasticity plays an important role. And then of course when the demand decreases, you shrink it because you don't want to rent too many resources when you don't need it. So it can be looked from the point of view of minimizing the cost. It can also be looked from the point of view of minimizing energy consumption. So different outlooks why we have to cancel it but whatever the reason this is very important; this property is very, very important in the cloud computing area. And then of course we know that there are many companies that are building clouds, right? Nowadays everybody has a cloud strategy. There are many clouds and that is also creating confusion. If I want to scale my application across multiple parts of the world we know that no single vendor can have infrastructure everywhere in the world.
Some regions may be dominated by Microsoft. Some may be dominated by some other company. So how do we make sure that we can build an application that can potentially reach out to a large number of consumers and interests coming from all over the world?
That requires the ability to scale across multiple clouds, across multi-vendor clouds. This requires additional thinking. That is where this aspect of InterCloud comes into the picture. So basically this creates a marketplace of computing services. There are so many vendors. I should be able to publish my services in a marketplace, some kind of exchange, and then the users will be able to discover what kind of services are available in the marketplace based on the price and other factors. It may be a compute resource.
It may be a platform resource. It may be an application [inaudible] service. So there are companies playing.
In fact here in Seattle yesterday I visited a company called [inaudible]. They are ex-
Microsoft guys. They created [inaudible] where several companies have published their services, we can browse through and click there. The price is the same as what you'd
pay for infrastructure as a product but they make money by taking commission from the actual service provider. So that is an exchange. And then of course the exchange by itself is still manual but if you want to automate we need what is called this kind of brokering system, a user-end personal agent that can go through this directory of services, find out what is a suitable set of resources and then use it. So that decisionmaking has to be there. At the same time they may be having local resources as well; then, it needs to decide what to use locally, what to use globally from a cloud and then use in a seamless manner.
This concept of marketplace is coming into the picture, and already so far the current solutions that [inaudible] what we need are standards to make it truly successful. So some of these companies that I know of what they're saying is, "Okay from these twenty companies, you can choose one you want. But if you want access you don't have
[inaudible] yourself. We'll return it for you." [Inaudible] solution. So because every company [inaudible] virtual machine [inaudible] different for Microsoft and different for others. So I had to write [inaudible] for everybody so that can be solved by having someone writing this or having standards. So as with standards there is thinking going on right now IEEE has set up InterCloud Standards Working Groups and also a testbed has been [inaudible] from many places all over the world. They are working together to look into how can we have some kind of protocols that allow us to express maybe semantics or express interfaces to access that resource?
This is another move towards standardization just like Internet protocols. So this is progress that has been happening. So far what we looked at are basically concepts.
Now let's take a look at this Aneka platform: how can we make it possible? That brings us to this cloud application platform and the development platform that we developed at
Melbourne University a couple of years ago. Now it's a commercial product. Before I go deeper I thought I would just say briefly about what we do at Melbourne University so that we can possibly talk to each other. I'm just talking about one element but there are many more things we do. This market-oriented cloud concept I already discussed but we have efforts in realizing that. We have this Aneka which I'm going to talk more about.
This is good news; it has been implemented using .NET capabilities and using the C sharp language. Therefore, it's very much Microsoft friendly. And then, we have effort on this InterCloud. So how do we scale applications across multiple clouds? We built an
InterCloud that directory service and the meta brokering services to demonstrate this concept.
And then, we also have effort on how to build third-party services. A couple of years ago, like in 2009, we built something called MetaCDN. Basically a content delivery network which harnesses storage service from [inaudible] some of Microsoft storage services and [inaudible] and many, many other companies storage services are used to put together [inaudible] into a content delivery network. This is price-based. The user can say, "Okay, now I want to deliver this. I am having some event. I want to deliver this video to these people." Then we use [inaudible] to decide which one is the best location to replicate and deliver the content. It's called MetaCDN. This is a spin-off company now.
MetaCDN.com if you visit you will see. You can use the service just for a short period also. You don't have to commit and become their customer for one year and pay huge money. You can just pay a small amount and use it for your own event. So that's at
MetaCDN.com.
This is something that spin-off from our lab work team. Then, workflow engine: there are applications, specifically in the scientific area, that connect your tasks. So how do we
[inaudible] connect tasks like, for example, fMRI, functional MRI, magnetic resonance imaging application from Dartmouth College here in the U.S. We worked with them to apply this workflow engine to be able to support deployment of that workflow application.
And then of course this green, energy efficient; this is also a big project for us. Recently we had one more project with Samsung. Samsung is supporting a project on mobile cloud computing. Since users are access through mobile then of course there's a cloud.
So why do they access a cloud? Perhaps some time outsourcing some of the computation to there or they also network, how to minimize [inaudible] conjunction.
That's another effort we've got.
Then, simulated. A lot of people doing research. Of course they probably don't have the energy or time or infrastructure to do experimental-based evaluation. If someone created a new algorithm for resource provisioning, you probably have to build so many things if you wan to do experimental demonstrations. So instead they so simulation, modeling and simulation. To help those users, we have a simulation toolkit, CloudSim. Right now it is pretty much like a defacto simulator for cloud computing. Any conference you go to, if there's a paper on resource management scheduling it is at least 50 percent I can say that they use CloudSim. This is also quite a popular toolkit. Then, of course, this Internet of Things for Smart Cities. We have a project with the City of Melbourne. The City of
Melbourne is looking into like 20-20 vision, 20-50 vision. So how would city and what kind of services and how would we optimize them? So we are creating the IoT-based,
Internet of Things-based Smart Cities that is basically a combination of IoT sensing, that is mobility, and cloud computing and big data application.
Right now we are working on building a programming framework to support rapid increase in IoT applications and deploy on the cloud in a seamless manner. Then of course big data is coming out so another area. We have a project within Australia and
India looking into creating an environment to support disaster management applications.
So these are broadly setup projects; of course we don't have time to go through all of them. Let me just focus on Aneka and show you how these market-oriented elements are introduced in that platform. Of course, before we go: this is something we had a panel in Chicago talking about how can we architect an environment to support cloud applications and specifically QoS and big data applications. Basically in my opinion what we need is some kind of unified APIs so that other communities can [inaudible] and deploy in the cloud on different environments. Of course different communities have different capabilities but when we come to this big data and others there are things like
QoS time, doing something on time. Even in big data also people say, "Okay, tell me, what is available there? And I want the answer in one second." Can I put this kind of
SQL query?
The data may be huge. [Inaudible] should take a sample and give me an answer. So how do we build those things? Then, of course accuracy also. Sometimes you
[inaudible]. If I'm visiting Microsoft in Redmond I might say from Australia, "Tell me a hotel just a five-minute walk from Seattle priced at 75 dollars?" Right? So it can give me an approximate; it doesn't have to be precise. 94 plus amenities is acceptable. So this kind of computation, how do we do it with varying accuracy? What is acceptable? So that kind of model, supporting and deployment. Basically we need unification.
That is what we did in this Aneka platform. Aneka is a cloud application platform.
Basically it has various elements here, container services and techniques, that allows you to create multiple models of programming in a single SDK. So right now we have
SDK that contains thread model programming, task model programming and
MapReduce model programming. You can use any of these or all of these in your application and build the application quickly and deploy in private or public cloud in a seamless manner. You don't have to go for multiple solutions to just build one application. So this is very good if there's an application some part fixed to task model, some part fixed to thread model and part of the application fixed to MapReduce. You have all of it in one.
Or you don't like any of these models of programming; you can build a new one. So by exchanging this capability, that is the capability of Aneka then you deploy. So basically these two components: SDK and the runtime [inaudible] to deploy. So as I said this is implemented in .NET and C sharp; therefore, you can use any .NET supported languages to build applications. Or you can also [inaudible] under Linux and Unix systems if you like through Mono. As you know Mono is supposed to be .NET compliant.
Sometimes it's difficult but we have to always keep up with it. .NET moves faster and those guys are not keeping up so much. But anyway in theory you can do it that's why we demonstrate it. You can run it on both kinds of operating environments.
That is in brief, but if I go deep inside Aneka what is there inside? So inside basically there are a set of services like membership management, license management, accounting management, accounting management, profile management. All these capabilities are very, very fundamental and necessary to [inaudible] to support different models of programming. Then of course there are more tools apart from these programming models. So there are applications where they don't want to do any restructuring of the program; they just like to run existing program, maybe exploring design spaces. So we have some tools that help that. Once you do that you can run it on a private or public cloud. Soon I will show you some results of running it. So this is just high-level what Aneka is. When this Aneka is deployed on any of these infrastructures what you really get is the SDK APIs to build applications then of course insight how to manage users and how manage the application regarding accounting. Correct? So with things happening in different place you need to keep the record up with what is happening so that you can look into how much price you need to bill the customer.
Then things like provisioning, dynamic provisioning to support the user's private and public loads. Then, of course, once you provision you also have to run your application.
That is where scheduling comes into the picture: scheduling a task or proper resource to make things happen. So these are all part of Aneka, sort of in the middle of it, that one can use to build. Here's a very simple example, I have this mobile phone. I take a photo and I quickly want to process that image and I will do some filtering to make that photo look beautiful. How do I do it? We recently built a library that runs on mobile phone like
[inaudible]. So you take a photo and you take that image and send the request to the cloud to get a real time response to convert that image into something else. How do we do that? If you want to get a real time response basically you – the technique is like this:
Here is the application. You just split this image into nine segments, like three rows, three columns. You've got nine segments. These segments each of them may be like an
Aneka thread. Then you want to [inaudible]. So [inaudible] provision a cloud resource or
[inaudible] that it provisioned, do the processing of the task and you get back the results.
Then you quickly go back to that application that way you have a quick response time.
Then the image is converted into something else like embossed. In fact to connect to
Microsoft, this photo was taken in 2005 in Beijing. The Microsoft Faculty Summit was there. I think they invited several [inaudible] and one of them was Niklaus Wirth, the inventor of Pascal language. So I happened to take a photograph with him. He is my academic grandfather.
I did a Ph.D. under his student. So there's a Microsoft connection; the photo is thanks to
Microsoft Summit there in Beijing. Okay? So that's how you do it. As we know, of course, once the job is done you have to clear up the result that you acquired. Acquisition, uses and then clearing up to minimize the cost. Then of course if I want to run the application across not just one cloud but also multiple clouds how would I do it? As I said, right now
[inaudible]. So we made Aneka work on Azure. Earlier we made it work on the previous version of Azure, that's all this worker role and web role model. Now of course it's now changed to a virtual machine and it can do whatever you want. So that model we also created adapters to make so that it runs there.
Then of course on Amazon and then others. Someone might say, "Okay, we don't like any of these tools. We want to build a cloud using something else." So then we use those APIs to provision and add application there. This is our adapter solution at this moment. And let me illustrate some of these concepts with real applications. So far we've looked more conceptually but let's take a look at some of these real applications. I will take examples, one from China, one from India, one from Australia. Also we have one of the companies called Titan in California; they are also using it. There's another application. But let me discuss three examples. Of course these applications I think are quite [inaudible] in nature, are big data industries in nature. I think is something I don't need to emphasize too much, but there's something called SMAC: cloud, mobility, social and analytics. These four things are becoming very, very popular creating a need for skills in this area. And then of course data is also growing very rapidly. It's because of the things that we are doing, sensors capturing data. Even our mobile phones are cameras. In 2005 I also visited here, supercomputing conference. I think Bill Gates gave a keynote at the time. So that time I purchased a camera from Sony, the latest camera of that day. When I took a photograph it gave me a photo [inaudible] 3MB. And just before coming here I purchased another camera from Sony. So if I take a photograph that becomes around 10MB. So even if I'm taking the same set of photos, it's growing so much. That's just an example. Likewise, so many things are growing so data is growing.
Therefore, we need to look into this area also. So now let's take one example from
China. China Southern Railways: they are responsible for building high speed trains for
China.
What do they do? So here are the different design scenarios that they have. They need to find out what is the best scenario to meet the needs for a given plan. So they do that by using software called Maya. So Maya is used for rendering. So Maya is rendering on a server containing four cores. This small scenario was taking like four days, five days, ten days; quite a bit of time. In fact I met with another company here yesterday that are doing this labeling printing, like all this [inaudible]. They change prices regularly so they have the label quickly. So they have a job printing [inaudible] on this kind of server. So because one item changes the price something is happening so you need to print the label; so they have that automation. So they are single-server based application taking so much time. Similarly these guys also had this scenario.
We helped them set up a private cloud using some of the existing servers plus the desktop computer they had in the office. They set up a private cloud. And we have a tool called Design Explorer. So design explorer basically what are they doing? There are so many design files, image files, that need to be rendering using one program called
Maya. It's like SPMD, single program multiple data model. So that can be quickly exposed using our Design Explorer. And of course it is an explorer you can run on the private cloud instead of taking four days you just do it in two hours for example. So this is the result they gave us on a single-server based environment, so for frames from 2000 to 6000 taking 20 hours to 80 hours. The same thing they were able to bring to 2 hours or 10 hours depending on the number of frames. This is just using 30 nodes. But what if
– You might say, "I don't want to wait two hours. I have urgency. I need to show results to my boss in half an hour. So what do I do?" There in this Aneka there is a [inaudible] and you go there and click QoS parameter: deadline is equal to 30 minutes. And then, obviously I need more resource locally which I cannot procure that quickly. Therefore, I can just rent a couple of ports or machines from Azure or some other for that period, for half an hour then I can use those both private and public loads.
So that is where we have a deadline equal to 30 minutes, the budget I need to spend to go to the marketplace and rent from there. So the budget is equal to, say, 50 dollars.
Correct? So you give this then this Aneka has an adapter and the programming system that looks into, "Okay, local resources can only process maybe 500 frames. The remaining I have to go do elsewhere," by that 30-minute deadline. So then it will rent extra resources from there and move the task, the images to remote place, do the rendering over there and in a seamless manner deliver results to the user. So this is like how market-based [inaudible] algorithm where you put the deadline and the budget limit and the system will look into the marketplace and select the suitable – If it is a cloud
[inaudible] market instance or a standard instance decide what to use. If someone has a got a very low budget so 40 percent uses [inaudible] market instance; perhaps it is cheaper than standard instance, use those and make the decision dynamically and do it in a seamless manner and get results back to the user.
So the user doesn't have to change applications and doesn't have to know so much about it. This is high-level. This is my deadline. This is my budget. Of course you have an account there, a credit card number for example. Use it and get the job done by the given QoS. So this is supported. This is one example of engineering. Then from India: so
Indian Space Research Organization, what do they do? So this research organization they launch satellites very regularly. There are satellites for disaster management that have launched. They basically collect data through the satellite's sensor and data comes to the receiving station and is stored in their offices, in a branch-like in [inaudible], in
[inaudible] and a few other places. And these [inaudible] data is collected. And this data if they want to find out if some disaster is occurring and detect it quickly to manage the disaster better, they need to be able to do it in a timely manner because when disaster is detected you don't have too much time to manage it. You have to create a management plan very quickly.
So they built an application using Aneka. They use our task and thread model to build this application and of course they can set the deadline or a QoS parameter then use the local resources. When there is high critical [inaudible] then they have the centers in many places, so basically it becomes an intercloud by itself because every center has a big datacenter facility. Using the private networking you can use the other ones also. So
you are coming from [inaudible] so they [inaudible] where there's a big resource center to be able to do that or maybe use a public cloud in the future if that [inaudible].
So this way you can scale in a seamless manner; that is what I'm highlighting.
Application programming quickly and doing it. In this case they had to change the application to use thread API, for example. In the previous case of Chinese, no; because it is Maya software from [inaudible]. They don't have the source code to modify it. You have to just operate around, build some [inaudible] around it.
This is the second one. And the last one I'll discuss healthcare. This is something of interest to everybody, correct? So healthcare, what do we do? Basically we work with our medical school at Melbourne University and our electrical engineer school. So the electrical engineering school developed the sensors that can be tied like to the hand, a heartbeat monitoring sensor. And then, of course this ECG data analysis as a service running on a cloud built on top of Aneka and running on Amazon [inaudible] server. So this was done on Amazon. So here this is available as a service, so usage as a service.
Basically make a request: if the [inaudible] says, "Every request you make to me, the request will be served within, say, half a minute; within a half-minute for which you pay
50 cents. And if I don't do it within half a minute, if I take one minute, 25 cents. Instead if
I deliver more than that, maybe 3." So this is the kind of [inaudible] I have with you; therefore, as SaaS [inaudible] I shall do everything I can to commit that. Otherwise, if I'm delaying then I will lose money, right, and I don't make much revenue. Here Aneka supports the provisioning of resources so when that system is not able to meet its needs then it will provision extra resources.
So basically if that is a service requirement, if the number of users in the beginning, say, ten users, provision one resource. And then, when the number of users are increasing more and more, if you sense and predict, "Oh, it looks like this increase [inaudible]," then
I won't be able to meet this need with one [inaudible]. Let me provision extra. [Inaudible] provisioning or elastic provisioning to meet that SLA. So is how we support that SLA in this case, application service. Anyway, so what we did was with this sensor collect the data through Bluetooth network and send it to like some phone. And then, that will make a request to a cloud. Analysis is done and the results come back. And this is something we have done practically and demonstrated many places.
Here, for example, a sensor is connected to this person's hand. The data is collected over a period of time and then, of course, using the iPhone the data is sent to a cloud.
Analysis is done and the results came back. So just by looking at a graph you can tell a lot about a person. The one we did at a conference where we somehow a very simple technique from a doctor how to see this graph. When they came, some people flew from the U.S., we took their data for a few minutes and kept it there. And then of course they take a rest. The next day they come and take their data. So when we analyzed from this data to previous data, just by looking at their graph I can say how many hours this person has slept last night before coming to the office. This is a fantastic application in places where you have to authenticate yourself before you get in. So if you see the data collected, if you notice that some person hasn't slept last night and came to your office, you don't let him come in. Send him home. Otherwise, what happens when they come into a big work center, working environment, they come and sleep.
Especially in India it is very useful like in [inaudible]. Thousands of Indian employees first thing they do is enter, take nice [inaudible]. First thing is [inaudible] before you work. And
then, come inside to the air conditioner. Outside is too hot. They come and sleep. So you can control this; it's a simple example. But there are many more examples you can think of where it can be applied. And now in terms of can we make it realistic to deploy any imaging like one million, one billion customers in a place like India. What does it cost? So first cloud service we said, "Okay, SaaS service, usage as a service, like on a chart is something like one cent per request."
Okay, and then next we need mobile phone which fortunately everyone has. During every election time they give out free mobile phones. There are more mobile phones than people nowadays. Okay? So mobile phones are there. And then next we need a sensor. And fortunately these sensors are in mass production and are imbedded. Like a sensor embedded here in a watch. The sensor will cost around eight or nine dollars.
These are affordable in India also. Most people can afford it. So you have a sensor, you have a mobile phone, you have a service. So you should be able to collect this data, just do it once in a week or once in a month to see your health status. So do you meet a doctor or not meet a doctor? There is no point in going to a doctor when everything is fine because doctors cost a lot of money. So such an application can be put together very, very easily. That is why I said there is huge potential for cloud, huge potential for this [inaudible] mobile application, healthcare application. Therefore, we have to look into real healthcare applications, [inaudible] applications, transport applications; there are so many possibilities.
And fortunately we are now at a point where sensing is lower cost and less invasive.
Mobility: everybody has it. Then, of course the cloud is there to do business. Microsoft can succeed much better with this model. So this is something that can be deployed.
And slowly I already saw that some of the companies are doing for the specific kind of
[inaudible]. Like if a pregnant woman is at her home so whether she should see a doctor or not, they're using some [inaudible]. They sense a few things and [inaudible] it's done they tell you whether to go or not go. Because in cities with huge populations, a pregnant woman going from home to the doctor, that is very dangerous. So you can avoid it. This kind of application is already in place. People are doing it, for example.
This is the motivation to demonstrate that you can actually do it. Of course what about –
We were discussing, Navendu and I, in places like India why is there such a boom of IT industry there? It's because there are people with skills and of course they're available at low cost. These are the two factors. And if all the people
– Right now most of the education industry they just start how to do desktop application [inaudible] little bit of server. But with the cloud we need extra skills, so this is a big issue in the industry of engineers or at least a little bit of skills. If they only know sequential programming, if they don't know any concurrency and cloud aspects, elasticity then you have to train them another two years to have those skills.
So to solve that problem we have this book also called Mastering Cloud Computing, for example, for the Indian market. Several universities in India have introduced this subject.
So in the Indian context even if there are ten universities, it covers half of the country.
There is just one university covering an entire state. For example Karnataka State in
Bangalore there is a university called VTU, Visvesvaraya Technological University. So they cover all of them. If they introduce it academically all the people come out with these skills. So there are several universities who have introduced it so there are people with skills in this area by textbook. And then of course in engineering eduction in India they also want to make sure that students have some hands-on experience, the lab
[inaudible], PC lab or different labs. So they also set up a private cloud lab using
[inaudible] computers, putting Aneka software and teaching courses in this area. So there's another way how we are helping so that the skilled manpower can also come into the workforce.
I'm concluding so this is our Manjrasoft site. You can find more and you can download an evaluation copy and explore the SDK and some examples, [inaudible] to this and that. This is Manjrasoft.com. Can anybody guess why did I put this Manjrasoft.com vertically?
>>: It didn't fit the other way.
>> Rajkumar Buyya: [Laughing] Any other answers? So one reason is most of the time if I give this talk, same talk in India they organize until like 10:30. Because morning people never come, traffic problems; this is a problem. They always organize after lunch at 3:00 to 4:00 or 2:00 to 3:00. So as you know at a time like they, they are organizing
[inaudible] lecture [inaudible] very, very nice chair. Not like here. Sometimes you can fall down if you sit down on this but their chairs are very, very nice and air conditioned and they have a nice lunch. They eat masala dosa. You know masala dosa? Oh, you should go you'd get masala dosa. Did you go to India? I'm sorry. Yeah, next time when you come to Melbourne please let me know; we'll go to one place. We'll eat masala dosa together. Then you will see the effect later. Especially if you take it for lunch, you can fall asleep for ten minutes very quickly. It's good to do. Then you take a good nap and you'll be energized better. So they sleep. And some of them people are asleep and they put their head down on another person. For those people, some of the people when they're asleep and when you coming to the conclusion they wake up. They straighten their head. That's okay. But there are some lazy guys, so they sleep like this and they don't want to wake up. They just want to see it like that. They'll open their eyes and want to see. For all those people I want to make sure at least they can remember Manjrasoft.
If they...
>>: So make it on both sides.
>> Rajkumar Buyya: Yeah, both sides. [Inaudible]. Yeah, thank you for this advice. I should do that today after the seminar. I will add that slide also. So that others also can
–
The other way it looks very funny, right? This way. Hard to read. Yeah, so that is the reason why I put it that way. This is very, very important. Inquisitive nature. So those people can go home and explore. And of course if they slept there, good things can happen. Sleeping is a luxury these days.
To conclude, there are several computing paradigms have promised this vision of computing as a utility, so today cloud computing is making this into a reality. Right?
There's no more theory. Consumer applications are there. Several business applications are there. I think more will come as progress happens from everywhere. Every company has a cloud strategy and mobility strategy, application strategy which is good. So of course there are several platforms that can be used; Aneka is one of them at least from the point of view of application engineering. How do we engineer applications rapidly and quickly, that way we can minimize the software engineering cost and the time. So this is very important: time and cost. Especially if you're targeting to build application services for the Indian market. There people don't have so much money. If you invest so
much money in building applications then obviously the service will also be costly. If we can quickly put it together then the chance is that the service cost will also be low.
So that is what I'm emphasizing. There are many engineering applications, life science, gaming. There are another few case studies there, so I think these three are just enough to illustrate the power of this platform. And then this aspect of market orientation I emphasized; this is also no more theory. I think it is already coming up. If you go visit
Computenext.com you will see the people and they also seem to be doing a good job and other companies like Virtual Appliance. You have application, make a virtual appliance. If the [inaudible] they charge automatically and just collect the money from
Amazon. I don't know about Microsoft Azure but you can do that in appliance space. So this slowly is becoming real and real. I think as we go along we will see much more reality. Okay, so of course not just the Indian market but also American market is very important for everybody; therefore, I make sure that there is also a book available here,
Mastering Cloud Computing through Morgan Kauffman, I think. I understand they are a dominant publisher for the computer science market [inaudible]. And of course the price varies as you know. The content is the same. When you sell the same book here in the
U.S. I think they're selling it depending upon where you buy from 69 dollars to 80 dollars.
Correct? And the same book, you go to India that price won't work.
Only one or two people will buy. But if you want to have a thousand universities to buy, we have this Tata McGraw Hill. Tata is somebody who sells from salt to software.
Correct? From salt to software business so they're also having a book business as well.
So this Tata McGraw Hill. They sell it for I think around 350 dollar – sorry, 350 rupees.
350 rupees equal probably 8 to 9 dollars which is affordable. This is the strategy. I think we should think in terms of pricing services. So basically the publishers are licensed to operate in a specific market to meet that customer, like Nepal, India, Pakistan and Sri
Lanka those countries where it is affordable.
Then of course if you to places like China, English won't work. You should have it in the
Mandarin language. So there is also one in that language as well. Okay, so I think this book – Anyway if you want to learn more about it, deeper, more examples, how to program a cloud using things like Aneka and general concepts, this book covers that.
Then the last chapter talks about advanced topics in cloud computing. Something in the future like market, energy [inaudible]; although, still not available [inaudible]. So that is for researchers. Okay, and of course some of you are Microsoft Research people so you guys have to write papers, right? You write papers and you need to publish and this is one [inaudible] available: IEEE Transactions Cloud Computing. I happen to be foundation Editor-in-Chief of this. So I would welcome to submit quality papers as well.
Okay, let me stop here.
Thank you very much for attending this seminar. I'm happy to take questions, comments, discussion. Yes, of course, these are two halves. In case you don't have Ph.D. I want to have one, one to come to Melbourne. You are most welcome to apply there as well. So
University of Melbourne is Australia's various ranking – they say there is [inaudible] in
Australia. Hopefully [inaudible] can endorse? Is that true? Yeah, [inaudible]. So a good place to do Ph.D. or you can do it here at Washington University. But this is my contact for research collaboration. I actually used to have good collaboration with Microsoft
Research in Beijing when the Beijing MSR was managing Australia. So now that it has shifted to Seattle, it's good to be a link as well. So we can something enabled by
[inaudible]. And of course Manjrasoft. This is just a – It's going by [inaudible]. We don't
have any special marketing for Microsoft. This is just happening. Somebody comes and they introduce the subject. So far other customers have come by their own accord with very little marketing. Obviously I'm looking for tips looking into how we can do better by working with Microsoft. Okay, thank you.
>> Navendu Jain: Any followup questions?
>> Rajkumar Buyya: Questions?
[Applause]