我很想了解在Avro中编码两种非常特殊类型的数据的最佳做法:时间戳和IP地址。
我遇到了Timestamps(https://issues.apache.org/jira/browse/AVRO-739)的开放式JIRA票证,但看起来主题已经安静了一段时间。那么 - 在Avro中编码时间戳的最佳实践是什么(最好是在MapReduce,Pig,Hive,Streaming上下文中用于下游)。
此外,我很想知道其他人正在做什么来将IP地址编码到Avro中。
答案 0 :(得分:1)
我对Avro中的类型编码有一些经验。就我而言,一个重要的要求是通过Hive访问数据。
对于时间戳,我建议使用带有unix时间戳的浮点数。大多数其他库都支持此功能,因为您可以转换为时间戳,因此可以轻松使用Hive。
对于IP地址,我会使用字符串编码。我认为使用数据时字符串的可读性使其成为最佳类型。如果您有其他要求,例如保持数据大小,可能二进制编码可能更适合您。