Regarding 1. I'm referring to the documentation here, https://apacheignite.readme.io/docs/topology-validation, which states "*Topology validator is used to verify that cluster topology is valid for further cache operations*." and "*If topology validator is not configured, then the cluster topology is always considered to be valid.*"
Thanks, On Mon, Jul 2, 2018 at 4:21 PM, Dmitriy Setrakyan <dsetrak...@apache.org> wrote: > On Mon, Jul 2, 2018 at 4:03 PM, John Wilson <sami.hailu...@gmail.com> > wrote: > > > Hi, > > > > > > 1. What exactly is a cluster topology? What makes a cluster topology > > invalid for further cache operations? > > > > Cluster topology is a set of Ignite nodes in the cluster. I do not think a > cluster topology could be invalid on its own. Perhaps you are asking about > a situation when after a certain number of node failures/stops we can be in > a situation where all primary and backup copies become inaccessible. In > that case, the cluster should enter a read-only state for the lost > partitions. > > > > 2. Why do we have the concept of partitions in Ignite? Why don't we > > have a key-to-node mapping rather than a key-to-partition and a > > partition-to-node mapping? > > > > Main reason is because there is a finite number of partitions and there is > an infinite number of keys. Whenever ignite topology changes, Ignite must > rebalance data to the new nodes (or to the existing nodes). In this case, > Ignite needs to know when a certain partition is moved to another node. If > there were no partitions, then it would be impossible to tell when to > finish the rebalancing process. > > D. >