While performing testing, I noticed a fairly significant difference in performance when joining two columnstore tables together where the data types were of differing lengths. In one table, the data types were VARCHAR(64) and INT. In the other, the data types were VARCHAR(200) and BIGINT.
When I changed one data type (for example, BIGINT into INT), I would get results 8% faster. If I changed both fields, the improvement increased to around 16%. I ran both versions in parallel and received similar differences in query result times.
The testing was performed in an uncontrolled environment, and there could be external factors involved, but the consistency makes me wonder if there is a benefit to matching varchar field lengths. Does different lengths of the same datatype result in reduced performance?