Technically speaking, Thrift is "language-independent" serialization-deserialization format with clean approach to backward compatibility.
I think Thrift (or something like that) can be useful, as it can generate serializers/deserializers for lots of languages.
PostgreSQL's "binary" format is tied to the PostgreSQL and it has to be reimplemented for each and every client language.
"text" format is non-trivial as well (e.g. it is hard to get quoting right for structs, and text is server-locale-dependent)
Vladimir
Thanks. I've been helping a coworker with an older parquet writer and the URL for the hive metastore uses a thrift:// scheme. That is why I thought it is a communications protocol.