Over the last 2 years our range of services and capabilities have grown and we’ve also refined the definition of those services to better meet the demand that we have seen from our customers. Given that change, we thought it would be useful to set out a summary of our offerings, their benefits and what situations are appropriate for each.
At the highest level, we organise our offerings as one of the following:
- Managed services
- Enterprise support
- Consulting solutions
Within each of these high-level services we have multiple engagement models tailored to meet different customer scenarios. In all, we think we have most of our customer’s Cassandra needs covered. Read on below to find out where your needs fit and, as always, we’d love to chat if you have a need that you think doesn’t fit in here.
Cassandra as a service remains the core of our offerings. At it simplest, we provide and maintain a well-oiled Cassandra cluster that you can use to build and run your application. Behind this we:
- Automatically provision the cluster in a completely separate environment for each customer;
- Monitor the cluster and respond to any issues;
- Take care of the regular background tasks (repairs, backups) required to keep the cluster healthy;
- Keep the underlying OS patch and upgrade Cassandra when required; and
- Provide support to answer queries and issues that come up as you use the cluster.
All this is backed by availability SLAs and our support levels and response times are designed to work with your devops team to support the mission-critical requirements that most people have for their Cassandra clusters. Running with our managed service remove the need for your to hire and retain Cassandra engineers as part of your devops team.
Our managed service is available for Amazon Web Services, Microsoft Azure and IBM SoftLayer. We are also able to support other providers and even private data centers through a semi-manual provisioning model. Our managed service can provided with both Apache Cassandra and Datastax Enterprise. Apache Spark and Apache Zeppelin are available as add-ons.
As well as the different infrastructure providers, the main variation in our managed service model is whether the compute resources run in our provider account or in your account.
The advantages of running in our account are:
- simpler and quicker set-up (just hit go on our console); and
- a single, fixed bill covering all costs associated with your cluster.
Running in your own account can also have advantages:
- consolidate your infrastructure costs to take advantage of cloud provider discounts;
- facilitate some more complex scenarios such as direct connection and VPNs; and
- can conform with enterprise policies regarding location and ownership of computing resources.
For those customers that wish to maintain a greater level of control of their Cassandra cluster or who cannot use a managed service for security or policy reasons, we provide support contact to make available the expertise behind our managed service to help keep your cluster reliable and healthy.
The main difference in support vs a managed service is that you retain primary responsibility for the health of your cluster. Our support team is there to help you troubleshoot and answer questions that come up along the way but you are responsible for monitoring, undertaking regular maintenance and, fundamentally, identifying when you are in a situation that requires support. You will still need at least one quality Cassandra devops engineer as part of your team.
Engaging our support service provides insurance that you will have access to a pool of deep Cassandra experience to answer questions or help solve problems that you encounter along the way. External support can improve the reliability of your Cassandra cluster by allowing you to verify risky operations before undertaking them and helping to more quickly resolve any issues that should arise, including fixing bugs in the Cassandra source itself.
Our support service is available through two engagements models:
- a fixed price per node/cluster per month model which includes whatever in-scope support is required to keep your cluster healthy;
- a (lower) retainer plus price per incident model.
Both engagement models provide 24×7 support with response time SLAs designed to meet the mission-critical requirements of Cassandra-based applications.
For most people the fixed price per node/cluster per month model will be most appropriate as it provides you control of your budget and puts the risk of resolving any Cassandra bugs on us. However, for customers with a more mature Cassandra devops capability who expect to make minimal use of support except for in rare, emergency circumstances, the retainer plus per incident cost model can be more attractive.
Whereas Managed Services runs a cluster for you and Support provides reactive assistance to help you resolve issue, Consulting can provide proactive review and advice to help you develop, deploy, operate and optimise Cassandra and Cassandra-based applications.
Our consulting solutions cover a broad range of assistance to help you make best use of Cassandra. This includes:
- reviewing Cassandra data models and configuration for best-practice compliance and optimisation opportunities (health check);
- Cassandra data model design;
- skills transfer exercises to help improve your team’s Cassandra skills (including kick-start training);
- cluster architecture design, performance testing and sizing;
- developing operational procedures for running Cassandra in your environment; and
- design and development to migrate to Cassandra from a relational database.
For consulting, we provide three engagement models:
- On-call consulting: provides a set number of hours for a fixed monthly price on a use-it-or-lose-it basis. Usage is measured in minimum one hour blocks with resource allocation and completion estimate within one working day;
- Prepaid consulting: provides a fixed number of hours to be used as required. Usage is measured in minimum three hours blocks with resource allocation and completion estimate within one working week; and
- Defined Scope Consulting: a statement of work covering a specified scope either with T&M estimate or a fixed price.
Consulting is intended for normal business hours work that does not require critical incident response times (use Support covers that requirement). Out of hours assistance for deployments, upgrades, etc can be arranged through a defined scope of work.
The typical situations where we see these models being adopted is:
- On-call: You want access to small chunks of more in-depth advice and problem solving on a regular basis with a quick but non-critical response time. Perfect for giving development teams a sounding board for more complex questions.
- Prepaid: You have an need for more in-depth assistance, most likely in areas like data model design, performance testing and tuning, architectural planning. The exact scope is not well defined but you have a budget for assistance and can plan when you will need the work done. Perfect for getting chunks of review, planning or design work completed.
- Defined scope: You have a defined scope of work that you would like assistance with or a requirement that falls out of the scope of the other offerings. Defined scope consulting includes our predefined KickStarter, Health Check and Performance Assurance consulting packages.
Consulting, like our managed services and support offerings, is backed by depth of expertise of our engineering team based in Canberra, Australia. We find remote consulting very effective for most engagements. However, we do have consultants located in other parts of the world and can travel where needed for more significant consulting engagements.