Introduction to Levitate

Everything you need to know about Last9's managed Prometheus — Levitate.

What is Levitate

Levitate is Last9’s managed Time Series database.

We built Levitate to give engineering teams a cost-effective tool to monitor large, complex systems. Now, engineering hours are not spent monitoring your monitor i.e. managing TSDB availability, scaling, replication, and multiple instances.

  • Solves High Cardinality
    Levitate is built to handle the massive scales of data, and can handle queries at any cardinality. Above all, it gives you real-time insights into what metrics are unused.

  • Pay for what you use, reduce costs
    Levitate reduces storage costs by up to 50% compared to similar TSDBs. This is over and above the engineering time and overheads spent maintaining internal infrastructure.
    With Levitate data retention policies & tiered storage, you pay for the metrics you use. Scale without having to tune the configuration, & having to run a whole setup for data scaling.

  • Increase engineering productivity
    Levitate is fully managed. No need to worry about adding more machines, managing replication, or multiple Prometheus instances. Just change the remote-write endpoint of your one or many TSDBs. A simple UI manages it all.

With Levitate, you can resolve incidents faster with decreased querying times, and allow engineering to focus on building the product.


How is Levitate different from other Prometheus-compliant SaaS offerings

Levitate is built for high query performance, high availability, and low latency writing. Levitate automatically scales your data ingestion, query speed, and concurrency needs.

Levitate’s write availability SLA is ~ 99.9%, with no work needed by your team!

That means your Prometheus agents can be lightweight transmitters. Bye Bye storage concerns and no data loss 👋

Levitate’s standard read availability SLA is 99.5%, giving your team confidence that your monitoring database won’t leave your team blind during an incident.

Levitate Service Level Agreements

Operation TypeAvailability
Read from any tier99.5
Write99.9

Tiers

Inspired by principles of Data Warehousing, where Data Tiering is a common phenomenon, Levitate introduces tiers for Time Series storage.

Teams only emit metrics to a single write endpoint from an Integration perspective, and data reaches each of the respective Tiers. All Tiers have all the fresh data, but their data retention varies. Each tier functions as a completely independent Time Series database but serves different concurrencies, query latency, and depths.

12001200

Example of Levitate Tiers

To understand the power of tiers, imagine the current situation where all the metrics, used or unused, are saved in the database. Say there is an auto-refreshing dashboard panel that greedily aggregates 6-months of payment failures saved per transaction and renders it on a histogram chart. Imagine five such dashboards, refreshing every 15 seconds. This is enough to bring an 8-core, 32GB RAM database to its knees. During this period, the ingestion, as well as critical alerting, gets impacted.

This lack of control results in constant horizontal scaling of the database, and that’s time and money spent on metrics that are not even used.

You don’t just pay extra for what you don’t use; you pay extra because of what you don’t use.

Levitate can segregate data into Virtual clusters, or Tiers, with distinct access control parameters like:

  • Retention Limit — Limit the data that is available in the Tier. i.e x months/days/hours.
  • Concurrency Control — Limit the active number of queries the Tier can handle simultaneously. This is the most trustworthy indicator of Performance.
  • Range Control — Limit the number of days of data allowed to be looked up in a single query. It directly impacts the number of data points or series loaded into the memory.

What is the default retention policy for Levitate?

The default retention policy is 7 days. Enterprises can choose to modify this as per requirements.

Levitate can segregate data into Virtual clusters, or Tiers, with distinct access control parameters like:

  • Retention Limit — Limit the data that is available in the Tier. i.e x months/days/hours.
  • Concurrency Control — Limit the active number of queries the Tier can handle simultaneously. This is the most trustworthy indicator of Performance.
  • Range Control — Limit the number of days of data allowed to be looked up in a single query. It directly impacts the number of data points or series loaded into the memory.

Levitate has powerful features to identify time series your team isn’t using and trim data according to policies you create. Organizations can also create Policies and have better data Governance.

Policies and Governance

Policies are classified as Access Policies and Data Policies.

Access Policy

Access Policies control how Tiers are engaged based on Access Methods.

Some Example Access Policies

PolicyImplications
Any token from Grafana will only read from cold Tier. This Policy ensures that Grafana queries will NEVER interfere with other high-priority traffic reading from blaze Tier.
Infra-team token from Grafana will only read from blaze Tier. This Policy ensures that when a Grafana panel uses an Infra data source configured to use an Infra-team token, Levitate will serve all queries from that Panel from the blaze Tier, which is fast but ONLY restricted to the last 1 hour of data.

An attempt by this Panel to read more data will only yield 1-hour of data.
Science-Read token from Anywhere will only read from Cold Tier.This Policy mandates that whenever the token supplied is Science-Read, no matter where the request originates, it will ALWAYS be served from Cold Tier.

Data Policy

Data Policies control how data moves in and out of Tiers based on Access Frequency and Time.