【问题标题】:replacing sql database using akka-persistence - why is it not happening?使用 akka-persistence 替换 sql 数据库 - 为什么它没有发生?
【发布时间】:2017-01-18 14:24:28
【问题描述】:

在Haskell、Clojure中有替换SQL数据库的方法:

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),但它不是一个 copyleft 库(不像 Haskell 的 acid-state)。

我想知道我是不是从错误的角度看待这个问题,我想知道为什么其他语言有这些解决方案而 Scala 似乎没有,也许有一个根本原因?我错过了什么吗?

【问题讨论】:

  • 我不知道我是否理解错了你的问题,但试着看看这个项目:Actorbase。它是使用 Actor 模型的键值数据库的初步实现。
  • 有趣,它使用 akka-persistence 吗?好像没有。
  • 目前没有。但是,这是一种可能的实现方式。
  • 非常有趣!好像我自己正在实现类似的东西......(供我自己使用)。
  • 如果您愿意,我们无法保持联系并讨论 pvt 中的常见解决方案。如果您有兴趣,请告诉我。

标签: scala akka akka-persistence


【解决方案1】:

你提到的库做了完全不同的事情:

akka-persistence 存储演员的状态。如果你有一个使用内部状态的演员。这是很专业的。

acid-state 将 Haskell 数据序列化到磁盘。

Datomic 是一种以不破坏原始数据的方式覆盖时间数据的系统。

对象存储可以很好地与 Clojure 和 Python 等动态语言配合使用,因为它们处理可以序列化到磁盘的动态数据。

我发现在 Python 中使用 MongoDB 比使用 Scala 更好。

当 NoSQL 运动开始时,人们最初很兴奋,但在使用这些系统之后,有些人意识到你正在放弃数据库所拥有的良好属性。

Datomic 是一个具有新想法的有趣项目。它有一个 Scala 克隆。不确定它有多稳定: https://github.com/dwhjames/datomisca

【讨论】:

  • 感谢您的回答,也许我没有准确地提出问题。我需要考虑一下并尝试重新提出我的问题。
猜你喜欢
  • 2017-10-02
  • 1970-01-01
  • 2017-12-24
  • 1970-01-01
  • 2021-01-30
  • 2011-06-21
  • 1970-01-01
  • 2011-02-26
  • 2023-04-02
相关资源
最近更新 更多