The Cloud Reference Model Defines 7-Layers of Application Architecture – An Example
April 13, 2010, 2:20 pm
Filed under: Uncategorized | Tags: , , , ,

By: Teresa Tung

Last time I defined a Cloud Reference Model to bring concreteness to cloud-based application architecture.  Here I provide an example that illustrates the components of this 7-layer stack.  Consider media transcoding where users input data files of one format and the application outputs the files in a different format. 

Here the Application Layer contains the program that transcodes each file and that creates the end-user interface for accepting the commands and presenting the data files.  The code interfaces with the APIs from the Transformation Layer with minimal concern for the underlying computing platform.

Next the Transformation Layer transforms the program code and collected data to suit the platform.  In the case where Amazon provides the platform for storage and message queue, these transformations handle the details of an Application Layer’s “put” and “get” instructions specific to the underlying Amazon interface:  the code with APIs for SQS to log status and with S3 to access the files, and the data for storage in S3.  For example, this is breaking a large data object into smaller pieces for storage on the cloud, and upon retrieval recombining and checking the object.  Changing the platform from Amazon requires updates to “put” and “get” implementations.

At this point, let’s assume that the lower layer implementation of the message queue and storage are handled by Amazon.  In return we accept Amazon’s guarantees for this functionality:  99.9% availability and no latency guarantees.  What remains our responsibility is to complete the platform to handle the processing.

Within the Control Layer, controller logic determines the number and type of appliances to meet desired guarantees, that is, it requires 5 large images to meet a time constraint of 24 hours, and locate in Amazon’s west coast region to be physically close to the data stored on S3.  With the help of constant monitoring from the Instantiation Layer below, logic scales the number of appliance to meet delays.  By implementing the logic, we control the placement of appliances, the time constraint, and the availability. 

Based on the determination of the Control Layer, the Instantiation Layer automates the scripts to provision the appliances.  For Amazon’s EC2, these provisioning scripts supply Amazon credentials, apply configuration, load the content, and perform error handling if the returned appliance is faulty (e.g., memory errors).

The responsibility to create the EC2 machine image is at the Appliance Layer.  In this case, create a job scheduler appliance by installing the BOINC control process software to choreograph and distribute the files and a worker appliance using the BOINC client software that runs the transcoding program. 

Finally within Amazon, Xen virtualization software carves the virtual machine from the physical resources at the Virtualization Layer.  And the Physical Layer deals with data center concerns with supplying power, cooling, compute to support the virtual machines.

At each layer, the IT functions focus one level of abstraction with minimal concern for other details.  Combining the solutions forms the overall cloud architecture. Stay tuned next time for an overdue definition of cloud and how to use the model.

Kevin’s Urgent Jobs at Accenture

BEA/Oracle Fusion Middleware Administrator – Consultant

Oracle Fusion Middleware AIA Consulting Manager

Oracle Fusion Middleware Application Integration Architecture Consultant

Oracle Fusion Middleware SOA Manager

Oracle Fusion Middleware SOA – Consultant

P2ES Functional Lead Consultant Houston, or Denver

Consulting Manager of Datacenter Migration/Relocation

Sr. Informatica Developer – Edison, NJ

Advertisements

Leave a Comment so far
Leave a comment



Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s



%d bloggers like this: