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
看了两者的文档,似乎很相似,我无法决定选择哪一个。
添加一些上下文:
我的用例是无模式嵌套对象集合(想想 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