Building a SaaS Application: One of the keys to success: Multi-Tenancy

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Notes on slide 1

    Expand on each of the 7 keys to success Change the order to match the current vs. futures section

    Expand on each of the 7 keys to success Change the order to match the current vs. futures section

    Sharing, best when… Customizations not required. Separate versions not required. It offers the least cost to serve, but data security and version and performance control (per customer SLAs) may be issues For commodity applications Isolating, best when… Customizations are required. Multiple versions are required. Implementation cost is not the most important driver Easier performance control (per customer SLAs). For specialized applications Application Shared nothing: Separate instances per tenant, different versions different code-bases, customizable Shared version: Separate instances per tenant, same version single code-base, configurable Shared instance: One instance shared for all tenants. Limited scalability Shared platform: Multiple instances shared for all tenants Infrastructure and services Shared nothing Shared hardware, OS and services. Separate application infrastructure Shared all: Hardware, OS, services and application infrastructure Data Shared nothing Shared data store, no custom/extended schemas Shared data store, custom/extended schemas

    User experience Very similar to traditional packaged applications On- / off-premises possible Technical considerations include Web browser-based VPN to Citrix, Terminal Emulation, Host

    User experience Very similar to traditional packaged applications On- / off-premises possible Technical considerations include Web browser-based VPN to Citrix, Terminal Emulation, Host

    Database No change needed vs. on-premises database. Tenant-awareness provided by infrastructure or Tenant awareness through db naming model: e.g. /db, dbsfolder/db,… Services Tenant-awareness provided by infrastructure Infrastructure Host per tenant Shared host: Application, OpenEdge naming / configuration per tenant (see above) Citrix / Terminal Services “partition” per tenant Virtual environment / software appliance per tenant

    User experience Generally similar to web-based service offerings Technical considerations include Shared infrastructure SOA Application and Platform Architecture are a must Typically web browser-based Low TCO, high agility and scalability requires a SaaS Platform

    User experience Generally similar to web-based service offerings Technical considerations include Shared infrastructure SOA Application and Platform Architecture are a must Typically web browser-based Low TCO, high agility and scalability requires a SaaS Platform

    Add case study to each point

    6 Favorites

    Building a SaaS Application: One of the keys to success: Multi-Tenancy - Presentation Transcript

    1. Building a SaaS Application One of the 7 Keys to Success: Multi-Tenancy Mike Ormerod Architect, SaaS & Cloud Computing Strategy Progress Software Session 104
    2. 7 Keys To Success Going from 1 to N Multi-tenancy Ensuring that data and applications are accessed only by those who need to know Security & Compliance Being able to easily use the UI technologies that meet the needs of the customer User Interface Flexibility Ensuring the application looks as the tenant and end-user want Personalization Ability to easily integrate to any other application by supporting all relevant standards Integration Always available and scales to any size Operational Excellence Provide a highly productive environment focused on OpenEdge and industry best practices Productivity
    3. 7 Keys To Success Going from 1 to N Multi-tenancy Ensuring that data and applications are accessed only by those who need to know Security & Compliance Being able to easily use the UI technologies that meet the needs of the customer User Interface Flexibility Ensuring the application looks as the tenant and end-user want Personalization Ability to easily integrate to any other application by supporting all relevant standards Integration Always available and scales to any size Operational Excellence Provide a highly productive environment focused on OpenEdge and industry best practices Productivity
    4. Multi-tenancy Options Continuum Isolating Sharing Better economy of scale Simpler management Target like-customers Least cost to serve Easier customization, security Simpler throttling control Target dissimilar customers No transformation Isolated Tenancy Shared Tenancy Infrastructure Tenancy Application Tenancy Tenant2 Tenant3 App App App DB DB DB Infra . Infra. Infra. Tenant1 Tenant1 Tenant2 Tenant3 App DB Infrastructure Tenant1 Tenant2 Tenant3 App App App DB DB DB Infrastructure Tenant1 Tenant2 Tenant3 DB DB DB Infrastructure App
    5. Isolated Tenancy Tenant2 Tenant3 App App App DB DB DB Infrastructure Infrastructure Infrastructure Tenant1 What is it? Application Isolated Database Isolated Infrastructure Isolated
    6. Infrastructure Tenancy Infrastructure What is it? Tenant2 Tenant3 App App App DB DB DB Tenant1 Application Isolated Database Isolated Infrastructure Shared
    7. Isolated & Infrastructure Tenancy Tenancy Through physical isolation. Separate hosts Virtualization Pathnames and naming Implementation No change. Infrastructure provides physical separation Versions can be different Tenant-aware naming resolves naming conflicts Servers (AppServer, WebSpeed) naming e.g. <TenantID>servicename No change. Infrastructure provides physical separation Tenant-aware naming resolves naming conflicts e.g. <TenantID>dbname
      • Host per tenant
      • Shared host:
        • Citrix / Terminal Services “partition” per tenant
        • Virtual environment / software appliance per tenant
      Application Database Infrastructure
    8. Application Tenancy Tenant1 Tenant2 Tenant3 DB DB DB Infrastructure App What is it? Application Shared Database Isolated Infrastructure Shared
    9. Application Tenancy
      • Through TenantID and Isolated Databases: TenantID-DBname value pairs
      • Stored in Tenancy Registry
      • Flows through all layers of application
        • Authentication maps end-user to TenantID
        • Business objects activation
        • Database tenancy through TenantID-DBname value-pairs
        • Encryption
      Single instance. Multitenancy by setting and using TenantID throughout all application layers, and database tenancy through TenantID-DBname value-pairs TenantID+UserID to handle UserID duplicates across tenants Encryption key by tenant Tenancy Application Implementation
    10. Application Tenancy Implementation Isolated by tenant. Tenancy through DB naming model: e.g. <tenant1>/db, dbsfolder/<tenant1>db,… Tables do not need TenantID field No need for SQL Views for ODBC/JDBC
      • Everything Shared:
        • CPUs, RAM, HD, Communications, Web servers, etc
      Database Infrastructure
    11. Shared Tenancy Tenant1 Tenant2 Tenant3 App DB Infrastructure What is it? Application Shared Database Shared Infrastructure Shared
    12. Shared Tenancy Implementation
      • Through TenantID
      • Stored in Tenancy Registry
      • Flows through all layers of application
        • Authentication maps end-user to TenantID
        • Business objects activation
        • Data access (ABL and SQL)
        • Encryption
      Single instance. Multitenancy by setting and using TenantID throughout all application layers TenantID+UserID to handle UserID duplicates across tenants Database CRUD always includes TenantID ODBC/JDBC access through SQL Views setting TenantID Encryption key by tenant Tenancy Application
    13. Shared Tenancy Implementation Single instance Tables include TenantID field. Indices. Use TenantID for CRUD May want to consider SQL Views for Reporting and BI
      • Everything Shared:
        • CPUs, RAM, HD, Communications, Web servers, etc
      Database Infrastructure TenantID CustNum Name 1 1 John Smith 2 1 Jane Doe 1 2 Ludovic Eiffel 2 2 Ingrid Schnabel … … …
    14. When to Consider Isolated Tenancy Infrastructure Tenancy Application Tenancy Shared Tenancy Time to market Short Short Long Longest Infrastructure costs High High Low Low Economies of scale Very poor Poor High Highest Scalability Poor Poor High Highest Provisioning Difficult Difficult Easy Easiest Admin/Mgmt costs Very high High Low Lowest Target type of tenants Dissimilar Dissimilar Similar Similar Multitenant App Transformation No No Yes (except DBs) Yes Coding difficulty Easy Easy Less difficult Difficult Implement SLAs Easier Easy Less difficult Difficult Containment Easier Easy Less difficult Difficult
    15. OpenEdge Platform Support
      • Support for major virtualization platforms, e.g. VMWare, Citrix, HP, IBM, Windows, Solaris
      • Modern ABL
        • Dynamic Programming
        • Class Based
        • Standards Based
      • OpenEdge RDBMS
        • Low cost easy administration whether 1 db or 100s
        • Tables per database and data per table effectively unlimited
      • OpenEdge AppServer
    16. OpenEdge – The Complete SaaS Platform Presentation Business Components Data Access Data Sources Enterprise Services Common Infrastructure Security & Compliance Integration Tenant Management Personalization & Customization
    17. OpenEdge – The Complete SaaS Platform OpenEdge Application Platform Presentation Business Components Data Access Data Sources Enterprise Services Common Infrastructure Security & Compliance Integration Tenant Management Personalization & Customization
    18. OpenEdge – The Complete SaaS Platform Productivity/Operational Excellence OpenEdge Application Platform Presentation Business Components Data Access Data Sources Enterprise Services Common Infrastructure Security & Compliance Integration Tenant Management Personalization & Customization
    19. More Info
      • Software as a Service Track
        • Session 105: Operational Excellence
        • Session 124: Tales from the Trenches: SaaS in Practice
      • Architecture, SaaS & Cloud Community
        • http://communities.progress.com/pcom/community/psdn/openedge/architecture
    20. Building a SaaS Application One of the 7 Keys to Success: Multi-Tenancy Mike Ormerod Architect, SaaS & Cloud Computing Strategy Progress Software Session 104
    SlideShare Zeitgeist 2009

    + Progress SoftwareProgress Software Nominate

    custom

    510 views, 6 favs, 1 embeds more stats

    Building a SaaS Application: One of the keys to suc more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 510
      • 506 on SlideShare
      • 4 from embeds
    • Comments 0
    • Favorites 6
    • Downloads 18
    Most viewed embeds
    • 4 views on http://jisi.dreamblog.jp

    more

    All embeds
    • 4 views on http://jisi.dreamblog.jp

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories