What Is Apache Thrift?

Written by Caitlin Davidson

Share

Apache Thrift Defined

Apache Thrift is a software framework that provides clean abstractions for data transport, data serialization, and application level processing. It is a set of code-generation tools that allows developers to build RPC clients and servers by just defining the data types and service interfaces in a simple definition file.

Thrift supports a number of protocols:

  • TBinaryProtocol – Is a straightforward binary format. This format is simple but is not optimized for space efficiency.
  • TCompactProtocol – Is a more compact binary format; typically more efficient to process.
  • TJSONProtocol – Uses JSON for encoding of data.
  • TSimpleJSONProtocol – A write-only protocol that cannot be parsed by Thrift because it drops metadata using JSON. 

Some stated benefits of Thrift including;

  • Being a cross-language serialization with a low overhead.
  • A lean and clean library.
  • It has predefined serialization styles including: binary, HTTP-friendly and compact binary.
  • It doubles as a cross-language file serialization.
  • It having no build dependencies or non-standard software.

In Data Defined, we help make the complex world of data more accessible by explaining some of the most complex aspects of the field. Click Here for more Data Defined.