DBaaS Overview
Presentation
Exoscale Database as a Service, or DBaaS is a database as a service product with a set of data services you can trigger on demand.
Features
DBaaS comes with:
- A managed data engine with a high SLA
- A selection of plans with upscale and downscale possibilities as well as redundancy options
- Automatic backup policies
- Lifecycle management
Terminology
- DBaaS: Database as a Service.
- Service: a deployment of a DBaaS type.
- Plan: a combination of resources based on Exoscale Compute instance types and of data infrastructure features (replicas, backup frequency, et cetera).
- Fork: a new DBaaS service created (or “forked”) from an existing, running service. A fork enables use cases for upgrades, data protection, disaster recovery, and other scenarios.
Architecture
Database services are launched on dedicated instances, but are not directly accessible to the end user or visible in your instance list. The database services are therefore not shared - they run on one or many machines specifically deployed for your organization, depending on your plan.
Service availability
6 services are currently available. These services along with their short names are:
- Managed PostgreSQL:
pg
- Managed Apache Kafka:
kafka
- Managed Mysql:
mysql
- Managed OpenSearch:
os
- Exoscale for RedisĀ®:
redis
- Managed Grafana:
grafana
Geographical availability
DBaaS is available in all current Exoscale zones.
Service level agreement
All plans come with a SLA regarding the availability of the data service:
- all Hobbyist and Startup plans: 99.95%
- Business and higher plans: 99.99%
Known limitations of DBaaS
Some features are currently unavailable in DBaaS and need to be taken into account while working with it.
CLI/API support and partial Portal support
To access the full set of features for DBaas, you can use the CLI and API. The Portal has partial coverage at this time. We are continually working to bring full DBaaS functionality to the Portal, as well.
Service integration
Integrating DBaaS services with one another is not currently possible.
Multi-zone setup and geo-replication
All services that support replication from their protocol can be deployed with geo-redundancy from the CLI with the integration capabilities. Read more about this feature in the specifics of each service.
However, forks are possible across zones, which enables you to start a copy of a service from one zone in another zone.
Data migration
Migrating from an existing non-Exoscale DBaaS is possible only from the Portal and is applicable to SQL based services only.
General information about Exoscale DBaaS plans
The naming convention for plans indicates the resources of each single instance or cluster of instances powering your service:
- Service type: pg, kafka, redis,...
- Plan: hobbyist-1, business-32, premium-9x-16
Where:
Hobbyist, startup, business, premium keywords differentiate the redundancy and data protection mechanism used for each service. See the product pages to learn more about the available plans and their specifications.
The optional first digit indicates the number of nodes in the cluster for distributed systems.
The last 1, 2, 4, ...32, ...225 indicates the memory in GB associated with each node in the plan. These are indexed on the existing compute instance types available at Exoscale, so a 32 GB is a general purpose Huge instance.
For example, an Apache Kafka service on a premium-9x-16 plan is a Kafka cluster with 9 nodes, each with 16 GB RAM. The other details regarding storage, backup, number of connections, versions and plugins are available in the tables or documentation.
Restrictions and authorizations
Some of the DBaaS plans
require an authorization. You can list
the plans that are currently available to your organization with the
command exo dbaas show <SERVICE TYPE> --plans
.