В будущем планируется поддержка групп объектов в Кассандре, см. CASSANDRA-1684 .
Если ваши данные не могут быть легко смоделированы без транзакций, стоит ли использовать нетрансформационную базу данных? Вам нужна масштабируемость?
Стандартный способ выполнения транзакций, подобных вещам в Кассандре, описан в этой презентации , начиная со слайда 24. В основном вы пишете что-то похожее на запись WAL в 1 строку, затем выполните фактическую запись в несколько строк, затем удалите строку журнала WAL. В случае неудачи просто прочитайте и выполните действия в журнале WAL. Поскольку все записи на кассандре имеют указанную пользователем метку времени, все записи можно сделать идемпотентными, просто сохраните метку времени вашей записи с записью журнала WAL.
Эта стратегия дает вам атомарную и долговечную кислоту, но вы не получаете согласованность и изоляцию. Если вы работаете в масштабе, требующем чего-то вроде cassandra, вам, вероятно, все равно придется отказаться от полных ACID-транзакций.