sipHash64 используется вместо md5 в Clickhouse для чтения данных с {"partitioning_mode": "hash"}, так как это в 5 раз быстрее.
hashtext используется вместо md5 в Postgres для чтения данных с {"partitioning_mode": "hash"}, так как это в 3-5 раз быстрее.
BINARY_CHECKSUM используется вместо HASHBYTES в MSSQL для чтения данных с {"partitioning_mode": "hash"}, так как это в 5 раз быстрее.
Исправления
Для JDBC источников MOD(partitionColumn, numPartitions) оборачивается в ABS(...), чтобы все возвращаемые значения были положительными. Это предотвращает перекос данных.
Исправлено чтение данных из MSSQL с использованием {"partitioning_mode": "hash"} в случае partitionColumn целочисленного типа.
Исправлено чтение данных из Postgres с использованием {"partitioning_mode": "hash"} приводившее к перекосу данных (все данные считывались в один раздел Spark).