@Override
        public ClickHouseValue deserialize(ClickHouseValue ref, ClickHouseInputStream input) throws IOException {
            int len = input.readVarInt();
            if (len == 0) {
                return ref.resetToNullOrEmpty();
            }

            Map<Object, Object> map = new LinkedHashMap<>(len * 4 / 3 + 1);
            ClickHouseDeserializer kd = deserializers[0];
            ClickHouseDeserializer vd = deserializers[1];
            for (int i = 0; i < len; i++) {
                map.put(kd.deserialize(keyValue, input).asObject(),
                        vd.deserialize(valValue, input).asObject());
            }
            return ref.update(map);
        }
Data processor for handling {@link ClickHouseFormat#RowBinary} and
{@link ClickHouseFormat#RowBinaryWithNamesAndTypes} two formats.
clickhouse-data/src/main/java/com/clickhouse/data/format/ClickHouseRowBinaryProcessor.java