SaaS Enablement of your existing application (Cloud Slam 2010)


Published on

SaaS Enablement of your existing application (Cloud Slam 2010)

1 Like
  • Be the first to 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
  • Provides the equivalent of Amazon services (SimpleDB, SQS, Map/Reduce) for enterprise applications (Standard API, Transaction support,..).
  • 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
  • Background Top wall street firm using GigaSpaces for on-line web application Backend system running GigaSpaces storing application data with the IMDG GigaSpaces stores data that is calculated overnight. Calculation using data from different resources. Application accessing data in memory instead of calculating it every time. Application stores in memory millions of objects Backend system hosted on Linux machine that are regularly being restarted every few days - To avoid memory leaks with legacy systems                 - To allow maintenance procedures to upgrade the SW System running across 2 data centers (10 miles apart) Both web front end and IMDG spread over the data centers
  • Cut slide
  • SaaS Enablement of your existing application (Cloud Slam 2010)

    1. 1. Nati Shalom, CTO & Founder Cloud/SaaS Enablement of Existing Applications
    2. 2. About GigaSpaces Technologies 100+ Cloud Customers 400+ Direct Customers Among Top 50 Cloud Vendors Enabling applications to run a distributed cluster as if it was a single machine… “ Other vendors, including Oracle and IBM, plan to extend their distributed caching platforms with OSGi, Spring and Java EE elements. But none has yet architected a full cloud-enabled XTPP like GigaSpaces.  This gives the company at least a year's competitive advantage on the technology front” . Gartner’s Massimo Pezzini on GigaSpaces XAP 7.0
    3. 3. Agenda
    4. 4. Batch Processing SaaS Enablement – Primatics Financials <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>
    5. 5. 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 PaaS
    6. 6. 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>
    7. 7. 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 </li></ul><ul><ul><li>Less machines hours </li></ul></ul><ul><li>Full automation </li></ul><ul><ul><li>Better use of machine hours only when they needed </li></ul></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 public and private clouds) </li></ul><ul><ul><li>Enable to benefit from the competitive cloud market </li></ul></ul><ul><li>Development costs </li></ul><ul><ul><li>Save the infrastructure development cost </li></ul></ul>
    8. 8. Real Time Application - SaaS Enablement <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><ul><li>Next steps </li></ul><ul><ul><li>Add dynamic scaling – requires a change in how the application is packaged </li></ul></ul>No Code change Active Mediation
    9. 9. Recent Benchmark – Real Time SaaS Telco App <ul><li>Hardware – Linux </li></ul><ul><ul><li>HP DL380 G6 servers - each has: </li></ul></ul><ul><ul><li>2 Intel quad-core Xeon X5560 processors (2.8 Ghz Nehalem) </li></ul></ul><ul><ul><li>32 Gb RAM (4GB per core) </li></ul></ul><ul><ul><li>6 * 146 Gb 15K RPM SAS disks </li></ul></ul><ul><ul><li>Red Hat 5.2 </li></ul></ul>Event injector Up to 128 threads GigaSpaces/ (Other APP Server) App Services Up to 128 threads Other Giga
    10. 10. Agenda
    11. 11. Key Characteristics for Cloud/Virtualization Platforms DataGrid Messaging MapReduce Elastic Middleware Service
    12. 12. Fine Grained Multi-Tenancy Approach <ul><li>Pros </li></ul><ul><ul><li>Very efficient </li></ul></ul><ul><li>Cons </li></ul><ul><ul><li>Complex </li></ul></ul><ul><ul><li>Requires re-write </li></ul></ul>Tenant A Tenant A Tenant A Each user Gets his own portion of the database based on the primary key
    13. 13. Cross-Grained Multi-tenancy Approach <ul><li>Pros </li></ul><ul><ul><li>Very simple </li></ul></ul><ul><ul><li>Can fit with existing applications </li></ul></ul><ul><li>Cons </li></ul><ul><ul><li>Less efficient </li></ul></ul>Tenant A Tenant A Tenant A Shared Storage/Network, Electricity, Management Shared Pool of Virtual Machines
    14. 14. Multi-tenancy approach - Simple fine grained multi-tenancy <ul><li>Each user gets his own data tenant </li></ul><ul><li>Each tenant is spread across multiple machines. </li></ul><ul><li>All tenants can share the same resources </li></ul>Tenant A Tenant A Tenant A Shared Storage/Network, Electricity, Management Virtual Multi-tenant Data Service Shared Pool of Virtual Machines
    15. 15. Elastic Middleware Characteristics <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><ul><li>Simple and cost effective way to deliver independent middleware services </li></ul></ul>Shared Pool of Virtual Machines Create a Data Grid Min (10G), Max (100G) Create a Data Grid Min (10G), Max (200G)
    16. 16. Multi-Tenancy Modes Server Customer 1 – App Data Grid A Customer 1 – App Data Grid B Customer 2 – App Data Grid C Server Server Single User/ Single App data grid per host Single User/ Multiple App data grids of the same user per host Multiple User/ Multiple App data grids per host Dedicated Shared - Private Shared - Public A C A A B A B A C
    17. 17. Agenda
    18. 18. Resource Pooling with the Cloud – The Ideal World SaaS PaaS IaaS App 1 App 2 App 3
    19. 19. 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?
    20. 20. The Solution: Virtualization of 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
    21. 21. Agenda
    22. 22. Self Service & Fine-Grained Usage Tracking <ul><li>Bringing operational awareness to the application </li></ul><ul><li>Provide built-in API for: </li></ul><ul><ul><li>Tracking the application behavior </li></ul></ul><ul><ul><li>Reacting to failure/scaling events </li></ul></ul><ul><ul><li>Trouble shooting </li></ul></ul><ul><ul><li>Ensuring the SLA </li></ul></ul>
    23. 23. Automating Planned Downtime Database (Background) Network Load-Balancer Web Tier In-Memory Data Grid <ul><li>Downtime </li></ul><ul><li>Down Scaling </li></ul><ul><li>Restart of Servers </li></ul><ul><li>Data Recovery </li></ul><ul><li>Resources Rebalancing </li></ul>
    24. 24. Agenda
    25. 25. XTP-Grade Scalability & Reliability Through Partitioning Users Load Balancer Route calls Based on @userid Partition 1 Writer (Proxy) Reader (Proxy) Replica 1 Partition 1 Replica 1 Partition 1 Replica 1 Partition 1 Replica 1 Partition 1 Replica 1
    26. 26. Agenda
    27. 27. SaaS Enabled Middleware Virtualization in Action <ul><li>Virtual machines become App-Services containers </li></ul><ul><li>App-Services are provisioned based on SLAs: </li></ul><ul><ul><li>Primary backup runs on separate machines </li></ul></ul><ul><ul><li>Web containers don’t share the database machine </li></ul></ul><ul><ul><li>Database runs on a dedicated machine </li></ul></ul><ul><li>` </li></ul>Web Service Data Grid Database
    28. 28. Auto Rebalancing New Machine <ul><li>Application/Middleware is being auto-balanced when new resources joins the pool </li></ul>Auto Rebalancing
    29. 29. Agenda
    30. 30. SaaS Enablement – Putting It All Together <ul><li>Multi-Tenancy </li></ul><ul><ul><li>Provide multi-tenant middleware </li></ul></ul><ul><ul><li>Simplify multi-tenant programming </li></ul></ul><ul><li>Resource Pooling </li></ul><ul><ul><li>All resources are shared </li></ul></ul><ul><ul><li>User can control the level of isolation </li></ul></ul><ul><li>Elasticity </li></ul><ul><ul><li>Scale on demand based on SLA </li></ul></ul><ul><li>Fine-grained usage tracking, metrics and costing </li></ul><ul><ul><li>Extended real time monitoring of every bit of the system </li></ul></ul><ul><ul><li>Management API enables integration with external monitoring </li></ul></ul><ul><li>XTP-grade global class advanced scalability, performance and availability </li></ul><ul><ul><li>The leading XTP product in the market </li></ul></ul><ul><li>Self-service user/administrator experience </li></ul><ul><ul><li>User can create messaging, data services by a single call of the API </li></ul></ul><ul><ul><li>System is self-balanced </li></ul></ul>DataGrid Messaging MapReduce Middleware as a Service
    31. 31. Summary – Best Practices <ul><li>Avoid radical changes, 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 the decision today, but be ready to make one without major effort </li></ul></ul><ul><li>Avoid long-term commitments – choose the right licensing model </li></ul>