InfluxDB 3 Core and Enterprise Are Now in Beta

Navigate to:

Today we’re excited to announce that InfluxDB 3 Core, our new open source product licensed under MIT/Apache 2, and InfluxDB 3 Enterprise are now in beta.

InfluxDB 3 Core is a high-speed, recent-data engine that collects and processes data in real-time, while persisting it to local disk or object storage. InfluxDB 3 Enterprise is a commercial product that builds on Core’s foundation, adding high availability, read replicas, enhanced security, and data compaction for faster queries. A free tier of InfluxDB 3 Enterprise will also be available for at-home, non-commercial use for hobbyists to get the full historical time series database set of capabilities.

Since launching both products in alpha on January 13, we have been building and iterating quickly—incorporating feedback, refining features, and pushing performance improvements. Now, with beta, we’re stabilizing APIs, ensuring seamless upgrades, and gearing up for general availability in April.

In this post, we’ll highlight what’s changed since alpha, what to expect from the beta, and our plans for getting to GA. If you’ve been waiting to try out InfluxDB 3 Core and Enterprise, now is the time—Download the beta build and join us on the InfluxDB community Discord.

Key improvements since alpha

Write-Through Caching for Faster Query Performance

InfluxDB 3 Core and Enterprise are designed to operate using object storage. However, to make queries fast, we have to manage the data lifecycle to ensure that hot data is always in RAM. Even a single request to object storage for a file in the query path can blow out our target response times. We put a bunch of work into caching, specifically write-through caching, to ensure that queries for recent data are always served from RAM if the server is configured with enough cache space.

Processing Engine

The other big effort during the alpha was the build-out of the processing engine. This is an embedded Python VM for data transformation, enrichment, downsampling, and alerting—all within the database itself. It supports triggers on writes, schedules, or HTTP requests to a trigger-bound endpoint. We now have all trigger types wired up and example plugins written in the InfluxDB 3 Plugins Repo. Here’s one we wrote about recently for monitoring and alerting.

In the plugin API, we’ve added functions to query the local database, write data back into any database, and, most recently, an in-memory cache that can be accessed across separate trigger invocations. The full details are outside the scope of this post, but you can find more information on the plugin documentation page.

Simplifying Multi-Server Enterprise Clusters

For our Enterprise offering, we’ve worked on making setting up and managing multi-server clusters much easier and seamless. An Enterprise setup with multiple nodes in a cluster communicates by sharing data through object storage; they’re isolated from each other for better fault isolation and robustness. Enterprise makes it easy to separate ingest from compaction, query processing, and trigger processing. Operators can scale each component independently, tailoring it to their own tooling and rules.

These are just a few of the improvements we’ve made. There’s more under the hood, but these represent some of the highlights.

What to expect during beta

Moving into beta means we will no longer make breaking changes to the API. Any updates to file formats or organization will have in-place upgrade paths for builds starting with today’s beta release. This means that you can use the beta for testing and validation purposes and be sure that when you upgrade, your data will come with it, and your APIs will all work the same.

That said, we’re not recommending the software for production just yet. Our focus during beta is on testing, robustness, performance, and tooling for production deployments. We’ll make weekly releases, each with an associated changelog, to make it easy to track updates. When we release the GA, you’ll be able to upgrade any beta deployment seamlessly.

Processing engine still in alpha

The embedded Python VM, which is the processing engine, should still be considered alpha software. It is fully functional and allows users to create and share plugins that trigger off of writes, a schedule, or requests to an HTTP endpoint. However, we want to continue iterating on user feedback and making changes where they make sense.

While we don’t anticipate any breaking changes, we’re not yet committed to the current API as the long-term support target. The feedback we get during this phase will be important to fine-tune the API for our users’ needs.

Files in object store

InfluxDB 3 Core and Enterprise support a “diskless” architecture, keeping all states in object storage. This means that as an operator, you can inspect the files that the database puts there. However, we want to point out that the specific file layout and format should not be considered part of a stable API. Only the HTTP and Apache Arrow Flight APIs should be considered stable.

We may evolve the organization, layout, and file formats over time. From this point forward, any changes will work with in-place upgrades. However, access to the data in the database is stable only through the regular front door API.

Path to general availability

The InfluxDB 3 Core & Enterprise betas represent the feature set we intend to ship at general availability. From now until GA, we’re focusing on testing, performance, robustness, and tooling.

We’re also launching a lighthouse customer program for early adopters of InfluxDB 3 Enterprise. If you’re interested in being an early customer, please get in touch.

We expect to have the generally available release in the late April timeframe. We look forward to any feedback on either Core or Enterprise.