aerospike vs ignite DB,何时使用一个而不是另一个?在索引和性能方面

aerospike vs ignite DB , When to use one over another ? in term of indexing and performance

看了两者的文档,似乎很相似,我无法决定选择哪一个。

添加一些上下文:

我的用例是无模式嵌套对象集合(想想 JSON),我需要能够对嵌套对象(2-3 层深)进行连接和过滤。

例如,假设有一组汽车:

{
 type: "car",
 engine: {
  size: 2,
  maker: {
   country: "china",
   importer: [
    {
     company: "abc-inc",
     id: 234234
    },
    {
     company: "abc-corp",
     id: 321321
    },
  ]
 },
 maker: "Ford"
}

我需要查询所有汽车,其中进口商的发动机尺寸为 xx,由进口商 id = xxxxx 进口的 country=xxxx 制造,这将 return 类型的集合 "car" .

我需要查询汽车集合中的所有进口商,其中 return 是类型 "importers" 的集合。然后执行相同的查询,但使用特定 ID 的进口商。

这看起来像是一个简单的 SQL 加入 Apache Ignite。但是,您需要定义查询所需的最小 SQL 架构。

在您的情况下,您需要缓存 CAR、缓存 ENGINE 和缓存 IMPORTER。查询将如下所示:

SELECT * 来自 CAR c, ENGINE e, IMPORTER i where c.importer_id = i.id and c.engine_id = e.id and c.country = "xxxx" 和 e.size = xx;

您还需要决定您的复制策略,并选择是否需要对部分或全部缓存进行分区或复制。

更多关于 SQL 的信息:SQL Grid

更多关于复制策略的信息:Cache Modes