SQL Database-as-a-Service Platform
CumuLogic SQL Database-as-Service is a software platform that provides users with a fully managed instance of MySQL and Percona XtraDB database servers on premises, on any Infrastructure-as-a-Service (IaaS) cloud or VM pool. CumuLogic’s DBaaS platform gives you full access to the functionality of MySQL – one of the most commonly used SQL database servers. CumuLogic’s unique SQL DBaaS platform allows you to manage a SQL database from either CumuLogic User Interface, command line tools, or RESTful API.
CumuLogic’s SQL DBaaS platform automates provisioning, configuration, performance optimization, management, failover, backups, updates and patching, and security and access control. This automation eliminates over 75% of the administrative tasks associated with managing database servers so developers can focus on developing quality applications and improving their time-to-market.
- On-premise DBaaS software platform
- Amazon RDS compatible, fully managed instance of MySQL and Percona XtraDB database servers
- Eliminates over 75% of administration tasks with automated provisioning, configuration, performance optimization, failover, backups, updates and patching and more
- Can manage both SQL and NoSQL databases with a single user interface and command line tools or RESTful API
- Supports uses cases, such as Web Application Hosting, Disaster Recovery, Big Data Analysis, Dev/Test/QA environments and more
- Easy to integrate with existing billing, monitoring, metering systems and network operations
- Customizable to match the look-and-feel of your Cloud Console
Features supported by CumuLogic SQL DBaaS platform are:
- Provisioning – Single-click or single-API call to provision the desired database instance: size with configuration and performance parameters, single or multi-node clusters, backup settings, size of storage volumes and rules for auto updates and patches.
- Monitoring – With its built-in monitoring of metrics which can be viewed from the CumuLogic Console, users have visibility into key functional and operational metrics of the database engine and instance, including CPU, memory, I/O, database connections and storage utilization. Charts give users a view into database performance trends and can be used to analyze utilization and performance history using monitored metrics.
- Backup and Recovery – The SQL DBaaS platform provides automated backups at a defined intervals. Backup files are stored on the user’s object storage account or any other storage volumes available on a given cloud. Database backup files are usually retained for one day. In addition, users can define the backup frequency, as well as the time window for the service to initiate the backups. The flexible retention policy can be modified by the user per database instance based on specific requirements. Users can also initiate a point in-time recovery from the database backups or launch a new database instance using one of the existing database backups.
- Database Snapshots – Users can initiate database snapshots at any time on a running database instance, restore a database snapshot, or launch a new database instance with an existing snapshot. User-initiated snapshots are retained permanently until deleted by the user. It is also possible to recover/restore snapshots in other availability zones, enabling users to migrate a database from one availability zone to another.
- Replication – Database instances can be scaled out to handle excessive workloads by adding read-only replicas of running database instances. Applications can be configured to read from read-only replicas, and write only to the master database instance. Replication of the master database is managed by using the native MySQL built-in replication capability. You can also add read-only replicas of your master database in different availability zones than your master database. This not only allows you to scale applications, but also provides redundancy and data durability. In addition, if the master database becomes unavailable, any read-only replicas of that master server will get promoted as master servers and allow for read-write operations. It is also possible to create a replica and detach it from the master (promote replica-to-master) for creating a separate testing/QA environment with the same data.
- Scaling – It is possible to launch a single node of Percona cluster and add/remove additional nodes as you scale your application dynamically. You can also scale read-only replicas of a single instance of MySQL dynamically.
- Multi Availability Zone Support – The multi-availability zone support for Percona Server allows you to launch a Multi-AZ Percona Server. For redundancy purposes, the CumuLogic platform will launch a second node in another availability zone if your cloud provides one. In case your primary master database fails, the CumuLogic platform will switch the DNS end-point to a secondary database server in another availability zone to reduce or eliminate application downtime.
- Automated Software Patching – CumuLogic’s DBaaS platform provides an optional feature to apply minor updates and patches to the database engine. Users can choose when the updates are to be implemented and schedule the implementation. The DBaaS platform does not apply patches for the operating system.
- Optimization – CumuLogic’s DBaaS platform comes with a set of default performance parameters for the MySQL database engine and the instance size. Users can modify the performance parameters to suit the application workloads in real-time, and in most cases, without rebooting or shutting down the running database instances. Users may also apply new database parameters to running instances but set them to take them effect only during a defined maintenance window.
Get A Free Trial with a Cloud Provider Partner
CumuLogic Database-as-a-Service Platform eliminates over 75% of the database management tasks for developers and administrators while providing the flexibility to control the performance, scalability and performance of the database instances.
- Ease of Use with Single-Click Deployment – Easy-to-spin-up new database instances whether for development, QA/Testing or production purposes. Database instances can be provisioned using CumuLogic Console or with an API call. The deployment and lifecycle control of the database instances can be easily automated by using command line tools.
- Low Cost of Operation – The database instances are fully managed and monitored, eliminating the need for manual installation, configuration, backups, patching, scaling and replication. The built-in monitoring of database metrics allows users to analyze the performance and availability, eliminating the cost of database and application operations by over 75%.
- On-Demand Scalability – CumuLogic’s DBaaS Platform can scale the instances by adding replica sets for handling ready-only operations. Replica sets can be added on-demand based on the current workload, and scaled down when not needed. Ready-only replicas can be added within minutes and avoid loss of user requests or poor application performance.
- Reliable – Reliability is achieved by providing options to deploy multi-node database instances. Multi-node database instances are multiple nodes of a cluster, which not only provide reliability, but also enhance the scalability of applications. Reliability of database instances can also be improved by using multiple replicas of the master database instance. In the event of a failure of the master database, replicas can be promoted as primary database servers.
- Secure – Database instances are secured using the firewall settings and security groups of IaaS clouds that allow users to control remote access to the database instances. Database instances can also be configured to use secured connections only.
- Cost Effective – CumuLogic’s DBaaS platform scales on-demand so you can start using the size of instances which can handle a minimal workload and only scale the database out when needed. This eliminates costly overprovisioning of resources and the management cost of the database service.
- Compatible – CumuLogic SQL Database-as-a-Service Platform is fully compatible with standard open source versions of MySQL making it easy to bring an existing database dump to the CumuLogic platform and vice versa. Also, the standard tools that you use to manage your database schema can be used to manage database schemas on the database instances. Applications require no change in code in order to use CumuLogic’s DBaaS platform.
- Integrated with PaaS – Applications deployed on CumuLogic’s platform can easily be configured to connect to the database instances managed by the database service. In fact, only a single datasource for the applications is required to run on the platform in order to connect to the database instances. This allows users to build highly fault-tolerant application architectures.
- No Additional Cost – Database instances are charged by the VM hour. Please note that, the DBaaS Platform VM templates may have a slightly higher cost per hour than the vanilla VMs on an IaaS cloud depending on the cloud provider.
- Supported on Multiple IaaS Clouds – CumuLogic’s platform abstracts the underlying APIs of the different Infrastructure-as-a-Service clouds, including Citrix CloudPlatform, Apache CloudStack, OpenStack, Eucalyptus, and VMware vCloud. This enables users to deploy the CumuLogic platform and CumuLogic-powered cloud services on any of the supported private clouds and public clouds from the same platform.
CumuLogic SQL Database-as-a-Service Platform supports the MySQL database engine, providing a quick way for developers and system administrators to provision fully managed instances of MySQL database server on any cloud. With a single click or a single API command, users can provision a fault-tolerant, multi-node MySQL cluster, or a single node instance of the standard version of MySQL server.
When provisioning the MySQL database engine, users can tweak the performance parameters (referred as database parameters) to optimize the database service for their applications and workload types.
Once provisioned, the database instances are fully monitored and managed by CumuLogic’s DBaaS platform, including:
- Monitoring and reporting any instance failures
- Self-healing from some possible failures such as process crash
- Periodically backing up the database to an alternate storage, most commonly object storage if available
- Configuring security and access controls by using firewall settings, security groups on IaaS clouds and using master user names and encrypted passwords
- Scheduling patching and applying minor updates to the running instances
Users can override the default time intervals of the scheduled automated backups, define the backup data retention policies, change the maintenance time windows, configure security and access credentials and override any updates and patching policies of the running instances.
CumuLogic SQL DBaaS Platform users can also create multiple read-only replicas of a master database instance to scale out their applications. Ready-only replicas are synchronously replicated and can be used in the event of master database failures.
CumuLogic’s DBaaS platform can be easily deployed with CumuLogic Elastic Cache (Memcached) service to enhance application performance.
Working with CumuLogic SQL DBaaS Platform
CumuLogic SQL DBaaS Platform can be used to launch database instances using the User Console or a simple set of API. Users can launch database instances, create read replicas, take snapshots, create and apply parameter groups.
Requirements – To run CumuLogic NoSQL DBaaS platform inside your datacenter, you can download CumuLogic Installer. You only need access to a single VM (or you can install it on bare metal as well) with at least 16GB RAM and 50GB disk space. The CumuLogic platform integrates with Citrix CloudPlatform, Apache CloudStack, OpenStack, Eucalyptus, and VMware vCloud environments. Performance of MongoDB, Couchbase and other CumuLogic services depend on the environment type and block storage available.
Launching a Database Instance – Select the MySQL database engine and size of the instance, and launch your database. Optionally, you can enable multi-zone deployment, or you can configure the database parameters and customize the preferences for backup and update maintenance time windows. Once you have launched a database instance you can get credentials and access point so you can use them to configure the datasource for your application to connect to the database instance. You can also use your preferred database management tools such as MySQL Workbench to create the schema and import data into the database instance.
Creating and Applying a New Database Parameter Group – Database parameter groups allow users to optimize the performance of the database for specific workloads. You can easily create a new parameter group from a parameter family group of the engine, modify the selected parameters and apply that parameter group to your database instance. You can apply database parameter groups to running instances with requiring a restart of the instance or start a new database instance with new parameter group.
Scaling out the Database Instance – You can add additional read-only replicas to your master database instance in the same zone or in a another zone to handle excessive workloads. Creating additional replicas will synchronize the database with the master database instance. You can configure your applications to read from read-only replicas but you must write exclusively to the master database instance. There may be a delay in synchronization between the master database instance and the replicas which can cause the application to get stale data at some point in time. Use caution when allowing applications to read data from read-only replicas. Optionally, you may want to consider using in-memory cache servers using CumuLogic Elastic Cache to help you scale your applications.
Taking a Snapshot – We recommend taking full database snapshots at regular intervals or at critical points where you are making major database or application code changes. In the event of a recovery, you may restore the database to in-point snapshots from the full database snapshots.
Monitoring and Optimizing – You can use monitoring metrics and charts to identify any potential issues with your database instance. As needed, you can edit the desired performance parameters by using database parameters and/or by using the in-memory caching service to scale out your database performance.
Users can also deploy applications using CumuLogic platform services and connect applications using a standard JDBC connection string.
The database tier is a key architecture component for any application. Applications may use relational databases such as MySQL or NoSQL based on the application type, the data type and the size of the data. With CumuLogic DBaaS Platform, developers, DevOps and Ops teams can quickly launch the desired type of database and adjust the size of the database nodes with a single API call or a single click on the UI. This completely eliminates the need for installing or provisioning, configuring, and managing the databases.
MySQL for Web applications
MySQL database service is commonly used in web applications since it can scale on demand to handle the peak workloads of a given application. Developers can simply launch a single database instance and add read-only replicas at a time when their number of users is expected to grow and shut them down when the peak load has stabilized to lower levels again. This allows users to only pay for the extra database nodes when needed.
The CumuLogic SQL DBaaS Platform makes it easy and cost effective to architect for Disaster Recovery (DR) in support of mission critical applications. Traditionally, enterprises have been required to maintain one standby deployment environment for failover when downtime occurs. With CumuLogic’s DBaaS Platform, fully functioning database servers may be launched on the cloud or on different clouds within minutes along with a replica of a database server on an alternate cloud or alternate availability zone on the same cloud. The replicas are fully synchronized and, in case of downtime, applications can quickly use the replica database server’s nodes. If applications are deployed on CumuLogic Elastic WebStack (PaaS), the platform will provision the applications on the alternate availability zone in case of failover. CumuLogic’s DBaaS Platform eliminates the need for costly standby environments and lowers the overall cost of maintaning and implementing a DR plan.