Ignite 亲和力搭配如何工作?

How does Ingite affinity-collocation work?

我正在通读 https://apacheignite.readme.io/docs/affinity-collocation,但我没有很好地理解如何 亲和搭配有效或其行为。

假设我有一个companyId为1的Employee对象(id为1000),那么这个Employee对象将与id为1的Company对象并置。 也就是说,它们将驻留在同一个节点但在不同的缓存中:

Employee Cache: <1000, EmployeeObjWhoseCompanyIdIs1>
Company Cache: <1, CompanyObj>

但是如果有第三个缓存,比如说Country Cache,它也有一个key是1,那就是:

Country Cache: <1, CountryObj>

那么Employee对象和Country对象会不会也驻留在同一个节点?

根据 Affinity class 定义,它只定义了 affKey 与之并置,但未指定拥有此 affKey

的缓存

是的,它们将存储在一个节点上。但是,我认为这是巧合,因为它的发生只是因为您在这种特殊情况下对键使用了相同的类型和值。 company ID和country ID在逻辑上是没有关联的,不能说是并置的。