case study on amazon ec2

Upload: nirav68127245

Post on 07-Apr-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 Case Study on Amazon Ec2

    1/30

  • 8/3/2019 Case Study on Amazon Ec2

    2/30

    Advance Computing Technology 080380107046

    RKCET(CE) 66 | P a g e

  • 8/3/2019 Case Study on Amazon Ec2

    3/30

    Advance Computing Technology 080380107046

    RKCET(CE) 67 | P a g e

    8. Parallel Computer

    I. A. What is Parallel Computing?

    Traditionally, software has been written for serialcomputation:

    o To be run on a single computer having a single Central Processing Unit

    (CPU);o A problem is broken into a discrete series of instructions.

    o Instructions are executed one after another.

    o Only one instruction may execute at any moment in time.

    In the simplest sense, parallel computingis the simultaneous use of multiple

    compute resources to solve a computational problem:

    o To be run using multiple CPUs

    o A problem is broken into discrete parts that can be solved concurrently

    o Each part is further broken down to a series of instructions

    o Instructions from each part execute simultaneously on different CPUs

  • 8/3/2019 Case Study on Amazon Ec2

    4/30

    Advance Computing Technology 080380107046

    RKCET(CE) 68 | P a g e

    For example:

    The compute resources might be:

    o A single computer with multiple processors;

    o An arbitrary number of computers connected by a network;

    o A combination of both.

    The computational problem should be able to:

    o Be broken apart into discrete pieces of work that can be solved

    simultaneously;

  • 8/3/2019 Case Study on Amazon Ec2

    5/30

    Advance Computing Technology 080380107046

    RKCET(CE) 69 | P a g e

    o Execute multiple program instructions at any moment in time;

    o Be solved in less time with multiple compute resources than with a single

    compute resource.

    The Universe is Parallel:

    Parallel computing is an evolution of serial computing that attempts to emulatewhat has always been the state of affairs in the natural world: many complex,

    interrelated events happening at the same time, yet within a sequence. For

    example:

    o Galaxy formation

    o Planetary movement

    o Weather and ocean

    patterns

    o Tectonic plate drift

    o Rush hour traffic

    o Automobile assembly line

    o Building a jet

    o Ordering a hamburger at

    the drive through.

    Uses for Parallel Computing:

    Historically, parallel computing has been considered to be "the high end of

    computing", and has been used to model difficult problems in many areas of

    science and engineering:

    o Atmosphere, Earth, Environment

    o Physics - applied, nuclear, particle, condensed matter, high pressure,

    fusion, photonics

    o Bioscience, Biotechnology, Genetics

    o Chemistry, Molecular Sciences

    o Geology, Seismology

    o Mechanical Engineering - from prosthetics to spacecraft

    o Electrical Engineering, Circuit Design, Microelectronics

    o Computer Science, Mathematics

    Today, commercial applications provide an equal or greater driving force in

    the development of faster computers. These applications require the

    processing of large amounts of data in sophisticated ways. For example:

    o Databases, data mining

    o Oil explorationo Web search engines, web based business services

    o Medical imaging and diagnosis

    o Pharmaceutical design

    o Management of national and multi-national corporations

    o Financial and economic modeling

    o Advanced graphics and virtual reality, particularly in the entertainment

    industry

    o Networked video and multi-media technologies

    o

    Collaborative work environments

  • 8/3/2019 Case Study on Amazon Ec2

    6/30

  • 8/3/2019 Case Study on Amazon Ec2

    7/30

    Advance Computing Technology 080380107046

    RKCET(CE) 71 | P a g e

    III. Flynn's Classical Taxonomy

    There are different ways to classify parallel computers. One of the more widely

    used classifications, in use since 1966, is called Flynn's Taxonomy. Flynn's taxonomy distinguishes multi-processor computer architectures according

    to how they can be classified along the two independent dimensions ofInstructionand Data. Each of these dimensions can have only one of twopossible states: Singleor Multiple.

    The matrix below defines the 4 possible classifications according to Flynn:

    S I S D

    Single Instruction, Single Data

    S I M D

    Single Instruction, Multiple Data

    M I S D

    Multiple Instruction, Single Data

    M I M D

    Multiple Instruction, Multiple Data

    Single Instruction, Single Data (SISD):

    A serial (non-parallel) computer Single Instruction: Only one instruction stream is being acted on by the CPU

    during any one clock cycle

    Single Data: Only one data stream is being used as input during any oneclock cycle

    Deterministic execution This is the oldest and even today, the most common type of computer Examples: older generation mainframes, minicomputers and workstations;

    most modern day PCs.

  • 8/3/2019 Case Study on Amazon Ec2

    8/30

    Advance Computing Technology 080380107046

    RKCET(CE) 72 | P a g e

    Single Instruction, Multiple Data (SIMD):

    A type of parallel computer

    Single Instruction: All processing units execute the same instruction at any

    given clock cycle

    Multiple Data: Each processing unit can operate on a different data element Best suited for specialized problems characterized by a high degree of

    regularity, such as graphics/image processing.

    Synchronous (lockstep) and deterministic execution

    Two varieties: Processor Arrays and Vector Pipelines

    Examples:

    o Processor Arrays: Connection Machine CM-2, MasPar MP-1 & MP-2,

    ILLIAC IV

    o Vector Pipelines: IBM 9000, Cray X-MP, Y-MP & C90, Fujitsu VP, NEC

    SX-2, Hitachi S820, ETA10

    Most modern computers, particularly those with graphics processor units(GPUs) employ SIMD instructions and execution units.

    Multiple Instruction, Single Data (MISD):

    A type of parallel computer

    Multiple Instruction: Each processing unit operates on the data

    independently via separate instruction streams.

    Single Data: A single data stream is fed into multiple processing units.

    Few actual examples of this class of parallel computer have ever existed. Oneis the experimental Carnegie-Mellon C.mmp computer (1971).

  • 8/3/2019 Case Study on Amazon Ec2

    9/30

    Advance Computing Technology 080380107046

    RKCET(CE) 73 | P a g e

    Some conceivable uses might be:

    o multiple frequency filters operating on a single signal stream

    o multiple cryptography algorithms attempting to crack a single coded

    message.

    o

    Multiple Instruction, Multiple Data (MIMD):

    A type of parallel computer

    Multiple Instruction: Every processor may be executing a different

    instruction stream

    Multiple Data: Every processor may be working with a different data stream

    Execution can be synchronous or asynchronous, deterministic or non-

    deterministic

    Currently, the most common type of parallel computer - most modernsupercomputers fall into this category.

    Examples: most current supercomputers, networked parallel computer

    clusters and "grids", multi-processor SMP computers, multi-core PCs.

    Note: many MIMD architectures also include SIMD execution sub-

    components

  • 8/3/2019 Case Study on Amazon Ec2

    10/30

    Advance Computing Technology 080380107046

    RKCET(CE) 74 | P a g e

    IV. Parallel Computer Memory Architectures:

    Shared Memory

    General Characteristics:

    Shared memory parallel computers vary widely, but generally have in

    common the ability for all processors to access all memory as global addressspace.

    Multiple processors can operate independently but share the same memory

    resources.

    Changes in a memory location effected by one processor are visible to all

    other processors.

    Shared memory machines can be divided into two main classes based upon

    memory access times: UMA and

    Uniform Memory Access (UMA):

    Most commonly represented today by Symmetric Multiprocessor (SMP)

    machines Identical processors

    Equal access and access times to memory

    Sometimes called CC-UMA - Cache Coherent UMA. Cache coherent means if

    one processor updates a location in shared memory, all the other processors

    know about the update. Cache coherency is accomplished at the hardware

    level.

    Shared Memory (UMA)

    Non-Uniform Memory Access (NUMA):

    Often made by physically linking two or more SMPs

    One SMP can directly access memory of another SMP

    Not all processors have equal access time to all memories

    Memory access across link is slower

    If cache coherency is maintained, then may also be called CC-NUMA - Cache

    Coherent NUMA

  • 8/3/2019 Case Study on Amazon Ec2

    11/30

    Advance Computing Technology 080380107046

    RKCET(CE) 75 | P a g e

    Shared Memory (NUMA)

    Advantages:

    Global address space provides a user-friendly programming perspective to

    memory

    Data sharing between tasks is both fast and uniform due to the proximity of

    memory to CPUs

    Disadvantages:

    Primary disadvantage is the lack of scalability between memory and CPUs.

    Adding more CPUs can geometrically increases traffic on the shared memory-

    CPU path, and for cache coherent systems, geometrically increase traffic

    associated with cache/memory management.

    Programmer responsibility for synchronization constructs that ensure "correct"

    access of global memory.

    Expense: it becomes increasingly difficult and expensive to design and

    produce shared memory machines with ever increasing numbers ofprocessors.

    distributed Memory

    General Characteristics:

    Like shared memory systems, distributed memory systems vary widely but

    share a common characteristic. Distributed memory systems require a

    communication network to connect inter-processor memory.

    Processors have their own local memory. Memory addresses in one

    processor do not map to another processor, so there is no concept of global

    address space across all processors. Because each processor has its own local memory, it operates independently.

  • 8/3/2019 Case Study on Amazon Ec2

    12/30

    Advance Computing Technology 080380107046

    RKCET(CE) 76 | P a g e

    Changes it makes to its local memory have no effect on the memory of other

    processors. Hence, the concept of cache coherency does not apply.

    When a processor needs access to data in another processor, it is usually the

    task of the programmer to explicitly define how and when data is

    communicated. Synchronization between tasks is likewise the programmer'sresponsibility.

    The network "fabric" used for data transfer varies widely, though it can can be

    as simple as Ethernet.

    Advantages:

    Memory is scalable with the number of processors. Increase the number of

    processors and the size of memory increases proportionately.

    Each processor can rapidly access its own memory without interference and

    without the overhead incurred with trying to maintain cache coherency.

    Cost effectiveness: can use commodity, off-the-shelf processors and

    networking.Disadvantages:

    The programmer is responsible for many of the details associated with data

    communication between processors.

    It may be difficult to map existing data structures, based on global memory, to

    this memory organization.

    Non-uniform memory access (NUMA) times

    Hybrid Distributed-Shared Memory

    The largest and fastest computers in the world today employ both shared and

    distributed memory architectures. The shared memory component can be a cache coherent SMP machine

    and/or graphics processing units (GPU).

    The distributed memory component is the networking of multiple SMP/GPU

    machines, which know only about their own memory - not the memory on

    another machine. Therefore, network communications are required to move

    data from one SMP/GPU to another.

    Current trends seem to indicate that this type of memory architecture will

    continue to prevail and increase at the high end of computing for the

    foreseeable future.

    Advantages and Disadvantages: whatever is common to both shared and

    distributed memory architectures.

  • 8/3/2019 Case Study on Amazon Ec2

    13/30

  • 8/3/2019 Case Study on Amazon Ec2

    14/30

    Advance Computing Technology 080380107046

    RKCET(CE) 78 | P a g e

    CASE STUDY ON AMAZON EC2

    This below facility shows how businesses are leveraging Amazon Web Services

    scalable, reliable and cost-effective cloud technology.

    Application HostingBackup and Storage

    Content Delivery

    E-Commerce

    High Performance Computing

    Media Hosting

    On-Demand Workforce

    Search Engines

    Web Hosting

    Amazon Elastic Compute Cloud (Amazon EC2) is a web service that providesresizable compute capacity in the cloud. It is designed to make web-scale computing

    easier for developers.

    Amazon EC2s simple web service interface allows you to obtain and configure

    capacity with minimal friction. It provides you with complete control of your

    computing resources and lets you run on Amazons proven computing environment.

    Amazon EC2 reduces the time required to obtain and boot new server instances to

    minutes, allowing you to quickly scale capacity, both up and down, as your

    computing requirements change. Amazon EC2 changes the economics of computingby allowing you to pay only for capacity that you actually use. Amazon EC2 provides

    developers the tools to build failure resilient applications and isolate themselves from

    common failure scenarios.

    Amazon EC2 Functionality

    Amazon EC2 presents a true virtual computing environment, allowing you to useweb service interfaces to launch instances with a variety of operating systems, loadthem with your custom application environment, manage your networks access

    permissions, and run your image using as many or few systems as you desire.

    To use Amazon EC2, you simply:

    Select a pre-configured, templated image to get up and running immediately.Or create an Amazon Machine Image (AMI) containing your applications,libraries, data, and associated configuration settings.

    Configure security and network access on your Amazon EC2 instance. Choose which instance type(s) and operating system you want, then start,

    terminate, and monitor as many instances of your AMI as needed, using theweb service APIs or the variety of management tools provided.

    Determine whether you want to run in multiple locations, utilize static IPendpoints, or attach persistent block storage to your instances.

    http://aws.amazon.com/solutions/case-studies/#apphttp://aws.amazon.com/solutions/case-studies/#apphttp://aws.amazon.com/solutions/case-studies/#backuphttp://aws.amazon.com/solutions/case-studies/#backuphttp://aws.amazon.com/solutions/case-studies/#contenthttp://aws.amazon.com/solutions/case-studies/#contenthttp://aws.amazon.com/solutions/case-studies/#ecommercehttp://aws.amazon.com/solutions/case-studies/#ecommercehttp://aws.amazon.com/solutions/case-studies/#hpchttp://aws.amazon.com/solutions/case-studies/#hpchttp://aws.amazon.com/solutions/case-studies/#mediahttp://aws.amazon.com/solutions/case-studies/#mediahttp://aws.amazon.com/solutions/case-studies/#ondemandhttp://aws.amazon.com/solutions/case-studies/#ondemandhttp://aws.amazon.com/solutions/case-studies/#searchhttp://aws.amazon.com/solutions/case-studies/#searchhttp://aws.amazon.com/solutions/case-studies/#webhttp://aws.amazon.com/solutions/case-studies/#webhttp://aws.amazon.com/solutions/case-studies/#webhttp://aws.amazon.com/solutions/case-studies/#searchhttp://aws.amazon.com/solutions/case-studies/#ondemandhttp://aws.amazon.com/solutions/case-studies/#mediahttp://aws.amazon.com/solutions/case-studies/#hpchttp://aws.amazon.com/solutions/case-studies/#ecommercehttp://aws.amazon.com/solutions/case-studies/#contenthttp://aws.amazon.com/solutions/case-studies/#backuphttp://aws.amazon.com/solutions/case-studies/#app
  • 8/3/2019 Case Study on Amazon Ec2

    15/30

  • 8/3/2019 Case Study on Amazon Ec2

    16/30

    Advance Computing Technology 080380107046

    RKCET(CE) 80 | P a g e

    InexpensiveAmazon EC2 passes on to you the financial benefits of Amazonsscale. You pay a very low rate for the compute capacity you actually consume. SeeAmazon EC2 Instance Purchasing Optionsfor a more detailed description.

    On-Demand Instances On-Demand Instances let you pay for compute

    capacity by the hour with no long-term commitments. This frees you from thecosts and complexities of planning, purchasing, and maintaining hardwareand transforms what are commonly large fixed costs into much smallervariable costs. On-Demand Instances also remove the need to buy safetynet capacity to handle periodic traffic spikes.

    Reserved Instances Reserved Instances give you the option to make a low,one-time payment for each instance you want to reserve and in turn receive asignificant discount on the hourly usage charge for that instance. After theone-time payment for an instance, that instance is reserved for you, and youhave no further obligation; you may choose to run that instance for thediscounted usage rate for the duration of your term, or when you do not use

    the instance, you will not pay usage charges on it. Spot Instances Spot Instances allow customers to bid on unused Amazon

    EC2 capacity and run those instances for as long as their bid exceeds thecurrent Spot Price. The Spot Price changes periodically based on supply anddemand, and customers whose bids meet or exceed it gain access to theavailable Spot Instances. If you have flexibility in when your applications canrun, Spot Instances can significantly lower your Amazon EC2 costs.

    Features

    Amazon EC2 provides a number of powerful features for building scalable, failureresilient, enterprise class applications, including:

    Amazon Elastic Block Store Amazon Elastic Block Store (EBS) offerspersistent storage for Amazon EC2 instances. Amazon EBS volumes provideoff-instance storage that persists independently from the life of an instance.Amazon EBS volumes are highly available, highly reliable volumes that canbe leveraged as an Amazon EC2 instances boot partition or attached to arunning Amazon EC2 instance as a standard block device. When used as aboot partition, Amazon EC2 instances can be stopped and subsequentlyrestarted, enabling you to only pay for the storage resources used while

    maintaining your instances state. Amazon EBS volumes offer greatlyimproved durability over local Amazon EC2 instance stores, as Amazon EBSvolumes are automatically replicated on the backend (in a single AvailabilityZone). For those wanting even more durability, Amazon EBS provides theability to create point-in-time consistent snapshots of your volumes that arethen stored in Amazon S3, and automatically replicated across multipleAvailability Zones. These snapshots can be used as the starting point for newAmazon EBS volumes, and can protect your data for long term durability. Youcan also easily share these snapshots with co-workers and other AWSdevelopers. See Amazon Elastic Block Store for more details on this feature.

    Multiple Locations Amazon EC2 provides the ability to place instances inmultiple locations. Amazon EC2 locations are composed of Regions and

    http://d36cz9buwru1tt.cloudfront.net/pdf/AWS_Security_Whitepaper.pdfhttp://d36cz9buwru1tt.cloudfront.net/pdf/AWS_Security_Whitepaper.pdfhttp://d36cz9buwru1tt.cloudfront.net/pdf/AWS_Security_Whitepaper.pdfhttp://d36cz9buwru1tt.cloudfront.net/pdf/AWS_Security_Whitepaper.pdfhttp://d36cz9buwru1tt.cloudfront.net/pdf/AWS_Security_Whitepaper.pdfhttp://d36cz9buwru1tt.cloudfront.net/pdf/AWS_Security_Whitepaper.pdfhttp://d36cz9buwru1tt.cloudfront.net/pdf/AWS_Security_Whitepaper.pdfhttp://d36cz9buwru1tt.cloudfront.net/pdf/AWS_Security_Whitepaper.pdfhttp://d36cz9buwru1tt.cloudfront.net/pdf/AWS_Security_Whitepaper.pdfhttp://aws.amazon.com/ec2/purchasing-optionshttp://aws.amazon.com/ec2/purchasing-optionshttp://aws.amazon.com/ec2/purchasing-options
  • 8/3/2019 Case Study on Amazon Ec2

    17/30

    Advance Computing Technology 080380107046

    RKCET(CE) 81 | P a g e

    Availability Zones. Availability Zones are distinct locations that are engineeredto be insulated from failures in other Availability Zones and provideinexpensive, low latency network connectivity to other Availability Zones in thesame Region. By launching instances in separate Availability Zones, you canprotect your applications from failure of a single location. Regions consist of

    one or more Availability Zones, are geographically dispersed, and will be inseparate geographic areas or countries. TheAmazon EC2 Service LevelAgreementcommitment is 99.95% availability for each Amazon EC2 Region.Amazon EC2 is currently available in six regions: US East (Northern Virginia),US West (Northern California), EU (Ireland), Asia Pacific (Singapore), AsiaPacific (Tokyo), andAWS GovCloud.

    Elastic IP Addresses Elastic IP addresses are static IP addressesdesigned for dynamic cloud computing. An Elastic IP address is associatedwith your account not a particular instance, and you control that address untilyou choose to explicitly release it. Unlike traditional static IP addresses,

    however, Elastic IP addresses allow you to mask instance or Availability Zonefailures by programmatically remapping your public IP addresses to anyinstance in your account. Rather than waiting on a data technician toreconfigure or replace your host, or waiting for DNS to propagate to all of yourcustomers, Amazon EC2 enables you to engineer around problems with yourinstance or software by quickly remapping your Elastic IP address to areplacement instance. In addition, you can optionally configure the reverseDNS record of any of your Elastic IP addresses by filling out thisform.

    Amazon Virtual Private Cloud Amazon VPC is a secure and seamlessbridge between a companys existing IT infrastructure and the AWS cloud.Amazon VPC enables enterprises to connect their existing infrastructure to aset of isolated AWS compute resources via a Virtual Private Network (VPN)connection, and to extend their existing management capabilities such assecurity services, firewalls, and intrusion detection systems to include theirAWS resources.

    Amazon CloudWatch Amazon CloudWatch is a web service that providesmonitoring for AWS cloud resources and applications, starting with AmazonEC2. It provides you with visibility into resource utilization, operationalperformance, and overall demand patternsincluding metrics such as CPU

    utilization, disk reads and writes, and network traffic. You can get statistics,view graphs, and set alarms for your metric data. To use AmazonCloudWatch, simply select the Amazon EC2 instances that youd like tomonitor. You can also supply your own business or application metric data.Amazon CloudWatch will begin aggregating and storing monitoring data thatcan be accessed using web service APIs or Command Line Tools. AutoScaling Auto Scaling allows you to automatically scale your Amazon EC2capacity up or down according to conditions you define. With Auto Scaling,you can ensure that the number of Amazon EC2 instances youre usingscales up seamlessly during demand spikes to maintain performance, andscales down automatically during demand lulls to minimize costs. Auto

    Scaling is particularly well suited for applications that experience hourly, daily,or weekly variability in usage. Auto Scaling is enabled by Amazon

    http://aws.amazon.com/ec2-slahttp://aws.amazon.com/ec2-slahttp://aws.amazon.com/ec2-slahttp://aws.amazon.com/ec2-slahttp://aws.amazon.com/govcloud-us/http://aws.amazon.com/govcloud-us/http://aws.amazon.com/govcloud-us/https://aws-portal.amazon.com/gp/aws/html-forms-controller/contactus/ec2-email-limit-rdns-requesthttps://aws-portal.amazon.com/gp/aws/html-forms-controller/contactus/ec2-email-limit-rdns-requesthttps://aws-portal.amazon.com/gp/aws/html-forms-controller/contactus/ec2-email-limit-rdns-requesthttps://aws-portal.amazon.com/gp/aws/html-forms-controller/contactus/ec2-email-limit-rdns-requesthttp://aws.amazon.com/govcloud-us/http://aws.amazon.com/ec2-slahttp://aws.amazon.com/ec2-sla
  • 8/3/2019 Case Study on Amazon Ec2

    18/30

    Advance Computing Technology 080380107046

    RKCET(CE) 82 | P a g e

    CloudWatch and available at no additional charge beyond AmazonCloudWatch fees.

    Elastic Load Balancing Elastic Load Balancing automatically distributesincoming application traffic across multiple Amazon EC2 instances. It enables

    you to achieve even greater fault tolerance in your applications, seamlesslyproviding the amount of load balancing capacity needed in response toincoming application traffic. Elastic Load Balancing detects unhealthyinstances within a pool and automatically reroutes traffic to healthy instancesuntil the unhealthy instances have been restored. You can enable ElasticLoad Balancing within a single Availability Zone or across multiple zones foreven more consistent application performance. Amazon CloudWatch can beused to capture a specific Elastic Load Balancers operational metrics, suchas request count and request latency, at no additional cost beyond ElasticLoad Balancing fees.

    High Performance Computing (HPC) Clusters Customers with complexcomputational workloads such as tightly coupled parallel processes, or withapplications sensitive to network performance, can achieve the same highcompute and network performance provided by custom-built infrastructurewhile benefiting from the elasticity, flexibility and cost advantages of AmazonEC2. Cluster Compute and Cluster GPU Instances have been specificallyengineered to provide high-performance network capability and can beprogrammatically launched into clusters allowing applications to get the low-latency network performance required for tightly coupled, node-to-nodecommunication. Cluster Compute and Cluster GPU Instances also providesignificantly increased network throughput making them well suited forcustomer applications that need to perform network-intensive operations.

    VM Import VM Import enables you to easily import virtual machine imagesfrom your existing environment to Amazon EC2 instances. VM Import allowsyou to leverage your existing investments in the virtual machines that youhave built to meet your IT security, configuration management, andcompliance requirements by seamlessly bringing those virtual machines intoAmazon EC2 as ready-to-use instances. This offering is available at noadditional charge beyond standard usage charges for Amazon EC2 andAmazon S3.

    Instance Types

    Standard Instances

    Instances of this family are well suited for most applications.

    Small Instance (Default) 1.7 GB of memory, 1 EC2 Compute Unit (1 virtualcore with 1 EC2 Compute Unit), 160 GB of local instance storage, 32-bitplatform

    Large Instance 7.5 GB of memory, 4 EC2 Compute Units (2 virtual cores with

    2 EC2 Compute Units each), 850 GB of local instance storage, 64-bit platform

  • 8/3/2019 Case Study on Amazon Ec2

    19/30

    Advance Computing Technology 080380107046

    RKCET(CE) 83 | P a g e

    Extra Large Instance 15 GB of memory, 8 EC2 Compute Units (4 virtual coreswith 2 EC2 Compute Units each), 1690 GB of local instance storage, 64-bitplatform

    Micro Instances

    Instances of this family provide a small amount of consistent CPU resources andallow you to burst CPU capacity when additional cycles are available. They are wellsuited for lower throughput applications and web sites that consume significantcompute cycles periodically.

    Micro Instance 613 MB of memory, up to 2 ECUs (for short periodic bursts),EBS storage only, 32-bit or 64-bit platform

    High-Memory Instances

    Instances of this family offer large memory sizes for high throughput applications,including database and memory caching applications.

    High-Memory Extra Large Instance 17.1 GB memory, 6.5 ECU (2 virtual coreswith 3.25 EC2 Compute Units each), 420 GB of local instance storage, 64-bitplatform

    High-Memory Double Extra Large Instance 34.2 GB of memory, 13 EC2Compute Units (4 virtual cores with 3.25 EC2 Compute Units each), 850 GBof local instance storage, 64-bit platform

    High-Memory Quadruple Extra Large Instance 68.4 GB of memory, 26 EC2Compute Units (8 virtual cores with 3.25 EC2 Compute Units each), 1690 GBof local instance storage, 64-bit platform

    High-CPU Instances

    Instances of this family have proportionally more CPU resources than memory(RAM) and are well suited for compute-intensive applications.

    High-CPU Medium Instance 1.7 GB of memory, 5 EC2 Compute Units (2virtual cores with 2.5 EC2 Compute Units each), 350 GB of local instancestorage, 32-bit platform

    High-CPU Extra Large Instance 7 GB of memory, 20 EC2 Compute Units (8virtual cores with 2.5 EC2 Compute Units each), 1690 GB of local instancestorage, 64-bit platform

    Cluster Compute Instances

    Instances of this family provide proportionally high CPU with increased networkperformance and are well suited for High Performance Compute (HPC) applicationsand other demanding network-bound applications

    Cluster Compute Quadruple Extra Large 23 GB memory, 33.5 EC2 Compute Units,

    1690 GB of local instance storage, 64-bit platform, 10 Gigabit Ethernet

  • 8/3/2019 Case Study on Amazon Ec2

    20/30

    Advance Computing Technology 080380107046

    RKCET(CE) 84 | P a g e

    Cluster GPU Instances

    Instances of this family provide general-purpose graphics processing units (GPUs)with proportionally high CPU and increased network performance for applicationsbenefitting from highly parallelized processing, including HPC, rendering and media

    processing applications. While Cluster Compute Instances provide the ability tocreate clusters of instances connected by a low latency, high throughput network,Cluster GPU Instances provide an additional option for applications that can benefitfrom the efficiency gains of the parallel computing power of GPUs over what can beachieved with traditional processors.

    Cluster GPU Quadruple Extra Large 22 GB memory, 33.5 EC2 ComputeUnits, 2 x NVIDIA Tesla Fermi M2050 GPUs, 1690 GB of local instancestorage, 64-bit platform, 10 Gigabit Ethernet

    EC2 Compute Unit (ECU) One EC2 Compute Unit (ECU) provides the equivalent

    CPU capacity of a 1.0-1.2 GHz 2007 Opteron or 2007 Xeon processor.

    Operating Systems and Software

    Operating Systems

    Amazon Machine Images (AMIs) are preconfigured with an ever-growing list ofoperating systems. We work with our partners and community to provide you withthe most choice possible. You are also empowered to use our bundling tools toupload your own operating systems. The operating systems currently available to

    use with your Amazon EC2 instances include:

    Operating SystemsRed Hat Enterprise Linux Windows Server Oracle Enterprise Linux SUSE Linux Enterprise Amazon Linux AMI Ubuntu LinuxFedora Gentoo Linux Debian

    Software

    Amazon EC2 enables our partners and customers to build and customize Amazon

    Machine Images (AMIs) with software based on your needs. We have hundreds offree and paid AMIs available for you to use. A small sampling of the softwareavailable for use today within Amazon EC2 includes:

    Databases ResourceManagement

    Web Hosting

    IBM DB2 StackIQ Rocks+ Apache HTTPIBM Informix DynamicServer

    Hadoop IIS/Asp.Net

    Microsoft SQL ServerStandard

    Condor IBM Lotus Web ContentManagement

    MySQL Enterprise IBM WebSphere Portal Server

    http://aws.amazon.com/rhelhttp://aws.amazon.com/windowshttp://aws.amazon.com/windowshttp://aws.amazon.com/solutions/featured-partners/oracle/http://aws.amazon.com/solutions/featured-partners/oracle/http://aws.amazon.com/susehttp://aws.amazon.com/susehttp://aws.amazon.com/amazon-linux-amihttp://aws.amazon.com/ec2/running_databases/http://aws.amazon.com/ibmhttp://aws.amazon.com/solutions/solution-providers/stackiq/http://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/windowshttp://aws.amazon.com/windowshttp://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/solutions/featured-partners/mysql/http://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/solutions/featured-partners/mysql/http://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/windowshttp://aws.amazon.com/windowshttp://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/solutions/solution-providers/stackiq/http://aws.amazon.com/ibmhttp://aws.amazon.com/ec2/running_databases/http://aws.amazon.com/amazon-linux-amihttp://aws.amazon.com/susehttp://aws.amazon.com/solutions/featured-partners/oracle/http://aws.amazon.com/windowshttp://aws.amazon.com/rhel
  • 8/3/2019 Case Study on Amazon Ec2

    21/30

    Advance Computing Technology 080380107046

    RKCET(CE) 85 | P a g e

    Oracle Database 11g

    Application Development

    Environments

    Application Servers Video Encoding &

    StreamingIBM sMash IBM WebSphere

    Application ServerWowza Media ServerPro

    JBoss Enterprise ApplicationPlatform

    Java Application Server Windows MediaServer

    Ruby on Rails Oracle WebLogic Server

    Pricing

    Pay only for what you use. There is no minimum fee. Estimate your monthly bill

    using AWS Simple Monthly Calculator. The prices listed are based on the Region inwhich your instance is running. For a detailed comparison between On-Demand

    Instances, Reserved Instances and Spot Instances, see Amazon EC2 Instance

    Purchasing Options.

    Free Tier*

    As part of AWSs Free Usage Tier , new AWS customers can get started with

    Amazon EC2 for free. Upon sign-up, new AWS customers receive the following EC2

    services each month for one year:

    750 hours of EC2 running Linux/Unix Micro instance usage

    750 hours of Elastic Load Balancing plus 15 GB data processing

    10 GB of Amazon Elastic Block Storage (EBS) plus 1 million IOs, 1 GB

    snapshot storage, 10,000 snapshot Get Requests and 1,000 snapshot Put

    Requests

    15 GB of bandwidth out aggregated across all AWS services

    1 GB of Regional Data Transfer

    http://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/ibmhttp://aws.amazon.com/solutions/featured-partners/oracle/http://aws.amazon.com/solutions/featured-partners/oracle/http://aws.amazon.com/solutions/featured-partners/oracle/
  • 8/3/2019 Case Study on Amazon Ec2

    22/30

    Advance Computing Technology 080380107046

    RKCET(CE) 86 | P a g e

    Case Study on Google App Engine

    Google App Engine lets you run your web applications on Google's infrastructure.

    App Engine applications are easy to build, easy to maintain, and easy to scale as

    your traffic and data storage needs grow. With App Engine, there are no servers to

    maintain: You just upload your application, and it's ready to serve your users.

    You can serve your app from your own domain name (such

    as http://www.example.com/) usingGoogle Apps. Or, you can serve your app using

    a free name on the appspot.com domain. You can share your application with the

    world, or limit access to members of your organization.

    Google App Engine supports apps written in several programming languages. With

    App Engine's Java runtime environment, you can build your app using standard Java

    technologies, including the JVM, Java servlets, and the Java programming

    languageor any other language using a JVM-based interpreter or compiler, suchas JavaScript or Ruby. App Engine also features a dedicated Python runtime

    environment, which includes a fast Python interpreter and the Python standard

    library, and a Go runtime environment that runs natively compiled Go code. These

    runtime environments are built to ensure that your application runs quickly, securely,

    and without interference from other apps on the system.

    With App Engine, you only pay for what you use. There are no set-up costs and no

    recurring fees. The resources your application uses, such as storage and bandwidth,

    are measured by the gigabyte, and billed at competitive rates. You control the

    maximum amounts of resources your app can consume, so it always stays within

    your budget.

    App Engine costs nothing to get started. All applications can use up to 1 GB of

    storage and enough CPU and bandwidth to support an efficient app serving around 5

    million page views a month, absolutely free. When you enable billing for your

    application, your free limits are raised, and you only pay for resources you use above

    the free levels.

    The Application Environment

    Google App Engine makes it easy to build an application that runs reliably, even

    under heavy load and with large amounts of data. App Engine includes the following

    features:

    dynamic web serving, with full support for common web technologies

    persistent storage with queries, sorting and transactions

    automatic scaling and load balancing

    APIs for authenticating users and sending email using Google Accounts

    http://www.google.com/a/http://www.google.com/a/http://www.google.com/a/http://www.google.com/a/
  • 8/3/2019 Case Study on Amazon Ec2

    23/30

    Advance Computing Technology 080380107046

    RKCET(CE) 87 | P a g e

    a fully featured local development environment that simulates Google App

    Engine on your computer

    task queues for performing work outside of the scope of a web request

    scheduled tasks for triggering events at specified times and regular intervals

    Your application can run in one of three runtime environments: the Go environment,

    theJavaenvironment, and thePythonenvironment. Each environment provides

    standard protocols and common technologies for web application development.

    The Sandbox

    Applications run in a secure environment that provides limited access to the

    underlying operating system. These limitations allow App Engine to distribute web

    requests for the application across multiple servers, and start and stop servers to

    meet traffic demands. The sandbox isolates your application in its own secure,

    reliable environment that is independent of the hardware, operating system and

    physical location of the web server.

    Examples of the limitations of the secure sandbox environment include:

    An application can only access other computers on the Internet through the

    provided URL fetch and email services. Other computers can only connect to

    the application by making HTTP (or HTTPS) requests on the standard ports.

    An application cannot write to the file system. An app can read files, but onlyfiles uploaded with the application code. The app must use the App Engine

    datastore, memcache or other services for all data that persists between

    requests.

    Application code only runs in response to a web request, a queued task, or a

    scheduled task, and must return response data within 30 seconds in any

    case. A request handler cannot spawn a sub-process or execute code after

    the response has been sent.

    The Go Runtime Environment

    App Engine's Go runtime environment provides a convenient way to implement and

    deploy web applications written in theGo Programming Language.

    The Go runtime environment uses Gorelease r58.1. The SDK includes the Go

    compiler and standard library, so it has no additional dependencies. As with the Java

    and Python environments, not all the standard library's functionality is available

    inside the sandbox. For example, attempts to open a socket or write to a file will

    return an os.EINVAL error.

    The SDK includes an automated build service to compile your app, so you'll neverneed to invoke the compiler yourself. Andas with the Python SDKyour app will

    http://java.sun.com/http://java.sun.com/http://java.sun.com/http://www.python.org/http://www.python.org/http://www.python.org/http://golang.org/http://golang.org/http://golang.org/http://golang.org/doc/devel/release.html#r58http://golang.org/doc/devel/release.html#r58http://golang.org/doc/devel/release.html#r58http://golang.org/doc/devel/release.html#r58http://golang.org/http://www.python.org/http://java.sun.com/
  • 8/3/2019 Case Study on Amazon Ec2

    24/30

    Advance Computing Technology 080380107046

    RKCET(CE) 88 | P a g e

    be automatically re-built whenever you change the source. This keeps you

    productive by making the edit-compile-run cycle refreshingly short.

    The Go environment provides idiomaticGo APIsfor most of the App Engine

    services.

    You can upload other third-party libraries with your application, as long as they are

    implmented in pure Go.

    The Java Runtime Environment

    You can develop your application for the Java runtime environment using common

    Java web development tools and API standards. Your app interacts with the

    environment usingthe Java Servlet standard, and can use common web application

    technologies such asJavaServer Pages(JSPs).

    The Java runtime environment uses Java 6. The App Engine Java SDK supports

    developing apps using either Java 5 or 6.

    The environment includes theJava SE Runtime Environment (JRE) 6 platformand

    libraries. The restrictions of the sandbox environment are implemented in the JVM.

    An app can use any JVM bytecode or library feature, as long as it does not exceed

    the sandbox restrictions. For instance, bytecode that attempts to open a socket or

    write to a file will throw a runtime exception.

    Your app accesses most App Engine services using Java standard APIs. For the

    App Engine datastore, the Java SDK includes implementations of theJava Data

    Objects(JDO) andJava Persistence API(JPA) interfaces. Your app can usethe

    JavaMail APIto send email messages with the App Engine Mail service.

    The java.net HTTP APIs access the App Engine URL fetch service. App Engine also

    includes low-level APIs for its services to implement additional adapters, or to use

    directly from the application. See the documentation forthe

    datastore,memcache,URL fetch,mail,imagesandGoogle AccountsAPIs.

    Typically, Java developers use the Java programming language and APIs to

    implement web applications for the JVM. With the use of JVM-compatible compilers

    or interpreters, you can also use other languages to develop web applications, such

    as JavaScript, Ruby, or Scala.

    The Python Runtime Environment

    With App Engine's Python runtime environment, you can implement your app using

    the Python programming language, and run it on an optimized Python interpreter.

    App Engine includes rich APIs and tools for Python web application development,

    including a feature rich data modeling API, an easy-to-use web application

    framework, and tools for managing and accessing your app's data. You can also

    http://code.google.com/appengine/docs/go/apis.htmlhttp://code.google.com/appengine/docs/go/apis.htmlhttp://code.google.com/appengine/docs/go/apis.htmlhttp://java.sun.com/products/servlet/http://java.sun.com/products/servlet/http://java.sun.com/products/servlet/http://java.sun.com/products/jsp/http://java.sun.com/products/jsp/http://java.sun.com/products/jsp/http://java.sun.com/javase/technologies/index.jsphttp://java.sun.com/javase/technologies/index.jsphttp://java.sun.com/javase/technologies/index.jsphttp://java.sun.com/jdo/index.jsphttp://java.sun.com/jdo/index.jsphttp://java.sun.com/jdo/index.jsphttp://java.sun.com/jdo/index.jsphttp://java.sun.com/developer/technicalArticles/J2EE/jpa/http://java.sun.com/developer/technicalArticles/J2EE/jpa/http://java.sun.com/developer/technicalArticles/J2EE/jpa/http://java.sun.com/products/javamail/http://java.sun.com/products/javamail/http://java.sun.com/products/javamail/http://java.sun.com/products/javamail/http://code.google.com/appengine/docs/java/datastore/http://code.google.com/appengine/docs/java/datastore/http://code.google.com/appengine/docs/java/datastore/http://code.google.com/appengine/docs/java/datastore/http://code.google.com/appengine/docs/java/memcache/http://code.google.com/appengine/docs/java/memcache/http://code.google.com/appengine/docs/java/memcache/http://code.google.com/appengine/docs/java/urlfetch/http://code.google.com/appengine/docs/java/urlfetch/http://code.google.com/appengine/docs/java/urlfetch/http://code.google.com/appengine/docs/java/mail/http://code.google.com/appengine/docs/java/mail/http://code.google.com/appengine/docs/java/mail/http://code.google.com/appengine/docs/java/images/http://code.google.com/appengine/docs/java/images/http://code.google.com/appengine/docs/java/images/http://code.google.com/appengine/docs/java/users/http://code.google.com/appengine/docs/java/users/http://code.google.com/appengine/docs/java/users/http://code.google.com/appengine/docs/java/users/http://code.google.com/appengine/docs/java/images/http://code.google.com/appengine/docs/java/mail/http://code.google.com/appengine/docs/java/urlfetch/http://code.google.com/appengine/docs/java/memcache/http://code.google.com/appengine/docs/java/datastore/http://code.google.com/appengine/docs/java/datastore/http://java.sun.com/products/javamail/http://java.sun.com/products/javamail/http://java.sun.com/developer/technicalArticles/J2EE/jpa/http://java.sun.com/jdo/index.jsphttp://java.sun.com/jdo/index.jsphttp://java.sun.com/javase/technologies/index.jsphttp://java.sun.com/products/jsp/http://java.sun.com/products/servlet/http://code.google.com/appengine/docs/go/apis.html
  • 8/3/2019 Case Study on Amazon Ec2

    25/30

    Advance Computing Technology 080380107046

    RKCET(CE) 89 | P a g e

    take advantage of a wide variety of mature libraries and frameworks for Python web

    application development, such asDjango.

    The Python runtime environment uses Python version 2.5.2. Additional support for

    Python 3 is being considered for a future release.

    The Python environment includesthe Python standard library. Of course, not all of

    the library's features can run in the sandbox environment. For instance, a call to a

    method that attempts to open a socket or write to a file will raise an exception. For

    convenience, several modules in the standard library whose core features are not

    supported by the runtime environment have been disabled, and code that imports

    them will raise an error.

    Application code written for the Python environment must be written exclusively in

    Python. Extensions written in the C language are not supported.

    The Python environment provides rich Python APIs forthe datastore,Google

    Accounts,URL fetch, andemailservices. App Engine also provides a simple Python

    web application framework calledwebappto make it easy to start building

    applications.

    You can upload other third-party libraries with your application, as long as they are

    implemented in pure Python and do not require any unsupported standard library

    modules.

    The Datastore

    App Engine provides a distributed data storage service that features a query engine

    and transactions. Just as the distributed web server grows with your traffic, the

    distributed datastore grows with your data. You have the choice between two

    different data storage options differentiated by their availability and consistency

    guarantees.

    The App Engine datastore is not like a traditional relational database. Data objects,

    or "entities," have a kind and a set of properties. Queries can retrieve entities of a

    given kind filtered and sorted by the values of the properties. Property values can be

    of any of the supportedproperty value types.

    Datastore entities are "schemaless." The structure of data entities is provided by and

    enforced by your application code. The Java JDO/JPA interfaces and the Python

    datastore interface include features for applying and enforcing structure within your

    app. Your app can also access the datastore directly to apply as much or as little

    structure as it needs.

    The datastore is stronglyconsistentand usesoptimistic concurrency control. An

    update of a entity occurs in a transaction that is retried a fixed number of times if

    other processes are trying to update the same entity simultaneously. Your

    http://www.djangoproject.com/http://www.djangoproject.com/http://www.djangoproject.com/http://www.python.org/doc/2.5.2/lib/lib.htmlhttp://www.python.org/doc/2.5.2/lib/lib.htmlhttp://www.python.org/doc/2.5.2/lib/lib.htmlhttp://code.google.com/appengine/docs/python/datastore/http://code.google.com/appengine/docs/python/datastore/http://code.google.com/appengine/docs/python/datastore/http://code.google.com/appengine/docs/python/users/http://code.google.com/appengine/docs/python/users/http://code.google.com/appengine/docs/python/users/http://code.google.com/appengine/docs/python/users/http://code.google.com/appengine/docs/python/urlfetch/http://code.google.com/appengine/docs/python/urlfetch/http://code.google.com/appengine/docs/python/urlfetch/http://code.google.com/appengine/docs/python/mail/http://code.google.com/appengine/docs/python/mail/http://code.google.com/appengine/docs/python/mail/http://code.google.com/appengine/docs/python/tools/webapp/http://code.google.com/appengine/docs/python/tools/webapp/http://code.google.com/appengine/docs/python/tools/webapp/http://code.google.com/appengine/docs/java/datastore/hr/http://code.google.com/appengine/docs/java/datastore/hr/http://code.google.com/appengine/docs/java/datastore/hr/http://code.google.com/appengine/docs/java/datastore/hr/http://code.google.com/appengine/docs/python/datastore/typesandpropertyclasses.htmlhttp://code.google.com/appengine/docs/python/datastore/typesandpropertyclasses.htmlhttp://code.google.com/appengine/docs/python/datastore/typesandpropertyclasses.htmlhttp://en.wikipedia.org/wiki/Consistency_modelhttp://en.wikipedia.org/wiki/Consistency_modelhttp://en.wikipedia.org/wiki/Consistency_modelhttp://en.wikipedia.org/wiki/Optimistic_concurrency_controlhttp://en.wikipedia.org/wiki/Optimistic_concurrency_controlhttp://en.wikipedia.org/wiki/Optimistic_concurrency_controlhttp://en.wikipedia.org/wiki/Optimistic_concurrency_controlhttp://en.wikipedia.org/wiki/Consistency_modelhttp://code.google.com/appengine/docs/python/datastore/typesandpropertyclasses.htmlhttp://code.google.com/appengine/docs/java/datastore/hr/http://code.google.com/appengine/docs/java/datastore/hr/http://code.google.com/appengine/docs/python/tools/webapp/http://code.google.com/appengine/docs/python/mail/http://code.google.com/appengine/docs/python/urlfetch/http://code.google.com/appengine/docs/python/users/http://code.google.com/appengine/docs/python/users/http://code.google.com/appengine/docs/python/datastore/http://www.python.org/doc/2.5.2/lib/lib.htmlhttp://www.djangoproject.com/
  • 8/3/2019 Case Study on Amazon Ec2

    26/30

    Advance Computing Technology 080380107046

    RKCET(CE) 90 | P a g e

    application can execute multiple datastore operations in a single transaction which

    either all succeed or all fail, ensuring the integrity of your data.

    The datastore implements transactions across its distributed network using "entity

    groups." A transaction manipulates entities within a single group. Entities of the

    same group are stored together for efficient execution of transactions. Yourapplication can assign entities to groups when the entities are created.

    Google Accounts

    App Engine supports integrating an app with Google Accounts for user

    authentication. Your application can allow a user to sign in with a Google account,

    and access the email address and displayable name associated with the account.

    Using Google Accounts lets the user start using your application faster, because the

    user may not need to create a new account. It also saves you the effort of

    implementing a user account system just for your application.

    If your application is running under Google Apps, it can use the same features with

    members of your organization and Google Apps accounts.

    The Users API can also tell the application whether the current user is a registered

    administrator for the application. This makes it easy to implement admin-only areas

    of your site.

    App Engine Services

    App Engine provides a variety of services that enable you to perform common

    operations when managing your application. The following APIs are provided to

    access these services:

    URL Fetch

    Applications can access resources on the Internet, such as web services or other

    data, using App Engine's URL fetch service. The URL fetch service retrieves web

    resources using the same high-speed Google infrastructure that retrieves web pages

    for many other Google products.

    Mail

    Applications can send email messages using App Engine's mail service. The mail

    service uses Google infrastructure to send email messages

    Memcache

    The Memcache service provides your application with a high performance in-

    memory key-value cache that is accessible by multiple instances of your application.

    Memcache is useful for data that does not need the persistence and transactional

  • 8/3/2019 Case Study on Amazon Ec2

    27/30

    Advance Computing Technology 080380107046

    RKCET(CE) 91 | P a g e

    features of the datastore, such as temporary data or data copied from the datastore

    to the cache for high speed access.

    Image Manipulation

    The Image service lets your application manipulate images. With this API, you canresize, crop, rotate and flip images in JPEG and PNG formats.

    Scheduled Tasks and Task Queues

    An application can perform tasks outside of responding to web requests. Your

    application can perform these tasks on a schedule that you configure, such as on a

    daily or hourly basis. Or, the application can perform tasks added to a queue by the

    application itself, such as a background task created while handling a request.

    Scheduled tasks are also known as "cron jobs," handled by the Cron service. For

    more information on using the Cron service, see thePythonorJavacron

    documentation.

    Task queues are currently released as an experimental feature. The Python, Java,

    and Go runtime environments can use task queues. For information about the task

    queue service, seethe Python API documentation,the Java API documentationor

    thethe Go API documentation.

    Development Workflow

    The App Engine software development kits(SDKs) for Java, Python, and Go eachinclude a web server application that emulates all of the App Engine services on yourlocal computer. Each SDK includes all of the APIs and libraries available on AppEngine. The web server also simulates the secure sandbox environment, includingchecks for attempts to access system resources disallowed in the App Engineruntime environment.

    Each SDK also includes a tool to upload your application to App Engine. Once youhave created your application's code, static files and configuration files, you run thetool to upload the data. The tool prompts you for your Google account email addressand password.

    When you build a new major release of an application that is already running on AppEngine, you can upload the new release as a new version. The old version willcontinue to serve users until you switch to the new version. You can test the newversion on App Engine while the old version is still running.

    The Java SDK runs on any platform with Java 5 or Java 6. The SDK is available as aZip file. If you use the Eclipse development environment, you can use theGooglePlugin for Eclipseto create, test and upload App Engine applications. The SDK alsoincludes command-line tools for running the development server and uploading yourapp.

    http://code.google.com/appengine/docs/python/config/cron.htmlhttp://code.google.com/appengine/docs/python/config/cron.htmlhttp://code.google.com/appengine/docs/java/config/cron.htmlhttp://code.google.com/appengine/docs/java/config/cron.htmlhttp://code.google.com/appengine/docs/java/config/cron.htmlhttp://code.google.com/appengine/docs/python/taskqueue/http://code.google.com/appengine/docs/python/taskqueue/http://code.google.com/appengine/docs/python/taskqueue/http://code.google.com/appengine/docs/java/taskqueue/http://code.google.com/appengine/docs/java/taskqueue/http://code.google.com/appengine/docs/java/taskqueue/http://code.google.com/appengine/docs/go/taskqueue/http://code.google.com/appengine/docs/go/taskqueue/http://code.google.com/appengine/docs/go/taskqueue/http://code.google.com/appengine/downloads.htmlhttp://code.google.com/appengine/downloads.htmlhttp://code.google.com/appengine/docs/java/tools/eclipse.htmlhttp://code.google.com/appengine/docs/java/tools/eclipse.htmlhttp://code.google.com/appengine/docs/java/tools/eclipse.htmlhttp://code.google.com/appengine/docs/java/tools/eclipse.htmlhttp://code.google.com/appengine/docs/java/tools/eclipse.htmlhttp://code.google.com/appengine/docs/java/tools/eclipse.htmlhttp://code.google.com/appengine/downloads.htmlhttp://code.google.com/appengine/docs/go/taskqueue/http://code.google.com/appengine/docs/java/taskqueue/http://code.google.com/appengine/docs/python/taskqueue/http://code.google.com/appengine/docs/java/config/cron.htmlhttp://code.google.com/appengine/docs/python/config/cron.html
  • 8/3/2019 Case Study on Amazon Ec2

    28/30

    Advance Computing Technology 080380107046

    RKCET(CE) 92 | P a g e

    The Python SDK is implemented in pure Python, and runs on any platform withPython 2.5, including Windows, Mac OS X and Linux. The SDK is available as a Zipfile, and installers are available for Windows and Mac OS X.

    The Go SDK features an idiomatic, native Go API for using the App Engine services,

    and uses the same tools as the Python SDK (with some additional machinery forautomatically compiling your Go apps). The Go SDK is stand-aloneyou do notneed to install Go separatelyand is available as a Zip file for both Mac OS X andLinux (a Windows version will be available soon

  • 8/3/2019 Case Study on Amazon Ec2

    29/30

    Advance Computing Technology 080380107046

    RKCET(CE) 93 | P a g e

    Case Study On Microsoft Azure

    Microsoft Windows Azure Cloud Computing Service

    Microsoft Azure offers cloud computing SaaS as well as a pay-as-you-go

    infrastructure usage. Azure essentially is infrastructure as a service that enablesusers to only utilize infrastructure resources as they are needed. Windows Azure

    offers cloud computing in the .NET platform and offersMicrosoft .NET

    Services,Microsoft SQL Services,Microsoft Online Services,SharePoint

    Services, andDynamics CRMServices. In comparison to othercloud computing

    servicessuch asAmazon EC2,GoGrid, and Google App Engine,Microsoft

    Windows Azurehas a high level of security in addition to a 99.95% compute

    reliability and 99.9% role instance and storage reliability.

    Azure Software as a Service (SaaS)

    Microsoft has integrated services such asSharePointandCRMthat are offered with

    its cloud computing service Azure in order to make theonline applicationsmost

    frequently used by businesses readily available on a cloud infrastructure. Microsoft

    utilizes a unique server balancing act that enables users to switch to another server

    backup if one service becomes unavailable. Fabric Controller technology reroutes

    work instantaneously if a server goes down, resulting in 99.9% - 99.95% uptime.

    Although Microsoft Azure basic package supports the .NET environment, Microsoft

    Business Edition supports more platforms and can be used with both Microsoft

    technologies in conjunction with Mac and other platforms. Microsoft may haveentered the Cloud Computing arena later in the game, but the superior service they

    offer was well worth the wait.

    With a powerful SQL Azure database coupled with competitive pricing and enterprise

    scalability, Azure already stacks up to the other existing Cloud Computing services

    and gives them a run for their computing.

    Azure Pricing Guide

    Pure pay-as-you-go:

    $0.12 per hour for computing

    $0.15 per gigabytes for storage

    $0.10 per 10,000 storage transactions

    SQL Azure database:

    $9.99 - basic Web edition (1 gigabyte relational database)

    $99.99 - Business Edition (10 gigabytes database)

    Network bandwidth:

    $0.10-$0.15 per gigabyte

    http://www.itstrategists.com/Microsoft_NET.aspxhttp://www.itstrategists.com/Microsoft_NET.aspxhttp://www.itstrategists.com/Microsoft_NET.aspxhttp://www.itstrategists.com/Microsoft_NET.aspxhttp://www.itstrategists.com/Microsoft-Online-Services.aspxhttp://www.itstrategists.com/Microsoft-Online-Services.aspxhttp://www.itstrategists.com/Microsoft-Online-Services.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/CRM4.aspxhttp://www.itstrategists.com/CRM4.aspxhttp://www.itstrategists.com/CRM4.aspxhttp://www.itstrategists.com/cloud-computing.aspxhttp://www.itstrategists.com/cloud-computing.aspxhttp://www.itstrategists.com/cloud-computing.aspxhttp://www.itstrategists.com/cloud-computing.aspxhttp://www.itstrategists.com/amazon-ec2.aspxhttp://www.itstrategists.com/amazon-ec2.aspxhttp://www.itstrategists.com/amazon-ec2.aspxhttp://www.itstrategists.com/gogrid.aspxhttp://www.itstrategists.com/gogrid.aspxhttp://www.itstrategists.com/gogrid.aspxhttp://www.itstrategists.com/Microsoft-Azure.aspxhttp://www.itstrategists.com/Microsoft-Azure.aspxhttp://www.itstrategists.com/Microsoft-Azure.aspxhttp://www.itstrategists.com/Microsoft-Azure.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/crm.aspxhttp://www.itstrategists.com/crm.aspxhttp://www.itstrategists.com/crm.aspxhttp://www.itstrategists.com/online-applications.aspxhttp://www.itstrategists.com/online-applications.aspxhttp://www.itstrategists.com/online-applications.aspxhttp://www.itstrategists.com/online-applications.aspxhttp://www.itstrategists.com/crm.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/Microsoft-Azure.aspxhttp://www.itstrategists.com/Microsoft-Azure.aspxhttp://www.itstrategists.com/gogrid.aspxhttp://www.itstrategists.com/amazon-ec2.aspxhttp://www.itstrategists.com/cloud-computing.aspxhttp://www.itstrategists.com/cloud-computing.aspxhttp://www.itstrategists.com/CRM4.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/sharepoint.aspxhttp://www.itstrategists.com/Microsoft-Online-Services.aspxhttp://www.itstrategists.com/Microsoft_NET.aspxhttp://www.itstrategists.com/Microsoft_NET.aspx
  • 8/3/2019 Case Study on Amazon Ec2

    30/30

    Advance Computing Technology 080380107046

    Microsoft Windows Azure Cloud Computing Case Study

    Microsoft's Azure is still technically in the beta phase, but there are case studies

    available that detail the results that Microsoft Cloud Computing is already having on

    businesses that are utilizing the service. Here is an example of a case study

    that demonstrates the impact that Azure had for the IT Services company Epicor:

    Epicor | Profile: $480 Million, private company that offers software solutions for

    small to mid-size companies in the manufacturing, distribution, service, retail, and

    hospitality industries.

    What did Azure do for Epicor?: Azure significantly cut costs for the company by

    lowering their development costs. It allowed them to offer their customers internet-

    based services and build on their developers familiarity with the Microsoft .NET

    Framework.

    Epicor also had the capability to publish the application's search indexes in

    the cloud so remote users can run the application on a laptop or mobile

    device to get into the systeminstead they have VPN access.

    By developing its new ERP application on Azure, Epicor was able to lower its

    development costs and offer its customers internet-based services.

    Azure allowed Epicor to build an Enterprise Search on the internet without

    having to build out data center environments, which made for much lower

    development overhead.