Insights
Insights
UpCloud Managed Database is a database-as-a-service offering a carefree option for running well-known open-source databases in the cloud. It is deployable via the users’ UpCloud Control Panel with configuration options including the choice of database management systems, clustered or single-node systems, and a number of resource plans. Managed Databases are available in every UpCloud data centre location.
Currently, available database systems include the following.
MySQL is the world’s most popular enterprise-grade open-source relational database management system. Managed Databases utilise MySQL Community Edition, supported by a huge and active community of open-source developers.
Customisable database properties
The following MySQL database properties can be set by the user via the UpCloud API.
admin_password | innodb_lock_wait_timeout | net_read_timeout |
admin_username | innodb_log_buffer_size | net_write_timeout |
automatic_utility_network_ip_filter | innodb_online_alter_log_max_size | public_access |
backup_hour | innodb_print_all_deadlocks | slow_query_log |
backup_minute | innodb_rollback_on_timeout | sort_buffer_size |
binlog_retention_period | interactive_timeout | sql_mode |
connect_timeout | internal_tmp_mem_storage_engine | sql_require_primary_key |
default_time_zone | ip_filter | tmp_table_size |
group_concat_max_len | long_query_time | version |
information_schema_stats_expiry | max_allowed_packet | wait_timeout |
innodb_ft_min_token_size | max_heap_table_size | |
innodb_ft_server_stopword_table | migration |
PostgreSQL, also known as Postgres, is a free and open-source relational database management system emphasizing extensibility and SQL compliance.
Customisable database properties
The following PostgreSQL database properties can be set by the user via the UpCloud API.
admin_password | ip_filter | pg_partman_bgw.role |
admin_username | jit | pg_read_replica |
automatic_utility_network_ip_filter | log_autovacuum_min_duration | pg_service_to_fork_from |
autovacuum_analyze_scale_factor | log_error_verbosity | pg_stat_statements.track |
autovacuum_analyze_threshold | log_line_prefix | pgbouncer |
autovacuum_freeze_max_age | log_min_duration_statement | pglookout |
autovacuum_max_workers | max_files_per_process | public_access |
autovacuum_naptime | max_locks_per_transaction | shared_buffers_percentage |
autovacuum_vacuum_cost_delay | max_logical_replication_workers | synchronous_replication |
autovacuum_vacuum_cost_limit | max_parallel_workers | temp_file_limit |
autovacuum_vacuum_scale_factor | max_parallel_workers_per_gather | timescaledb |
autovacuum_vacuum_threshold | max_pred_locks_per_transaction | timezone |
backup_hour | max_prepared_transactions | track_activity_query_size |
backup_minute | max_replication_slots | track_commit_timestamp |
bgwriter_delay | max_slot_wal_keep_size | track_functions |
bgwriter_flush_after | max_stack_depth | track_io_timing |
bgwriter_lru_maxpages | max_standby_archive_delay | variant |
bgwriter_lru_multiplier | max_standby_streaming_delay | version |
deadlock_timeout | max_wal_senders | wal_sender_timeout |
default_toast_compression | max_worker_processes | wal_writer_delay |
enable_ipv6 | migration | work_mem |
idle_in_transaction_session_timeout | pg_partman_bgw.interval |
Supported extensions
Managed Database using PostgreSQL supports the following extensions.
address_standardizer | hstore | pgrouting | postgres_fdw |
address_standardizer_data_us | intagg | pgrowlocks | promscale |
aiven_extras | intarray | pgstattuple | rum |
bloom | isn | plcoffee | sslinfo |
btree_gin | ltree | plls | tablefunc |
btree_gist | pg_buffercache | plperl | timescale_analytics |
chkpass | pg_cron | plpgsql | timescaledb |
citext | pg_partman | plv8 | tsearch2 |
cube | pg_prometheus | postgis | tsm_system_rows |
dblink | pg_repack | postgis_legacy | unaccent |
dict_int | pg_similarity | postgis_raster | unit |
earthdistance | pg_stat_statements | postgis_sfcgal | uuid-ossp |
fuzzystrmatch | pg_trgm | postgis_tiger_geocoder | |
hll | pgcrypto | postgis_topology |
Redis is an open-source, in-memory data store commonly used as a database, cache, streaming engine, or message broker. It offers sub-millisecond response times, enabling millions of requests per second for real-time applications.
OpenSearch is an open-source distributed search and analytics suite. Powered by the Apache Lucene search library, OpenSearch offers a vendor-agnostic toolset you can use to build secure, high-performance, cost-efficient applications, from real-time application monitoring to website search functionality.
Managed Databases are offered with 2 and 3-node clustered solutions as well as single-node unclustered options. The nodes can be configured with the required resources by selecting from the available plans. Each plan includes a set number of CPU cores, system memory, storage and backups. The Managed Database plans are priced according to the number of nodes and the resources allocated to each node.
Database clusters are billed hourly according to the selected configuration plan until the instance is deleted, including while stopped.
Memory | CPU cores | Storage | Backups | Price | |
---|---|---|---|---|---|
2 GB | 1 | 25 GB | 24 hours | €0.0417/h | €30/mo |
4 GB | 2 | 50 GB | 24 hours | €0.0833/h | €60/mo |
4 GB | 2 | 100 GB | 24 hours | €0.1042/h | €75/mo |
Memory | CPU cores | Storage | Backups | Price | |
---|---|---|---|---|---|
4 GB | 2 | 50 GB | 7 days | €0.1389/h | €100/mo |
4 GB | 2 | 100 GB | 7 days | €0.2083/h | €150/mo |
8 GB | 4 | 50 GB | 7 days | €0.2431/h | €175/mo |
8 GB | 4 | 100 GB | 7 days | €0.2778/h | €200/mo |
16 GB | 6 | 100 GB | 7 days | €0.5556/h | €400/mo |
16 GB | 6 | 250 GB | 7 days | €0.7778/h | €560/mo |
32 GB | 8 | 100 GB | 7 days | €1.0417/h | €750/mo |
32 GB | 8 | 250 GB | 7 days | €1.1111/h | €800/mo |
32 GB | 8 | 500 GB | 7 days | €1.2222/h | €880/mo |
64 GB | 16 | 1 TB | 7 days | €2.2222/h | €1600/mo |
64 GB | 16 | 1.5 TB | 7 days | €2.5000/h | €1800/mo |
128 GB | 20 | 2 TB | 7 days | €3.8889/h | €2800/mo |
Memory | CPU cores | Backups | Price | |
---|---|---|---|---|
2 GB | 1 | 2 days | €0.069/h | €50/mo |
4 GB | 2 | 2 days | €0.125/h | €90/mo |
8 GB | 2 | 2 days | €0.153/h | €110/mo |
14 GB | 2 | 2 days | €0.222/h | €160/mo |
28 GB | 4 | 2 days | €0.417/h | €300/mo |
56 GB | 8 | 2 days | €0.806/h | €580/mo |
112 GB | 16 | 2 days | €1.611/h | €1160/mo |
Memory | CPU cores | Storage | Backups | Price | |
---|---|---|---|---|---|
4 GB | 2 | 100 GB | 14 days | €0.2431/h | €175/mo |
4 GB | 2 | 200 GB | 14 days | €0.3125/h | €225/mo |
8 GB | 4 | 100 GB | 14 days | €0.3889/h | €280/mo |
8 GB | 4 | 200 GB | 14 days | €0.4514/h | €325/mo |
16 GB | 6 | 200 GB | 14 days | €0.8333/h | €600/mo |
16 GB | 6 | 500 GB | 14 days | €0.9028/h | €650/mo |
32 GB | 8 | 200 GB | 14 days | €1.5556/h | €1120/mo |
32 GB | 8 | 500 GB | 14 days | €1.6944/h | €1220/mo |
32 GB | 8 | 1 TB | 14 days | €1.9722/h | €1420/mo |
64 GB | 16 | 1 TB | 14 days | €3.1111/h | €2240/mo |
64 GB | 16 | 2 TB | 14 days | €3.6667/h | €2640/mo |
128 GB | 20 | 2 TB | 14 days | €5.5278/h | €3980/mo |
Memory | CPU cores | Backups | Price | |
---|---|---|---|---|
2 GB | 1 | 3 days | €0.139/h | €100/mo |
4 GB | 2 | 3 days | €0.236/h | €170/mo |
8 GB | 2 | 3 days | €0.319/h | €230/mo |
14 GB | 2 | 3 days | €0.431/h | €310/mo |
28 GB | 4 | 3 days | €0.819/h | €590/mo |
56 GB | 8 | 3 days | €1.611/h | €1160/mo |
112 GB | 16 | 3 days | €3.194/h | €2300/mo |
Memory | CPU cores | Backups | Price | |
---|---|---|---|---|
2 GB | 1 | 7 days | €0.208/h | €150/mo |
4 GB | 2 | 7 days | €0.361/h | €260/mo |
8 GB | 2 | 7 days | €0.472/h | €340/mo |
14 GB | 2 | 7 days | €0.653/h | €470/mo |
28 GB | 4 | 7 days | €1.250/h | €900/mo |
56 GB | 8 | 7 days | €2.444/h | €1760/mo |
112 GB | 16 | 7 days | €4.833/h | €3480/mo |
Nodes | Memory | Cores | Backup days | Storage | Price | |
---|---|---|---|---|---|---|
1 | 4 GB | 2 | 1 | 80 | €0.1389/h | €100/mo |
1 | 8 GB | 2 | 1 | 160 | €0.2083/h | €150/mo |
Nodes | Memory | Cores | Backup days | Storage | Price | |
---|---|---|---|---|---|---|
3 | 4 GB | 2 | 3 | 120 | €0.3889/h | €280/mo |
3 | 8 GB | 2 | 3 | 240 | €0.5556/h | €400/mo |
3 | 14 GB | 2 | 3 | 420 | €0.8056/h | €580/mo |
6 | 14 GB | 2 | 3 | 840 | €1.6111/h | €1160/mo |
9 | 14 GB | 2 | 3 | 1260 | €2.4028/h | €1730/mo |
12 | 14 GB | 2 | 3 | 1680 | €3.2083/h | €2310/mo |
15 | 14 GB | 2 | 3 | 2100 | €4.0139/h | €2890/mo |
Nodes | Memory | Cores | Backup days | Storage | Price | |
---|---|---|---|---|---|---|
3 | 4 GB | 2 | 7 | 600 | €0.8056/h | €580/mo |
3 | 8 GB | 2 | 7 | 1200 | €1.3889/h | €1000/mo |
3 | 14 GB | 2 | 7 | 2100 | €2.2500/h | €1620/mo |
6 | 14 GB | 2 | 7 | 4200 | €4.5000/h | €3240/mo |
9 | 14 GB | 2 | 7 | 6300 | €6.7500/h | €4860/mo |
12 | 14 GB | 2 | 7 | 8400 | €9.0000/h | €6480/mo |
15 | 14 GB | 2 | 7 | 10500 | €11.2500/h | €8100/mo |
Note that the database management system and host operating system use a small portion of the allocated storage capacity, typically 1 – 2 GB.
In clustered database deployments, nodes are created on physically separated backend hosts to ensure redundancy in case of hardware failure.
In normal operation, the DNS entry of the database points to a primary node. One of the replicas will be promoted automatically in case of a primary failure.
Users are able to scale their Managed Database services both vertically and horizontally by increasing or decreasing the number of nodes in the cluster or the resources allocated to each node.
Changes to the Managed Database configuration are handled seamlessly in the background with minimal interruption to the services.
Managed Databases can be reached via the user’s private UpCloud Utility network or optionally through the public network connection. A private connection is enabled by default. This makes the database accessible for all the user’s Cloud Servers within the same data centre as the Managed Database.
At the configuration settings, users can set a preferred hostname. The hostname is used to automatically create DNS entries using a unique subdomain name. Each Managed Database can have up to four DNS entries, one for private and another for public access, as well as read-only access for each.
Private: example-mctapmghasah.db.upclouddatabases.com Private read-only: replica-example-mctapmghasah.db.upclouddatabases.com
Public: public.example-mctapmghasah.db.upclouddatabases.com Public read-only: public-replica-example-mctapmghasah.db.upclouddatabases.com
To ensure a consistent experience, concurrent database connections are limited based on the node resources.
Memory | MySQL | PostgreSQL | Redis |
---|---|---|---|
2 GB | 150 | 25 | 8192 |
4 GB | 400 | 100 | 16384 |
8 GB | 800 | 200 | 32768 |
14 GB | 57344 | ||
16 GB | 1600 | 400 | |
28 GB | 114688 | ||
32 GB | 3200 | 800 | |
56 GB | 229376 | ||
64 GB | 6400 | 1000 | |
112 GB | 458752 | ||
128 GB | 12800 | 1000 |
Both inbound and outbound network transfer is unmetered by the Managed Database. The database plans do not include a transfer quota nor will the Managed Databases benefit from the user’s Network Transfer Pool. However, any network transfer via the public network is metered normally user’s Cloud Servers utilising the Network Transfer Pool.
Data transfer via the Utility network is always free of charge.
Users can set connection permissions to specific IP addresses by selecting from the list of Cloud Servers on the user’s account or manually entering IP addresses.
By default, all Utility network IP addresses are allowed. Setting a permitted IP address will exclude connection from all other addresses unless “allow all” is enabled for either public or Utility networks.
Users can set their preferred maintenance windows at their UpCloud Control Panel.
Normal version upgrades are performed in place. Users will be provided with the ability to opt in for any major upgrades.
Each Managed Database plan includes automated backups. Backup retention is set to either 1, 7 or 14 days for 1, 2, and 3 node clusters respectively.
The databases are backed up automatically with full backups daily and the write-ahead log (WAL) is recorded continuously. Full backups are version-specific binary backups, which when combined with WAL allow consistent recovery to a point in time (PITR).
All backups are encrypted and stored off-site independently from the user’s Managed Database without using the cluster’s storage capacity.
The 1-day backups allow the user to go back to any given minute within the last 24 hours. 2-node plans offer 7 days of backups and 3-node plans include 14 days.