RavenDB on the Cloud: Overview
Running RavenDB as a cloud service frees you from operational overhead by passing much of the administration to the hands of RavenDB's developers and allowing them to maintain and optimize your instances for you, take care of cluster operations like adding or removing nodes, and run recurring tasks like backing up your data.
Our and your administration
Ridding you of administrative chores that don't require your attention is complemented by providing you with comfortable control over your data and database management via your account's Portal and the cloud version of our Studio management GUI.
Some of your products may share their resources with other applications and users, while other products may occupy machines reserved for their usage only. Read about reserved clusters, burstable instances, and credits to understand more about your choices.
In this page:
What do you get?
Some of the key reasons for running RavenDB on the cloud are -
- The high availability of a cloud service.
- The constant monitoring and healthcare of your products and their accommodating equipment.
- Your insulation from the cloud infrastructure's administration as we handle and continuously optimize it.
- The high security level.
- Regular backups to your database and settings.
- Our support.
Register Your Account
To create a new account, enter https://cloud.ravendb.net/user/register and allow the wizard to walk you through the 4 simple stages of the registration procedure:
- Provide your email address
- Click the Next button
Enter an unoccupied domain name of your choice, that would be used for your cloud products.
The domain name is typically your organization or project name and will be used in all your products' URLs. The procedure will check this name's availability, and if it's free - let you continue using the Next button.
If you prefer not to currently provide a domain name, use the Later button.
You will still be required to provide a domain name, but it will happen later on when you create your first product.
Enter your billing and payment information and click the Next button
Click the Skip Billing Information button if you prefer to evaluate the cloud service for now using the free product.
- Verify your choices, confirm you're not a robot and click the Sign-up button to register your cloud account.
Signing up will send you a message with a link to your email.
- The sign-up process will send a registration link to your email.
- Click the link to enter your account. No password required.
- The link will expire after a while, use the login page to re-visit your account.
Login To Your Account
To access your account, click https://cloud.ravendb.net/user/login.
Enter the same email address you provided during registration, confirm you're not a robot and click the Send Magic Link button
The login procedure will send you a message with a link. Click the link to enter your account, no password required.
The magic link is expirable to make sure each visit is logged and keep account activity trackable and more secure.
An account can currently be managed by a single operator, we will soon add multiple-operators management.
RavenDB on the Cloud
Instances, Provisioning and RavenDB Products
A cloud instance is a RavenDB server, allocated for you on a cloud provider like AWS or Azure.
Your cloud instances are fully managed by RavenDB Cloud, including security, monitoring, backups and patches.
You get operator-level access to your RavenDB instances, and can perform most admin operations on your own.
Each RavenDB product is provisioned as many instances as it requires. A production cluster for example is allocated three instances at a minimum, while a development server's single node is allocated a single instance.
Your RavenDB product can be a single server or a multi-node cluster.
Each server or cluster-node occupies a single cloud instance.
Different instances are equipped to your specifications to accommodate your different products and may be considerably different from each other in features, capabilities, and cost. The instances of a basic production cluster, for example, are burstable, while those of a higher-grade production cluster are reserved.
There are three types of RavenDB cloud products. They are explained in detail in the Tiers and Instances section, in the meantime - here are a few words about each.
The Free Tier
This tier offers a single product: a single-node RavenDB cloud server designated for experiments and evaluation.
It is operated by a low-end instance that is shared with other users and is equipped with the community subset of RavenDB features.
You can have only one free instance in your account.
The Development Tier
The development tier offers a set of server configurations that can handle increasingly
higher CPU load. All configurations are single-node servers, but a development server is equipped
with RavenDB's full features set.
Though superior to a free instance, a development instance still runs a single node on shared hardware and is designated for development, not production.
The Production Tier
A production configuration is a full RavenDB cluster of at least three nodes. You can choose its components using the Portal from a set of pre-selected templates, or contact us and we'll custom-tailor your product for your specific production requirements, i.e. with a specific HW selection or a multi-region cluster.
|Development||Dev10-Dev70||Very low - High||All||Yes|
|Production||By CPU Priority (Basic/Standard/Performance)
By Cluster Size
|Up to extra performance, high network and reserved NVMe||All||Yes|
Burstable vs. Reserved clusters
Reserved clusters are production clusters of grade Standard or Performance. Their resources are pre-allocated and can be used only by them. Designed to run production systems with demanding workloads, these are the workhorses of the RavenDB Cloud.
Free instances, Development instances and low-end ("basic") Production clusters are operated by
"burstable" CPUs. Such clusters are suitable for small to medium production loads but are limited
in the total amount of resources that they can consume.
RavenDB's burstable instance allows you to consume more resources for a short amount of time but will throttle operations if the cluster uses more than its fair share of system resources.
Such clusters are useful because a RavenDB Cloud balances resource usage among the instances in the cluster.
If you expect moderate usage (with some peaks), choosing a burstable option can allow you to save about 20% of your costs.
Upgrading from Burstable to Reserved The RavenDB Cloud allows you to upgrade from a Basic production instance to a Standard or Performance cluster at will, with no impact on your system availability.
Budget, Credits and Throttling
Burstable instances are given a budget of CPU credits.
Credits are consumed when the instance uses computing and I/O resources, and are accumulated, up to a certain limit, when resources usage is low.
Burstable INSTANCES and throttling
When an instance's budget is consumed, its services are throttled.
For example, Indexing may be delayed and Requests may be denied.
We throttle by denying resources, instead of charging you more.
RavenDB Cloud automatically attempts to balance the load between your cluster nodes.
Burstable CLUSTERS and throttling
Basic-grade production clusters are burstable: each node of such a cluster is accommodated by a burstable instance.
When the budget of a burstable cluster is drained or nearly so, the cluster automatically shifts the workload to cluster nodes that still have credits to work with.
If the amount of work you're performing is large enough to drain the entire cluster's budget, it may still be throttled.
Use a suitable configuration.
The stronger your burstable instances are, the less susceptible they are to budget drainage and throttling.
If you are regularly warned or your product is actually throttled, consider upscaling its configuration.
Your instances will warn you when their credits are about to drain up, and inform you when throttling is performed.
They will also perform preemptive actions to lower resources usage.
How much is a CPU credit, and what's in my budget?
A single credit represents using 100% of the CPU for a full minute out of an hour.
You can view what's currently in your instance's budget, by adding
/debug/cpu-credits to its URL.
Note that the figures relate to CPU seconds; for CPU minutes, divide them by 60.
"MaxCredits": 8640.0 means your instance can accumulate an entitlement for up to 144 minutes of full CPU usage.