CRDT

Материал из in.wiki
Перейти к навигации Перейти к поиску
800px-T64 and pencil.jpg Это незавершённая статья.
Вы можете помочь проекту, исправив и дополнив её.

CRDT, Conflict-free replicated data type, бесконфликтный реплицируемый тип данных - это структура данных, которая реплицируется на несколько компьютеров в сети и имеет следующие свойства:

  • Приложение может обновлять любую реплику самостоятельно, одновременно и без координации с другими репликами.
  • Алгоритм (который сам является частью типа данных) автоматически устраняет любые несоответствия, которые могут возникнуть.
  • Хотя реплики могут иметь разное состояние в любой конкретный момент времени, в конечном итоге они гарантированно сходятся.

Концепция CRDT была официально определена в 2011 году Марком Шапиро, Нуно Прегуисой, Карлосом Бакеро и Мареком Завирски.[9] Первоначально разработка была мотивирована совместным редактированием текста и мобильными компьютерами. CRDT также использовались в системах онлайн-чатов, онлайн-азартных играх и на платформе распространения звука SoundCloud. Распределенные базы данных NoSQL Redis, Riak и Cosmos DB имеют типы данных CRDT.