Scala通用查询谓词生成DSL(可能类似于javascript中的AlaSQL)?

时间:2019-06-25 15:34:11

标签: scala rest dsl

我正在构建一个通用API,该API提供对大量不同数据集的访问权限,并且我想避免为每种数据类型创建特定的查询API。即需要手动实现name="Joe"的Users端点。我希望用户能够使用某种查询语言(例如带谓词的SQL或类似语言)过滤这些数据集。数据集在不断增长,我们需要一种通用的方式来形成查询谓词。

当我使用javascript时,我使用https://github.com/agershun/alasql对内存中的对象进行简单的谓词。

我正在Scala中寻找类似的东西。它不需要是SQL,可以是JSON或其他DSL。

我查看了方解石,并能够在数据上做WHERE谓词,但是却花了很多时间进行黑客攻击。 Calcite库非常大且复杂。它需要实例化许多对象才能生成一个查询。我不想将这种沉重的依赖关系拖入项目中。

0 个答案:

没有答案
相关问题