{question}
What are the limitations associated with having only one aggregator?
{question}
{answer}
This article will discuss the limitations of having one aggregator (MA) without any Child Aggregator(CA) in a Cluster.
Every SingleStore cluster is built using 3 types of nodes - the Master Aggregator (MA), Child Aggregator (CA), and Leaf nodes.
While we can have any number of leaf nodes we store our data and any number of Child aggregators that serve as the entry points to the database, each cluster must have exactly one Master aggregator that controls the cluster.
The Master Aggregator's role in a cluster is very important as the MA is responsible for storing all the reference databases for user or internal metadata databases and running most of the DDL commands. Reference databases are replicating to all nodes in the cluster automatically and are essential for keeping all nodes in sync in terms of data consistency.
We are listing all commands and the type of node required for running this command in our docs.
Although CA's are copies of the MA, they cannot control the cluster unless they are promoted to the MA role. To find out more about promoting a CA, please see our docs.
If the MA is lost (No CA in the Cluster) and there is no way to bring the node up again, the cluster metadata is lost, and the cluster needs to be rebuilt and the data reloaded from a backup. For this reason, it's always recommended to have at least one CA in the cluster that can be promoted to the MA role in case the original MA is lost.
Another benefit of having more than one aggregator in the cluster is the ability to balance the workload, as both types of aggregators can execute queries.
Reference
Dealing with Aggregator Failure
Node Requirements for SingleStore Database Commands
{answer}