Может ли Кассандра сортировать столбцы для определенного человеческого языка?
Похоже, что мы ограничены четырьмя различными типами данных, когда дело доходит до сортировки столбцов в строке в таблице Cassandra. Я вижу четыре типа:
BytesType, AsciiType, UTF8Type, IntegerType
Однако для правильной сортировки на данном языке strcoll()
, который использует локаль и в конечном итоге сортирует определенные символы до или после других в зависимости от языка.
Например, во французском языке у вас есть акценты на символе e, которые сортируются следующим образом:
... de é ê è ë f...
Я полагаю, что UTF8Type
не собирается заставить эту функцию работать, как ожидается, для говорящего на французском языке.
Является ли единственный способ заставить это работать, на самом деле реализовать наш собственный вид в Кассандре? (Argh, я не люблю Java...)
1 ответ
Вы всегда можете установить постоянную локаль, чтобы всегда получать одинаковые результаты. В качестве альтернативы вы можете отсортировать его по номеру Юникода, а не по алгоритму Java с учетом локали.