Pull to refresh

Comments 8

Было бы интересно увидеть ссылки на какой-нибудь софт, построенный по описанным принципам, в частности на базы данных. Или ещё ничего production ready не появилось?

У меня даже нагуглить упомянутый в конце статьи DaRWiN не получилось.
DaRWiN не релизился. Когда софт активно переписывается, опенсорсить себе дороже. На GitHub есть вагон промежуточных версий RON разных авторов, например. Это всё ещё нужно вычистить.
В отличие от git, CRDT структуры данных всегда можно помержить автоматически. В остальном же, git — очень хороший пример для объяснения свойств CRDT хранилищ
Насколько я понял, CRDT — это тип-полурешетка. Если рассматривать предмет версионирования, рабочую директорию, то она относительно мержа не является полурешеткой из-за конфликтов слияния. Можно ли рассматривать сам репозиторий (только не git, а какой-нибудь патчевой СКВ, где конфликтное состояние является возможным состоянием) как CRDT относительно операции pull/push?

Что можно почитать насчёт того, как избегается проблема конфликтов в RON?
Насколько я понял, CRDT — это тип-полурешетка.

Полурешётка — один из видов CRDT, есть и другие.

Можно ли рассматривать сам репозиторий (только не git, а какой-нибудь патчевой СКВ, где конфликтное состояние является возможным состоянием) как CRDT относительно операции pull/push?

Гит можно, но только относительно fetch и fast-forward.
Полурешётка — один из видов CRDT, есть и другие.
Какие?
Гит можно, но только относительно fetch и fast-forward.
Спасибо, логично.
2 классических:
CvRDT = полурешётка,
CmRDT — лог операций.

Потом ещё придумали Mergeable, Delta-state, и вот этот RON в статье можно считать отдельным видом CRDT.
В RON конфликты избегаются так же, как и в остальных CRDT — конфликтов просто нет.

Шучу, это непросто. Суть бесконфликтности в том, чтобы разрешить только такие операции, которые не вызывают конфликтов (при доставке в произвольном порядке). Придумывать такие структуры тяжело. Зато их можно легко комбинировать, вкладывать друг в друга, объединять в структуры.
Я, прочитав о RON по ссылке, понял так, что это некоторая платформа, язык для использования CRDT, то есть он предоставляет, кроме прочего, некоторые средства обеспечения бесконфликтности. Прошу прощения за вопрос, кажется, мне следует больше почитать о нём.
Sign up to leave a comment.

Articles