Differences Between InfluxDB 0.11 and 0.10

Warning! This page documents an old version of InfluxDB, which is no longer actively developed. InfluxDB v1.3 is the most recent stable version of InfluxDB.

This page aims to ease the transition from InfluxDB 0.10 to InfluxDB 0.11. It is not intended to be a comprehensive list of the differences between the versions. See InfluxDB’s Changelog for detailed release notes.

Sections:

Breaking API Changes

  • New return format for DISTINCT()

    In 0.10, DISTINCT() returns a field’s unique values in an array. In 0.11, DISTINCT() returns a field’s unique values in a columnar format.

    Example:

    > SELECT DISTINCT(source) FROM mymeas
    

    0.10 return format:                                                   0.11 return format:

    name: mymeas                               name: mymeas
    ------------                               ------------
    time                  distinct             time                             distinct
    1970-01-01T00:00:00Z  [1 2 3]              1970-01-01T00:00:00Z             1                       
                                               1970-01-01T00:00:00.000000001Z   2
                                               1970-01-01T00:00:00.000000004Z   3                      
    

    The documentation on the new DISTINCT() return format is available in Functions.

  • New return format for SHOW TAG VALUES

    In 0.10, SHOW TAG VALUES returns the set of tag values for a specific tag key without showing the relevant measurements in the output. In 0.11, SHOW TAG VALUES returns the set of tag values for a specific tag key and includes the relevant measurements in the output.

    Example:

    > SELECT TAG VALUES WITH KEY = location
    

    0.10 return format:                                                   0.11 return format:

    name: locationTagValues                    name: city ✨This is a measurement name✨
    -----------------------                    ----------
    location                                   key      value
    1                                          location 1
    2                                          location 3                                 
    3                                    
                                               name: farm ✨This is also a measurement name✨
                                               ----------
                                               key      value
                                               location 1
                                               location 2
    

    The documentation on the new SHOW TAG VALUES return format is available in Schema Exploration.

    Because of the changes to the SHOW SERIES and SHOW TAG VALUES formats, InfluxDB 0.11 will not work with the Query Editor in Grafana 2.6. This issue does not affect existing queries and dashboards.

  • New return format for SHOW SERIES

    In 0.10, SHOW SERIES returns the relevant measurements and tag sets in a columnar format. In 0.11, SHOW SERIES returns the relevant measurements and tag sets in a list format that is similar to line protocol.

    Example:

    > SHOW SERIES
    

    0.10 return format:                                                   0.11 return format:

    name: city                                  key
    ----------                                  city,location=1
    _key            location                    city,location=3
    city,location=1 1                           farm,location=1    
    city,location=3 3                           farm,location=2
    
    
    name: farm
    ----------
    _key            location
    farm,location=1 1
    farm,location=2 2
    

    The documentation on the new SHOW SERIES return format is available in Schema Exploration.

    Because of the changes to the SHOW SERIES and SHOW TAG VALUES formats, InfluxDB 0.11 will not work with the Query Editor in Grafana 2.6. This issue does not affect existing queries and dashboards.

  • Change in timestamp return for some selector functions

    In 0.10, the selector functions FIRST(),LAST(),MAX() and ,MIN() return the timestamp for a specific point when the query doesn’t include a GROUP BY time() clause. In 0.11, the selector functions FIRST(),LAST(),MAX() and ,MIN() return the start of the query’s time range as the timestamp when the query doesn’t include a GROUP BY time() clause.

    See Functions for the updated documentation.

New Query Engine

InfluxDB 0.11 includes significant improvements to the query engine which result in better performance, better stability, and solve some of the out of memory issues that some users were seeing on larger queries.

To read more about performance gains, see Paul Dix’s blog post Announcing InfluxDB 0.11.0 RC with up to 3.8x faster Queries.

Storage Engine Requirements

InfluxDB 0.10 only creates new Time Structured Merge tree (TSM) shards and can still read b1 and bz1 shards from InfluxDB 0.9.

InfluxDB 0.11 only creates new TSM shards and cannot read b1 and bz1 shards from InfluxDB 0.9. InfluxDB 0.10 users who haven’t upgraded their b1 and bz1 shards to TSM must follow the upgrade instructions available in Upgrading from Previous Versions.

Clustering updates

InfluxDB 0.11 introduces some changes for setting up a cluster. See Cluster Setup for step-by-step instructions on setting up an InfluxDB cluster.

InfluxDB 0.11 is the last open source version that includes clustering. For more information, please see Paul Dix’s blog post on InfluxDB Clustering, High-Availability, and Monetization. Please note that the 0.11 version of clustering is still considered experimental, and there are still quite a few rough edges.