Company
Date Published
Author
Tom Schreiber
Word count
4916
Language
English
Hacker News points
None

Summary

The ClickHouse database supports over 70 input formats out of the box, but selecting the most efficient format can be overwhelming. To answer this question, a benchmark called FastFormats was developed to measure server-side ingestion speed and hardware efficiency across different input formats. The results show that Native is the fastest and most efficient format, followed by ZSTD for compression. Pre-sorting has a moderate impact, while batching significantly improves efficiency. ClickHouse clients optimize inserts by selecting formats suited to their typical use cases, with those designed for high-throughput inserts automatically choosing Native. The HTTP interface provides greater flexibility than the native interface but lacks some advanced features. The support matrix shows that the C++ and Go clients currently support the native interface, while all main language clients except C++ support the HTTP interface.