Замена базы данных sql с помощью akka-persistence - почему этого не происходит?

Есть способы заменить базы данных SQL в Haskell, Clojure:

http://www.datomic.com/ (Clojure)

https://github.com/dmbarbour/haskell-vcache

https://hackage.haskell.org/package/acid-state

Однако я не могу найти библиотеку для этого в Scala, используя akka-persistence.

Интересно, почему?

Я слышал, что https://www.querki.net/ делает нечто подобное ( https://github.com/jducoeur/Querki), но это не библиотека с авторским левом (в отличие от acid-state для Haskell).

Мне интересно, смотрю ли я на это с неправильной точки зрения, мне интересно, почему у других языков есть такие решения, а у Scala, похоже, нет, может быть, есть фундаментальная причина для этого? Я что-то пропустил?

1 ответ

Библиотеки, которые вы упоминаете, делают совершенно разные вещи:

Акка-настойчивость Хранить состояние актера. Если у вас есть актер, который использует внутреннее состояние. Это довольно специализировано.

Кислотное состояние сериализует данные Haskell на диск.

Datomic - это система для переопределения временных данных способом, который не разрушает исходные данные.

Хранилища объектов хорошо работают с динамическими языками, такими как Clojure и Python, поскольку они работают с динамическими данными, которые можно сериализовать на диск.

Мне было гораздо приятнее работать с MongoDB в Python, чем в Scala.

Когда началось движение NoSQL, началось возбуждение, но после использования этих систем некоторые люди поняли, что вы отказываетесь от хороших свойств, которыми обладают базы данных.

Datomic - интересный проект с новыми идеями. Есть клон Scala этого. Не уверен, насколько он стабилен: https://github.com/dwhjames/datomisca

Другие вопросы по тегам