CRDT

Почти решение проблем распределённых БД

Дмитрий Грошев (@lambdadmitry)

Сеть есть

A: {a: 1} B: {a: 1}

Сеть есть

A: a += 1

Сеть есть

A: {a: 2} B: {a: 2}

:(

A: {a: 2} | B: {a: 2}

Сети нет

A: a += 1

Сети нет

A: {a: 3} | B: {a: 2}

Ooops :( CAP

Альтернативная вселенная

Сеть есть

A: {a, b} B: {a, b}

Сеть есть

A: +d

Сеть есть

A: {a, b, d} B: {a, b, d}

:(

A: {a, b, d} | B: {a, b, d}

Сети нет

A: +e

Сети нет

A: {a, b, d, e} | B: {a, b, d}

Ooops :( CAP

Сеть есть

{a, b, d, e} + {a, b, d} = …

A: {a, b, d, e} B: {a, b, d, e}

:)

Riak

Basho вам не скажет, но Riak про CRDT

GOOGLE "CRDT" NOW

Ссылка на пост об этом будет в #hotcode

UPD: si14.livejournal.com/42022.html

Вместо изначального talk'а:

tgk.github.io/2012/12/the-composing-schemer.html