2017-01-18 9 views
1

Есть способы замены баз данных SQL в Haskell, Clojure:замена базы данных sql с использованием akka-persistence - почему этого не происходит?

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

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

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

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

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

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

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

+0

Я не знаю, понял ли я ваш вопрос неправильно, но попробуйте взглянуть на этот проект: [Actorbase] (https://github.com/rcardin/actorbase) , Это эмбриональная реализация базы данных с ключом, использующая модель Actor. –

+0

Интересно, используется ли акка-настойчивость? Кажется, это не так. – jhegedus

+0

В настоящий момент нет. Но это возможная реализация. –

ответ

2

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

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

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

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

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

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

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

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

+0

Спасибо за ответ, может быть, я точно не сформулировал вопрос. Мне нужно подумать об этом и попытаться переформулировать мой вопрос. – jhegedus