Skip to main content
These settings are available in system.merge_tree_settings and are autogenerated from ClickHouse source.

object_shared_data_buckets_for_compact_part

The number of buckets for JSON shared data serialization in Compact parts. Works with map_with_buckets, advanced, and advanced_chunked shared data serializations. The maximum allowed value is 256.

object_shared_data_buckets_for_wide_part

The number of buckets for JSON shared data serialization in Wide parts. Works with map_with_buckets, advanced, and advanced_chunked shared data serializations. The maximum allowed value is 256.

object_shared_data_serialization_version

Serialization version for shared data inside JSON data type. Possible values:
  • map - store shared data as Map(String, String)
  • map_with_buckets - store shared data as several separate Map(String, String) columns. Using buckets improves reading individual paths from shared data.
  • advanced - special serialization of shared data designed to significantly improve reading of individual paths from shared data. Note that this serialization increases the shared data storage size on disk because we store a lot of additional information.
  • advanced_chunked - the same as advanced but with support for splitting rows into smaller chunks during serialization to reduce peak memory during merges of JSON columns with many unique paths. The chunk size is controlled by the object_shared_data_target_chunk_rows setting.
The number of buckets for map_with_buckets, advanced, and advanced_chunked serializations is determined by settings object_shared_data_buckets_for_compact_part/object_shared_data_buckets_for_wide_part.

object_shared_data_serialization_version_for_zero_level_parts

This setting allows to specify different serialization version of the shared data inside JSON type for zero level parts that are created during inserts. It’s recommended not to use advanced or advanced_chunked shared data serialization for zero level parts because it can increase the insertion time significantly.

object_shared_data_target_chunk_rows

Target number of rows per chunk during advanced_chunked JSON shared data serialization. This is not a hard limit: if the last chunk would be smaller than half the target, it is merged with the previous chunk, so actual chunk sizes range from target/2 to 1.5 * target. Smaller values reduce peak memory during merges of JSON columns with many unique paths at the cost of more chunks.
Last modified on September 18, 2026