кассандра, как я могу сортировать из замороженного udt

#cassandra

Вопрос:

можно ли использовать ключ кластеризации для замороженного столбца ?

Может быть:

 CREATE TYPE user_details (
  email varchar,
  password varchar,
  createdAt timestamp
)

CREATE TABLE users (
  user_id uuid,
  user_information user_details,
)
 

Как я могу выполнить сортировку сейчас из столбца createdAt ?

Ответ №1:

Вы не можете этого сделать — вам нужно будет создать createdAt обычный столбец, чтобы иметь возможность использовать его в качестве ключа кластеризации.

Но на самом деле, зачем вам вообще здесь нужен UDT? Это простая структура, которая должна идеально работать как обычные столбцы. Единственное, о чем я думаю, — это когда один и тот же UDT используется в нескольких таблицах. Но при использовании UDT вы потенциально получаете множество проблем — например, UDT специфичны для пространства ключей, в котором они определены, поэтому вы не можете восстановить резервную копию в другое пространство ключей и т. Д.

Комментарии:

1. Я согласен, Алекс. Моей первой мыслью здесь было: «Почему они используют для этого UDT?»