This lecture discusses how ISVs in the traditional shrink-wrapped software market can move to the cloud and provide SaaS solutions to their customers with SQL Anywhere on-demand edition providing their data managment platform. We discuss some of the reasons why an ISV and their customers would want to move to a SaaS model, some of the barriers that make this difficult for established ISV's and demonstrate how with SQL Anywhere on-demand edition ISVs can build, deploy, and manage cloud applications.
Scaling API-first – The story of a global engineering organization
Building ISV Applications that run in the cloud with SQL Anywhere On-Demand Edition
1. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Exploring SAP Sybase SQL
Anywhere, on-demand edition
Jason Hinsperger
Senior Product Manager, SAP
2. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Agenda
Overview
Motivation
Architecture
Features though Demonstration
3. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
What is SQL Anywhere, on-
demand edition?
A data management
solution for ISVs …
4. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
What is SQL Anywhere, on-
demand edition?
A data management
solution for ISVs, that
enables ISVs to build,
deploy, and manage
cloud applications
without compromise …
5. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
What is SQL Anywhere, on-
demand edition?
A data management
solution for ISVs that
enables ISVs to build,
deploy, and manage
cloud applications
without compromise,
letting them take
advantage of the cloud’s
economies of scale …
6. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
What is SQL Anywhere, on-demand
edition?A data management
solution for ISVs that
enables ISVs to build,
deploy, and manage
cloud applications
without compromise,
letting them take
advantage of the cloud’s
economies of scale,
while giving them the
tools to ensure that they
can still treat each of
their customers
individually.
8. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Deployed Software and Embedded
Databases
ISVs used to deploy databases on their customer
premises
Each instance of the application had its own
embedded database
Characteristics of a good embedded database:
• Embeddable
• Secure
• Manageable
9. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Software-as-a-Service and
“Embedded” Databases
ISVs are now hosting applications as a service
The responsibility for running the database has
shifted from the customer, to the ISV
Characteristics of a good hosted database:
• Hostable
• Highly Available
• Manageable
• Secure
10. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Data Architectures for Multi-tenancy
All tenants in a single, distributed
database
• Easier to manage
• Less secure
Each tenant in their own separate,
isolated database
• More secure
• Harder to manage
11. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Benefits of Database Isolation
No risk of data leakage between separate tenants
Backup and restore on a tenant-by-tenant basis
Schema can vary between tenants
Databases can be encrypted separately
Tenants can safely be given direct access to their
data
User permissions are managed on a tenant-by-
tenant basis
12. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
ARCHITECTURE
Isolated Databases in a Shared Cloud
13. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Relation to SAP Sybase SQL
Anywhere
• SQL Anywhere 16
is the foundation for
SQL Anywhere, on-demand edition
14. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Relation to SAP Sybase SQL
Anywhere
• SQL Anywhere 16
is the foundation for
SQL Anywhere, on-demand edition
• SQL Anywhere, on-demand edition
brings the power of
SQL Anywhere to the cloud
15. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Relation to SAP Sybase SQL
Anywhere
• Manages thousands
of databases through
a single interface
• SQL Anywhere 16
is the foundation for
SQL Anywhere, on-demand edition
• SQL Anywhere, on-demand edition
brings the power of
SQL Anywhere to the cloud
16. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
SQL Anywhere Foundation
SQL Anywhere, on-demand edition is built on a strong
SQL Anywhere foundation
• Over 20 years experience powering ISV applications
• Over 5,000,000 database seats deployed
Each server is capable of running multiple databases
Servers may be run on Windows or Linux
Multiple servers may be run on a single host
(machine) to provide process-level isolation
17. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
A Cloud of Database Servers
Multiple servers are linked together to
form a cloud of servers
Each server maintains a full topology
of all of the servers and databases
in the cloud
Each server tracks its databases’ CPU
and IO usage, and shares it with all
other servers
18. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Shared-Nothing Architecture
Shared-nothing architecture
Servers may be
geographically
distributed
Mesh-network required
No permanent root server
19. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Example Application Deployment
Scenarios
Application Server
Remote Desktop
Browser-based
Application
Thin-Client
Desktop
Application
Thick-Client
Desktop
Application
20. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Single-tenant Experience
Applications behave the same* whether their database
is in the cloud, or on a stand-alone server
Tenants are only able to see their own database
21. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Administration Tools
Cloud Console
• Graphical
• Browser-based
• Manage all servers and
databases
• Hosted and available from
any server
Command-line tools
• Allows scripting and
automation of cloud actions
22. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Differences with Cloud Databases
All databases are upgraded to 12.0.1 when added to a cloud
Some operations can only be performed with cloud tooling
• ex. starting/stopping databases, setting up mirroring, etc …
Some database start parameters are disabled
• ex. AutoStart, CommLinks, etc…
Some features are secured
• ex. File-system access, xp_cmd_shell, etc…
Limited results from system procedures
• ex. sa_db_list, sa_conn_list, etc…
Full details available in documentation
23. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
External Environments
External environments are fully supported in tenant databases, but are not
managed by the cloud
• Administrator is responsible for ensuring the proper files (DLLs, etc) are installed on
each cloud machine
Remote access is a secured feature that must be manually enabled
Full details available in documentation
24. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
MobiLink with Cloud Databases
Tenant databases as consolidated databases
• Supported
• MobiLink server must be able connect to the consolidated database
• Database movement could cause failed synchronizations
Tenant databases as remotes
• Supported
• dbmlsync must be installed manually on each machine
• SYNCHRONIZE statement is supported
• dbmlsync must be able to directly access the offline transaction logs (for log-based
sync)
25. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
CLOUD MANAGEMENT
Managing Multiple Databases with Ease
26. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Administration Tools
Cloud Console
Graphical
Browser-based
Manage all servers and databases
Hosted and available from any server
Command-line tools
Allows scripting and automation of
cloud actions
27. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Dynamic Scaling
Resources that make up a cloud can be
dynamically scaled during runtime
Add/remove databases
Add/remove servers
Add/remove hosts
28. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Auto-start
Databases can be set to auto-start
Database automatically starts on new
connection
Database optionally shuts down when last
connection drops
Allows placement of 10 times more
databases on a server
Useful for application with many databases
that use them infrequently
29. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Balancing Load
Databases can be moved between servers
in order to balance workload
Database movement managed by the cloud
Databases remain available during a move
Useful for rebalancing database workload
Servers added or removed
Workload of a database changes
30. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Executing Tasks
Tasks are blocks of work that can be run
against databases, servers, and hosts
Tasks can target specific objects, or
groups of objects
Tasks can be run on-demand, or
scheduled
Examples of tasks:
Custom SQL statements
Start/stop databases
Moving databases
31. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Backups and Maintenance
Backups are managed by the cloud
All backups are taken to another server in
the cloud
Databases can be assigned maintenance
plans for more complex backup
scenarios
Databases can be restored easily from
backups
32. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Handling Software Updates
Software updates can be applied remotely
to all servers using the tools
Clouds can run multiple versions of the
software simultaneously
Allows updates to be rolled-out in stages, if
required
33. (c) 2015 Independent SAP Technical User GroupAnnual Conference, 2015
Thank you
Jason Hinsperger
jason.hinsperger@sap.com