Я нахожусь в процессе преобразования MySQL в Cassandra для PenWag.com.В Cassandra я храню пользователей, отключенных от GUID, но пользователи входят в систему с помощью электронной почты, а не GUID (очевидно).GUID как ключ для пользователей имеет смысл для меня больше, чем электронная почта по двум причинам.С практической точки зрения кажется, что слишком громоздко менять или удалять / добавлять строки со всеми своими столбцами SuperColumns.С теоретической точки зрения, это все тот же пользователь, почему его ключ должен меняться?
Тем не менее, вот мой вопрос: я строю индекс в отдельном ColumnFamily, отображая email-> GUID для поддержки входа в систему.Это стандартный тип CF, где имя столбца - электронная почта, а значение - GUID.Это стандарт, а не супер, чтобы избежать загрузки всего SC для каждого отображения.Поддержать «изменить адрес электронной почты» легко, это просто столбец удаления / добавления.Но похоже, что альтернативой этому является сохранение индекса в виде строк вместо столбцов, где ключом строки является электронная почта, а в столбце хранится GUID.Удаление / добавление этих строк не будет обременительным, так как есть только столбец (GUID) для управления.
Кажется, что любой подход работает.Каковы плюсы и минусы каждого?Есть ли лучшая практика?