Announcing the Graphite/Whisper to InfluxDB Migration Utility (Beta)

Shubhra Kar — February 17, 2016

Over the last few months we’ve been hearing from the community the desire for an easier way to migrate from Graphite/Whisper to InfluxDB. We heard it often enough that we set out to develop an interactive utility to make the process a little easier. So, by popular demand, we are excited to announce the immediate availability of the beta version of our open source Graphite/Whisper to InfluxDB migration utility. You can catch a short demo of the utility, plus ask technical questions about how it works by registering for this Thursday’s brief  “Get Started with the Graphite/Whisper to InfluxDB Migration Utility” webinar happening tomorrow at 9:30 AM Pacific.

About Graphite

Graphite was created over 10 years ago and managed to gain a lot of popularity amongst developers looking for an open source, time-series solution for their metrics data. One of its cool features that drove a bunch of adoption was its powerful query API. The backend data store of the typical Graphite project is a time-series database called Whisper. Whisper is a fixed size DB and works similar to RRD.

However, there are a few pain points with Graphite that are well known in the community. On the backend, scalability issues can appear very quickly when there’s a need to support a high volume of writes, a large number of unique metrics and having to manage very large data sets over extended periods of time.

So, why migrate?

There are several reasons why developers are telling us they are looking to make the switch…

  • Write Performance: Although I am not personally aware of any public benchmarks comparing InfluxDB 0.10.0 with Graphite, the latest release of InfluxDB in a stand-alone configuration can deliver hundreds of thousands of writes per second across up to 1 million unique series. Learn more here and here.
  • Data Compression: The latest release of InfluxDB is able to deliver compression down to around 2 to 5 bytes per point in some cases. Learn more here and see a real world example here. I haven’t seen anything official from the Graphite project about compression, but this old StackOverflow thread puts it at a little over 12 bytes per point.
  • Community Momentum: Developers tell us all the time that although InfluxDB still has more work to do (especially on clustering), the velocity in which the project is improving vs Graphite (or even OpenTSDB) is a huge factor. It’s easy enough to see what these folks mean by heading over to Github and comparing both the Whisper and Ceres projects against InfluxDB, whether you look at code frequency, number of committers, watchers, stars or forks.

The utility can migrate data in two modes, either using the InfluxDB HTTP API or natively with the TSMWriter (which should be faster, but will require a server reboot and only works on a single server.) Let’s do a simple migration…

Now let’s visualize our migrated data…

Because this utility is still in Beta, we are relying on the community to help us test against as many data sets as possible and hopefully uncover some edge cases we might have overlooked. Let us know what you think or if you have questions:

What’s next?

  • Get the code on Github and log any issues you encounter.
  • Register for the short “Get Started with the Graphite/Whisper to InfluxDB Migration utility” webinar happening tomorrow (Feb 18) at 9:30 AM Pacific.
  • Get expert help with your Graphite to InfluxDB migration from the InfluxDB professional services team.
  • Level up your InfluxDB knowledge by registering for InfluxDB Virtual Training. Choose your topic & attend the webinar for just $39!