Deploying SaaS Application on the Cloud - Case Study


Published on

This presentation provides a case study on how to overcome some of the challenges involved in deploying a SaaS application on the cloud using GigaSpaces. In this specific case were referring to a risk analysis application (Primatics) and describe how we've dealt with multi tenancy, high availability, scalability and how we were able to optimize the architecture for reduced cost.
The presentation was given during the cloud connect 2010 conference.

Published in: Technology
1 Comment
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Thanks to Massimo for the very informative presentation of the technology roadmap that awaits us. With your permission – I’d like to spend the next few minutes talking about 2 things: How we at GS see the change that our industry is going through (and no - I’m not referring to the sub-prime crisis...), How we are responding to it.
  • 319 customers overall, of which: • 142 paying customers: • 66 on premise ONLY • 4 hybrid (on premise + on Cloud) • 72 on the cloud ONLY • 177 Start-up program users, all on-premise Production Customers: 27 on-premise customers are in production 9/10 off-premise (on-Cloud) customers are in production (depending how you look at it  , see details below) Cloud Production Clients: VelociMetrics - latency & SLA management from public cloud to public cloud and public cloud to private cloud - build on GigaSpaces Orbyte  - Trading on the Cloud Nortel - Contact Centre in the Cloud O2 - ActivatemySIM - Cloud Service from Telco CloudSave  - OEM with NTE - built on GigaSpaces to support secure transactions on the cloud at Grid speeds Primatics – OEM - provides a high-performance risk management solution on the Cloud, running on GigaSpaces. BazuMedia – broadcasting sporting events Miwok – on-demand flight reservation and scheduling system Fluoresecent Media -- Media Serivces to backup network broadcasted gameshow ( never launched as they were taken over, but reached production stage ) Pre-production (wtihin a month top are expected to be in production) Advanced Gaming Labs (Signature Technologies) - Roulette Application that runs on cloud but entire gaming network is built for the cloud Jim is currently working on: Vodafone  - for launch of social network aggregation service ABB -  For customer updates services from the Cloud BAT -  Non essential services in the cloud AKQA - evaluating cloud for an iPhone app but all has been quiet because of holiday period
  • Try to add a machine and see what happens? Nothing Evetything is hard wired, static Assuming we did do that, what the effect? Can you predict
  • Try to add a machine and see what happens? Nothing Evetything is hard wired, static Assuming we did do that, what the effect? Can you predict
  • Provides the equivalent of Amazon services (SimpleDB, SQS, Map/Reduce) for enterprise applications (Standard API, Transaction support,..).
  • Cut slide
  • Deploying SaaS Application on the Cloud - Case Study

    1. 1. Deploying Application on the Cloud The Care and Feeding of Cloud applications Nati Shalom , CTO & Founder GigaSpaces Abbass Valliani Managing Director, Primatics
    2. 2. About GigaSpaces Technologies 75+ Cloud Customers 300+ Direct Customers Among Top 50 Cloud Vendors Enabling applications to run a distributed cluster as if it was a single machine…
    3. 3. The Missing Piece… Business tier Back-up Back-up Back-up Back-up Load Balancer Web Tier Messaging Data Tier What will happen when you add a new machine? Which part of the app should move to that new machine? How will the app behave in terms of throughput, scaling?
    4. 4. The Solution: Virtualization trough the entire stack Messaging Data Tier Bottom line : Better Resource Utilization <ul><li>All resources are shared </li></ul><ul><li>Machines are virtualized </li></ul><ul><li>Middleware is virtualized </li></ul><ul><li>Auto-balanced, Managed </li></ul>Business tier Load Balancer Web Tier
    5. 5. On Demand Middleware Services for the Enterprise <ul><li>Characteristics </li></ul><ul><li>On Demand </li></ul><ul><ul><li>Automatic provisioning </li></ul></ul><ul><li>Multi-tenant </li></ul><ul><ul><li>Use shared resources </li></ul></ul><ul><li>Auto-scale </li></ul><ul><ul><li>Span across more machines </li></ul></ul><ul><ul><li>Down-scale when needed </li></ul></ul><ul><li>Always on </li></ul><ul><ul><li>Handle fail-over automatically </li></ul></ul>Load data Load data <ul><li>An Enterprise Middleware Services Grid </li></ul><ul><ul><li>Simple and cost effective way to deliver independent middleware services </li></ul></ul><ul><ul><li>The robustness and completeness of XAP in a delivery model as simple as Amazon Web Services (SimpleDB, SQS, Map/Reduce) </li></ul></ul>Shared Pool of Virtual Machines Create a Data Grid Min (10G), Max (100G) Create a Data Grid Min (10G), Max (200G)
    6. 6. SaaS Enablement – Primatics Financial <ul><li>Category: Batch processing </li></ul><ul><li>Business Case </li></ul><ul><ul><li>Many mid-size regional banks with sizeable mortgage portfolios </li></ul></ul><ul><ul><li>Outsource sophisticated mortgage credit risk modeling </li></ul></ul><ul><ul><li>Suited for PaaS, pay-as-you-go: outsource IT infrastructure to perform costly computations Relied on manual installation </li></ul></ul><ul><li>Challenges </li></ul><ul><ul><li>Managing data on the cloud </li></ul></ul><ul><ul><li>Achieving Linear scalability </li></ul></ul><ul><ul><li>Performance </li></ul></ul><ul><ul><ul><li>Data load and processing could take a lot of time </li></ul></ul></ul><ul><ul><li>Complexity </li></ul></ul><ul><ul><ul><li>Spend lots of time on building infrastructure then dealing with their core business </li></ul></ul></ul><ul><ul><li>Lock-in </li></ul></ul><ul><ul><ul><li>Avoiding Lockin to specific cloud provider </li></ul></ul></ul><ul><ul><li>Reliability </li></ul></ul><ul><ul><ul><li>Handling failure and reliability in the cloud can be extremely complex </li></ul></ul></ul>
    7. 7. Solution: Multi Tenant Scalable Architecture Many jobs by the same user Many users in a firm Many firms Risk Analytics Platform More loans, more simulations, longer horizon Paa S
    8. 8. Results per simulation <ul><li>Output 2.5MB/s, 12.5k records / second.   </li></ul><ul><li>Input 128k/s 83 records/s.   </li></ul><ul><li>Scales linearly per batch/machine combination </li></ul>
    9. 9. Cost Benefits <ul><li>Time to market </li></ul><ul><ul><li>Shorter time to market </li></ul></ul><ul><li>Better throughput and scalability translate to less machines hours . </li></ul><ul><li>Full automation translates to better use of machine hours only when they needed </li></ul><ul><li>Reliability </li></ul><ul><ul><li>Avoid lost of machine hours during a simulation failure </li></ul></ul><ul><li>Portability (Between clouds incl private cloud) </li></ul><ul><ul><li>Enable to benefit from the competitive cloud market </li></ul></ul><ul><li>Development cost </li></ul><ul><ul><li>Save the infrastructure development cost </li></ul></ul>
    10. 10. SaaS Enablement – Real Time Billing <ul><li>Category: Real Time Transaction Processing </li></ul><ul><ul><li>Active Mediation is a network grade event processing platform: Policy management, Pre-paid service control </li></ul></ul><ul><li>Challenges </li></ul><ul><ul><li>Cloud computing is very different then the current environment </li></ul></ul><ul><ul><li>Relied on manual installation </li></ul></ul><ul><ul><li>Static network configuration </li></ul></ul><ul><ul><li>Static server configuration (Server relied on local disks for configuration) </li></ul></ul><ul><li>Solution </li></ul><ul><ul><li>Step 1 – Port to Amazon image (Using GigaSpaces) </li></ul></ul><ul><ul><li>Step 1 – Automation </li></ul></ul><ul><ul><li>Step 2 - Dynamic IP (Including on demand Oracle Database provisioning) </li></ul></ul>Active Mediation
    11. 11. Summary – Best Practices <ul><li>Avoid radical change, enabling a gradual process </li></ul><ul><li>Choose an architecture supporting linear scalability </li></ul><ul><li>Minimize vendor lock-in </li></ul><ul><ul><li>Enable application portability and freedom of choice of: </li></ul></ul><ul><ul><ul><li>cloud provider, web container, programming language, database </li></ul></ul></ul><ul><ul><li>Minimize API lock in: </li></ul></ul><ul><ul><ul><li>Use of standards </li></ul></ul></ul><ul><ul><ul><li>API Abstractions – when standards are not available </li></ul></ul></ul><ul><li>Future proof your application </li></ul><ul><ul><li>Don’t make decision today, but be ready to make one without major effort </li></ul></ul><ul><li>Avoid long-term commitment – choose the right licensing model </li></ul>