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% 的話,那佔用網絡帶寬也會小很多,另外也能降低錯誤率。