130 likes | 149 Views
Moving applications to cloud. Moving Applications to the Cloud. The process for determining whether, what, and when to move your applications to the cloud involves an analysis of what critical features of the application need to be supported.
E N D
Moving Applications to the Cloud • The process for determining whether, what, and when to move your applications to the cloud involves an analysis of what critical features of the application need to be supported. • After those critical features are understood, you can determine the features supported by your particular cloud service provider to see whether the cloud can support the application's critical features
Moving Applications to the Cloud Two examples of application porting to the cloud are discussed in this chapter. • physical hardware is eliminated by moving the entire application to the cloud. • In the second example, a system is essentially cloned to the cloud to provide an overflow capability called cloud bursting
ACID These properties necessary to guarantee a reliable transaction in databases and other applications and the technologies necessary to achieve • Atomicity: The atomic property defines a transaction as something that cannot be subdivided and must be completed or abandoned as a unit. • Consistency: The consistency property states that the system must go from one known state to another and that the system integrity must be maintained. • Isolation: The isolation property states that the system cannot have other transactions operate on data that is currently being processed by a transaction. • Durability: The durability property states that the system must have a mechanism to recover from committed transactions should that be necessary.
Functionality mapping • Some applications can be successfully ported to the cloud, while others suffer from the translation. Understanding whether your particular application can benefit from cloud deployment requires that you deconstruct your application's functionality into its basic components and identify which functions are critical and can be supported by the cloud. • An attribute tree is constructed for an order transaction system where the functionality is decomposed into different functional areas. At the top are high-level attributes; some of these functions are essential to the operation of the application while others are not. Drilling down on the data management attribute,
the second level explores data access and then access methods. A critical attribute for the application is the need to be able to access data when the client is both online and offline.
We can conclude that an application that gets the most value from a cloud deployment is one that uses online storage without the need for offline storage. • An application that needed offline storage alone might not benefit from a cloud deployment at all. • In the case of a hybrid application, other factors such as scalability, costs, or ubiquitous access might offset the cost of offline access and make the cloud more attractive.
Deconstructing is only half process. Applications that benefit from deployment in clouds are those who meets these criteria: • Are not mission critical • Are not core business functions • Do not have sensitive data to protect • Tolerate high network latencies or low network bandwidth • Are based on industry standard technologies • Are mature enough and understood well enough to be successfully ported to the cloud
Cloud bursting Many cloud deployments are hybrid applications: • Part of the application is on a local system, and part is in the cloud. • Often, this is the first stop on the path for many organizations migrating their applications to the cloud. • There are many reasons why this is desirable, but one of the most common reasons is that the cloud can serve as excess capacity at times of high volume. This type of hybrid has been called cloud bursting
An application that provides for transaction overflow in a reservation system is an example of cloud bursting.
Reservation systems require that transactions are not only atomic but when a pool of items is being reserved, system is consistent. • When a transaction enters a local branch and another enters cloud branch, both cannot reserve same item. • So there must be a transaction manager to manage the pool. • This mechanism performs a set of record locking on database records and when a transaction completes, the system performs commit operation.