hadoop - Thrift、Avro、Protocolbuffers——它们都死了吗?

标签 hadoop serialization protocol-buffers thrift avro

从事宠物项目(cassandra、spark、hadoop、kafka)我需要一个数据序列化框架。查看常见的三个框架 - 即 Thrift、Avro 和 Protocolbuffers - 我注意到它们中的大多数似乎都死气沉沉,每年最多发布 2 个次要版本。

这给我留下了两个假设:

  • 它们与此类框架一样完整,只要不需要新功能,它们就处于维护模式
  • 没有理由存在这样的框架——我不清楚为什么。如果是这样,有哪些替代方案?

如果有人能给我一些关于我的假设的提示,欢迎任何意见。

最佳答案

Protocol Buffers 是一个非常成熟的框架,大约 15 年前在 Google 首次推出。它肯定没有死:几乎谷歌内部的每一项服务都在使用它。但是经过如此多的使用,此时可能没有太多需要更改的地方。事实上,他们今年发布了一个主要版本 (3.0),但该版本在删除功能和添加功能方面同样重要。

Protobuf 的相关 RPC 系统,gRPC , 相对较新并且最近有更多的事件。 (然而,它基于谷歌内部的 RPC 系统,该系统已经经历了大约 12 年的发展。)

我不太了解 Thrift 或 Avro,但它们也已经存在了一段时间。

关于hadoop - Thrift、Avro、Protocolbuffers——它们都死了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40968303/

相关文章:

hadoop - 尝试运行配置单元时出错

hadoop - 创建具有Serde格式和额外列的外部表-HIVE

python - Django Serializer 从 post 访问 json 数据(字符串索引必须是整数)

hadoop - 当客户端关闭连接时,Hadoop 如何处理未复制的数据?

java - 尝试使用nutch进行爬网时出错-自己的本地主机名上的java.net.UnknownHostException

c++ - 未知对象的序列化

c# - 使用 XML Serializer 序列化枚举——我保留了名称,但丢失了值。有什么办法可以同时保留两者?

go - 使用 go lang 在 protobuf 中创建数组指针

android - Protobuf 流式处理(惰性序列化)API

c++ - 如何在 C++ 中遍历 google protobuf 映射?