с движком ReplacingMergeTree задать выражение для объединения записей отличное от ключа сортировки?
Проблема в том, что если в такой таблице необходимо удалять дубликаты записей, например, только по условному полю id (в таблице должна быть только одна запись с определенным id), а запросы выполняются с фильтрацией по некоторым другим полям, то сделать сортировку в том числе по этим полям невозможно, так как в этом случае одинаковый id у записtq станет недостаточным для того, чтобы записи были дедуплицированы. А использование вторичных индексов неоправданно, так как при относительно высокой кардинальности полей, участвующих в запросах выборки, даже если сделать индекс менее разреженным (например 256), почти каждый кусок данных будет содержать искомое значение, что приведет к чтению почти всей таблицы.
Есть primary key отличный от ключа сортировки
Он должен быть префиксом ключа сортировки. То есть ключ сортировки должен содержать все поля из первичного ключа.
точно, перепутал, что в обратном направлении работает)
Обсуждают сегодня