在Apache Ignite中使用映射对表进行排序

时间:2017-10-23 08:34:03

标签: sql scala caching ignite

我最初想用Ignite完成一些简单的事情。我有这样的类型(简化):

case class Product(version: Long, attributes: Map[String, String])

每个人都有一个密钥来存储它(它是其中一个属性)。

我想存储它们,以便我可以在两个版本号之间检索它们的子集,或者至少检索WHERE version > n。问题是缓存API似乎只支持按键或表扫描检索。另一方面,SQL99似乎没有任何类型的地图类型。

我在想我需要使用二进制封送程序,但文档说:

  

有一组'平台'类型,包括基本类型,字符串,UUID,日期,时间戳,BigDecimal,集合,地图及其数组,永远不会表示为{{ 1}}。

那么......地图是否支持

这是我的测试代码。但它失败了BinaryObject。任何简单测试工作的帮助都会帮助我理解它应该如何工作。

哦,还有,我是否需要在Ignite配置文件中配置架构?或者字段属性是否足以替代它?

java.lang.IllegalArgumentException: Cache is not configured: ignite-sys-cache

1 个答案:

答案 0 :(得分:2)

Ignite支持通过索引字段进行查询。由于version是常规索引字段,因此执行所描述的查询应该是可行的。

我检查了你的代码,它在我这边工作 请检查所有节点上的Ignite版本是否一致。

如果您提供完整的日志,我可以查看它。