有没有类似于Scala的SqlSoup?

有没有类似于Scala的SqlSoup?,sql,scala,Sql,Scala,哪个现有的Scala数据库API最类似于SqlAlchemy的SqlSoup for Python部分?我在SqlSoup中看到的是:一个方便且基本上可移植的数据库API,我不必指定模式,所有类型都是通过反射推断出来的,但我不必编写原始SQL表达式。更可取的是,它是一个更完整的数据库包的一部分,它支持模式规范、ORM等其他所有内容,并且它们共享许多相同的查询抽象。我想Scala2.9的动态类型可能会在这里派上用场。提前感谢。最类似的是支持Jython的SQLAlchemy 0.6。这意味着您可以

哪个现有的Scala数据库API最类似于SqlAlchemy的SqlSoup for Python部分?我在SqlSoup中看到的是:一个方便且基本上可移植的数据库API,我不必指定模式,所有类型都是通过反射推断出来的,但我不必编写原始SQL表达式。更可取的是,它是一个更完整的数据库包的一部分,它支持模式规范、ORM等其他所有内容,并且它们共享许多相同的查询抽象。我想Scala2.9的动态类型可能会在这里派上用场。提前感谢。

最类似的是支持Jython的SQLAlchemy 0.6。这意味着您可以在JVM上使用SQLAlchemy,并从Java或Scala调用它。查看此项了解更多详细信息

您可能需要在Jython中编写一些接口代码

SQLAlchemy的低效性来自SQL和面向对象思维之间的阻抗不匹配。既然您已经选择了一种非面向对象的语言,那么也许是时候不再使用SQLAlchemy克隆,而是使用线程池来实现对SQL数据库的无阻塞访问了。当您将问题分解为许多简单的小任务,而SQLSoup似乎太重,无法完成这些任务时,参与者的工作非常好


也许您还可以从SQL数据库前面的memcache中获益。假设您需要通过7个步骤来处理SQL请求,以获得所需格式的数据。如果将所有中间结果保存在memcache中,则可以减少命中SQL数据库的次数。参与者可以采用松散耦合的设计,您可以替换一个参与者或插入两个参与者来代替一个参与者。

实际上,出于性能原因,我们放弃了Python+SQLAlchemy——花了太多时间来破解SQLAlchemy的核心。我想我应该明确指出,我希望API使用编译语言,例如Scala、Java。