Войти Регистрация
Data base

168. Уникальный логин без гонки при регистрации

Средняя

Apache Cassandra · Apache Cassandra 5.0

У Apple, по открытым данным 2021 года, больше 160 тыс. инстансов Cassandra и около 100 ПБ данных. Представим сервис почтовых алиасов: таблица aliases с ключом alias и владельцем account_id.

Ночью 1 сентября 2025 года два устройства в разных регионах отправили регистрацию anna.k с разницей 40 мс. Оба получили «успешно», а письма стали приходить второму владельцу.

В работе: Регистрация уникальных имён, бронирование слотов, идемпотентность платежей в Cassandra.

Как проверяем Движка Apache Cassandra в браузере пока нет, поэтому здесь не запрос, а выбор решения. Выберите один вариант. После ответа — почему каждый вариант верный или нет. Ответ один на подход: после него показываем разбор.
LWTIF NOT EXISTSupsertуровни согласованности

Источник: на данных облачного сервиса: учётные записи и алиасы. Условие пересказано своими словами.

Давали на собеседовании? Ответов пока мало — ваш поможет.

Как сделать так, чтобы алиас получил только первый?

  • INSERT … IF NOT EXISTS и проверять [applied] в ответе
  • Сначала SELECT, и если строки нет — INSERT
  • Писать с CONSISTENCY ALL
  • Добавить вторичный индекс на account_id