Over a million developers have joined DZone.

New Release of Treasure Agent: Improved Portability, Enhanced Performance

DZone's Guide to

New Release of Treasure Agent: Improved Portability, Enhanced Performance

· Big Data Zone ·
Free Resource

Hortonworks Sandbox for HDP and HDF is your chance to get started on learning, developing, testing and trying out new features. Each download comes preconfigured with interactive tutorials, sample data and developments from the Apache community.

Treasure Agent (td-agent) is a distribution package of Fluentd — the popular open source unified data collection software — that adds extra support within Treasure Data Service.

Over the past six months, we have been working on a new version of the Treasure Agent streaming data collector. After extensive testing with production workloads, we’re proud to announce the new version of Treasure Agent (td-agent2) is now available.

The new version provides even more reliability, portability, performance, ease of use and available features. The configurations and protocols are completely compatible with older versions. We’ll continue to maintain and provide support for the previous version over the next 12 months, but we recommend that all existing users upgrade to this release. To do so, simply upgrade the package and it’s done.

Summary of Changes

td-agent2 (New Stable) td-agent (Old Stable)
Package System
  • yum
  • deb
  • pkg (New)
  • yum
  • deb
  • RHEL/CentOS 5
  • RHEL/CentOS 6
  • RHEL/CentOS 7 (New)
  • Ubuntu 10
  • Ubuntu 12
  • Ubuntu 14 (New)
  • Debian Squeeze (New)
  • Debian Wheezy (New)
  • Mac OS X (New)
  • RHEL/CentOS 5
  • RHEL/CentOS 6
  • Ubuntu 10
  • Ubuntu 12
Ruby Interpreter v2.1 v1.9
Fluentd v0.12 or later v0.10
Fluentd-UI v0.3 N/A
MessagePack v0.5 v0.4
Cool.io v1.2 or later v1.1
jemalloc v2.2 v2.2
Installation Directory /opt/td-agent/ /usr/{lib,lib64}/
Plugin Install /usr/sbin/td-agent-gem Manual
Packaging Script Omnibus Manual


Treasure Agent now additionally supports Ubuntu 14, Debian Squeeze/Wheezy, and Mac OS X. We have switched our build system from in-house scripts to Omnibus. This enables us to generate installers for various environments much easier.


We have made substantial performance optimizations in various layers.

Ruby: Ruby was upgraded from 1.9 to 2.1, which boosts the performance.

MessagePack: We have rewritten MessagePack Ruby, the highly efficient binary serialization format used internally. (MessagePack was invented by Treasure Data co-founder Sada Furuhashi ). Specifically, we introduced an intelligent buffer management system, which yields higher performance with lower memory footprint. The chart below contains the performance comparisons of various serialization libraries, including new/old MessagePack Ruby, using a Twitter JSON data set. As you can see, the new version is 4x faster for serialization and 10% faster for deserialization.

Multi-Process Mode: One of the common inquiries we receive is are how to leverage multiple cores. Now we support a multi-process mode, which leverages multiple CPU cores on the node.

Overall, we have seen 20-40% performance improvements depending on the traffic pattern.

Ease of Use

Treasure Agent now supports configuration done via Web UI, by Fluentd-UI gem. This makes it significantly easier to configure the system. Because Fluentd-UI is simply a config generator, you’re still able to edit the configuration via command line if you prefer.

Hortonworks Community Connection (HCC) is an online collaboration destination for developers, DevOps, customers and partners to get answers to questions, collaborate on technical articles and share code examples from GitHub.  Join the discussion.


Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}