Уже давно стало ясно, что классический линейный алгоритм на больших объемах неэффективен. Декларативность и, как следствие, асинхронность в любом порядке — наше все.
Ага, pouchdb.com ещё есть в ту же степь. Там всё state-based, если я не путаю, т.е. при конкурентной записи создаётся две версии объекта. Для нашего случая такой вариант не подходил, нам нужно было op-based — для больших объектов с кучей маленьких, часто конкурентных изменений. Плюс, у нас реальное время, там говорят задержка пара секунд. Немножко другой инструмент, короче.
Эволюция веб-приложений