Druid 加载 Kafka 流数据配置可以读取和处理的流中数据格式
Kafka 索引服务(indexing service)支持 inputFormat
和 parser
来指定特定的数据格式。
inputFormat
是一个较新的参数,针对使用的 Kafka 索引服务,我们建议你对这个数据格式参数字段进行设置。 不幸的是,目前还不能支持所有在老的 parser
中能够支持的数据格式(Druid 将会在后续的版本中提供支持)。
目前 inputFormat
能够支持的数据格式包括有: csv
, delimited
, json
。
如果你使用 parser
的话,你也可以阅读: avro_stream
, protobuf
, thrift
数据格式。
因为 Druid 的数据版本的更新,在老的环境下,如果使用 parser 能够处理更多的数格式。
如果通过配置文件来定义的话,在目前只能处理比较少的数据格式。
在我们的系统中,通常将数据格式定义为 JSON 格式,但是因为 JSON 的数据是不压缩的,通常会导致传输数据量增加很多。
如果你想使用 protobuf 的数据格式的话,能够在 Kafka 中传递更多的内容,protobuf 是压缩的数据传输,占用网络带宽更小。
在小型系统中可能不一定会有太大的问题,但是对于大型系统来说,如果传输量小 80% 的话,那占用网络代码也会小很多,另外也能降低错误率。