At InfluxData, we deliver a complete Open Source Platform built from the ground up for metrics, events, and other time-based data—a modern Time Series Platform. But what makes a platform modern, what do developers need, and what are the requirements for that modern platform?
Why Time Series?
The way we see it, sensor, server, network, application, and human event driven data are all time series in nature. In fact, we believe that IoT is synonymous with time series since the purpose of any sensor is to measure change over time—so time is a fundamental element.
Server, application, and human event driven data is all time series in nature. To gain insight and act, users will have to evaluate and ask questions about such data which are based on time frames and ranges. Time is no longer something added to data; it is constitutive of the data. There’s no time to write time series routines as they arise because time is already here.
Why the need for a Modern Time Series Platform?
Time series problems are not new. We have been storing timestamps in databases since the advent of the computer, but things have changed dramatically. The first-generation Time Series Platforms were primarily focused on looking at financial data, the volatility of stock trading, and systems built to solve trading. But the fundamental conditions of computing have changed dramatically over the last decade. Everything has become compartmentalized. Monolithic mainframes have vanished, replaced by serverless servers, microservers, and containers. Today, everything that can be a component is a component.
We are witnessing the instrumentation of every available surface in the material world—streets, cars, factories, power grids, ice caps, satellites, clothing, phones, microwaves, milk containers, planets, human bodies. Everything has, or will have, a sensor. So now everything inside and outside the company is emitting a relentless stream of metrics and events or time series data.
This means that the underlying platforms need to evolve to support these new workloads—more data points, more data sources, more monitoring, more controls. What we’re witnessing, and what the times demand, is a paradigmatic shift in how we approach our data infrastructure and how we approach instrumenting, observing, controlling, and automating systems.
The 3 RunTime Tenets of a Modern Time Series Platform
Designed for Real Time
The modern is mercilessly real-time. Users need and want real-time immediate access to all data. They need to identify patterns, predict the future, control systems, and get the insights necessary to stay ahead of the curve. Data should be available and queryable as soon as it is written. Business decisions demand immediate results. A system that is not real-time ready is not poised to succeed in the modern world.
Biased for Action
Basic monitoring is too passive. You can’t manage what you don’t monitor, but advances in machine learning and analytics make automation and self-regulating actions a reality. A modern system must be able to trigger actions, perform automated control functions, be self-regulating, and provide the basis for performing actions based on predictive trends.
The world demands systems that are available 24x7x365 and can automatically scale up and down depending on demand. They must be able to be deployed across different infrastructures without undue complexity. They need to make optimal use of resources, for instance keeping only what is needed in memory, compress data on disk when necessary, and move less relevant data to cold storage for later analysis.
InfluxData’s Time Series Platform was designed from the ground up to support these 3 tenets. It provides a highly scalable data ingestion and storage engine which is super efficient at collecting, storing, querying, visualizing, and taking action on the streams of data in real time. It provides downsampling and data retention policies to support keeping high-value, high-precision data in memory and lower-value data to disk. It is built in a cloud-native fashion providing scalability across multiple deployment topologies including cloud, on-premises, and hybrid environments.
The 3 Developer Tenets of a Modern Time Series Platform
The modern Times Series Platform is developer-centric. Platforms have to be built with developers’ happiness as the key cornerstone, which means:
Fast Time to Value
Developers need a platform that is ready to go on the cloud or via download in less than a few minutes. They need to see productivity in just minutes. The platform needs to understand agile: develop, test, deploy, and repeat all happen in minutes, not days or weeks. The platform needs to be elegant and simple to use, free of external dependencies, yet open and flexible enough for complex deployments. Get real value faster.
Open Source Core
Open source is not about license—it is about sharing ideas and information, it is about participating and collaborating on solutions and ideas, and it is about a community where the whole is greater than the sum of its parts. It is about full transparency where nothing is hidden.
Developers are builders—a modern platform needs to support them in their endeavors. They need platforms and solutions that consider the conditions of today’s data demands from the beginning— platforms and solutions that are integrated and smart and can handle these massive workloads without too much human intervention or excessive dependencies. What they need more than anything is a faster time to value and greater developer happiness—which leads to greater business happiness.
InfluxData’s Time Series Platform is continuously being built and enhanced supporting these 3 tenets. It is built on an Open Source core and completely written in Go. You can download and get up and running, with zero external dependencies, in just minutes. Or if you prefer, we can manage it for you—try InfluxCloud. Developer happiness is important to us, and we have an active dedicated community that we recommend you join and participate in the discussions.
At InfluxData, the real reason we created a modern platform is to drive our developers’ time to value down as much as possible. Our goal is to enable developers to focus on the business applications that they’re building rather than the infrastructure required to support the solution. It’s the inspiration for why we built InfluxDB rather than just building on top of Cassandra. We believe that a complete platform that is easy to set up, use and that requires as little code as necessary to get results will ultimately make developers happy and more productive. Why not give InfluxData a try?
We may not always be successful, but that is a component of the modern: it is never finally finished. After all, if time is constitutive of the modern environment, so is change. There will inevitably be new issues that systems have to face. What will the real demands of AI be? What about the store of so much time series data? How will new compression technology affect us? What will retention policies be? How will they change?
This is just the beginning. The modern is as much an invitation as a demand. It’s a journey and a challenge. We hope you’ll join us.