Estas opciones de configuración están disponibles en system.merge_tree_settings y se generan automáticamente a partir del código fuente de ClickHouse.
write_final_mark
Configuración obsoleta; no hace nada.
write_marks_for_substreams_in_compact_parts
Historial de versiones
| Versión | Valor predeterminado | Comentario |
|---|---|---|
| 25.8 | 1 | Habilita de forma predeterminada la escritura de marcas para substreams en partes compactas |
| 25.5 | 0 | Nueva configuración |
Habilita la escritura de marcas para cada substream en lugar de para cada columna en las partes compactas. Permite leer subcolumnas individuales de la parte de datos de forma eficiente.
Por ejemplo, la columna t Tuple(a String, b UInt32, c Array(Nullable(UInt32))) se serializa en los siguientes substreams:
t.apara los datos String del elementoade la Tuplet.bpara los datos UInt32 del elementobde la Tuplet.c.size0para los tamaños del Array del elementocde la Tuplet.c.nullpara el mapa de NULL de los elementos del Array anidado del elementocde la Tuplet.cpara los datos UInt32 de los elementos del Array anidado del elementocde la Tuple
Cuando esta configuración está habilitada, escribiremos una marca para cada uno de estos 5 substreams, lo que significa que podremos leer
los datos de cada substream individual del gránulo por separado si es necesario. Por ejemplo, si queremos leer la subcolumna t.c, leeremos solo los datos de los
substreams t.c.size0, t.c.null y t.c, y no leeremos datos de los substreams t.a y t.b. Cuando esta configuración está deshabilitada,
escribiremos una marca solo para la columna de nivel superior t, lo que significa que siempre leeremos todos los datos de la columna del gránulo, incluso si solo necesitamos los datos de algunos substreams.