Today, the Beta label comes off of our hosted TimescaleDB offering! It’s exciting to add yet another data store to the ObjectRocket platform in both AWS and GCP. It’s been about a month since we’ve posted about our Beta, so as a quick reminder, your hosted TimescaleDB instance comes with:
- Open-source TimescaleDB 1.6 w/ PostgreSQL 11 or TimescaleDB 1.7 w/ PostgreSQL 11/12
- Availability in multiple AWS and GCP regions, and we’re always adding more
- Managed Backups with 2 week retention and Point-in-Time recovery included
- Single node and HA (master/replica) configurations
- Library of additional extensions available
- Configuration setting customization
- 24×7 support from Database engineers and DBAs included
Go check it out now with a free trial, or read on if you’d like to learn more about the best use cases for TimescaleDB.
TimescaleDB is a time series database. Quite simply what that means is that it’s optimized for and includes additional functions for data that has a time component. When you’re dealing with data across the time dimension, TimescaleDB is faster and easier to use than a standard SQL or NoSQL database.
To get more specific, here are a few common use cases where we see the most interest in and advantage of using TimescaleDB.
Metrics / Prometheus Data Storage
The first and most common use case is storage and analysis of system and application metrics. In any IT environment, it’s important to be able to quickly and easily analyze the status and metrics for the infrastructure and services in that environment. TimescaleDB can act as a key part of your monitoring solution by providing the storage of metrics, a query language (SQL) that makes it easy to analyze data, and an ecosystem of supported tools that aid in the collection and visualization of data.
When it comes to data collection, any tool that stores data in PostgreSQL/SQL can work with TimescaleDB, but two extremely popular options that the TimescaleDB team has built support for are Prometheus and Telegraf.
Prometheus is an extremely powerful metrics collection, query, alerting and analysis stack with tons of integrations with other tools. However, one of the biggest gaps in Prometheus out of the box is long term storage of metrics. That’s where TimescaleDB steps in. TimescaleDB provides a PostgreSQL extension and adapter (soon moving to here ) that allow you to store and query your Prometheus data in TimescaleDB. From there, you’re free to use any tools that plug into Prometheus for analysis, visualization, and alerting, or use tools that directly interface with TimescaleDB instead.
Telegraf offers similar benefits by providing an agent with various integrations and plugins that allow you to collect metrics from various sources. There is currently an open pull request from the TimescaleDB team to add PostgreSQL as a standard output plugin for Telegraf, but until that is approved, TimescaleDB offers a build of telegraf with the Postgresql output included.
Beyond the data collection side of things, there are also a number of visualization and alerting tools that support TimescaleDB today. The most popular option open source option is Grafana (we even use it at ObjectRocket), but there is also support built in for Tableau, PowerBI, Looker, Periscope, Mode, Chartio, and more.
Similar to other time series applications, Internet of Things devices generate constant streams of data and once again, they have a strong time component. Where TimescaleDB provides a distinct advantage is that it’s optimized to keep up with high rates of data ingest as your number of devices scales and provides a standard SQL interface that will make it easier to plug into whatever you’re using to collect and process that data.
If you’re building a service to collect time series data, basing it on a standard technology like SQL helps you to lower risk and time to market since you’re working with a proven, pervasive, and easy to use technology.
To get you started, Timescale provides a nice tutorial to show how you could use TimescaleDB in an IoT scenario. As we look to the future and TimescaleDB’s ability to partition data within a node as well as their clustering solution (currently in private Beta) it’s becoming a candidate for larger and larger applications.
Web Application Event Tracking and Analytics
An additional use case where TimescaleDB can provide unique benefits is in web application event tracking. In order to provide better service, detect issues, and learn more from their customers, it’s becoming increasingly common to keep a record of how users are consuming web services. As with the previous use cases, this results in data based on time and lots of it. As more and more users interact with the app and click through, the volume of data can become harder to collect and analyze.
Since web analytics could involve many different types of data, the flexibility of having PostgreSQL under the hood with its massive list of supported data types is a huge advantage. Though you won’t be able to take advantage of every TimescaleDB function with every data type, you’ll still be able to take advantage of many of the speed and storage optimizations that TimescaleDB provides.
Finally, TimescaleDB’s ability to plug into common frameworks and BI tools, enables you to gain better visibility of how customers are using your application and to provide better experiences using tools and query languages that you’re already familiar with.
Whether your use case fits into one of the buckets above, or if it’s completely unique, you can try TimescaleDB on ObjectRocket free and we back up all of our instances with 24×7 monitoring and support.