I ntroducon to MemSQL Key Components of a MemSQL Cluster As shown in Figure 5, a MemSQL cluster consists of aggregator nodes and leaf nodes. The aggregator serves as a query interceptor and router, manages cluster metadata and is responsible for cluster monitoring and failover. A leaf node is a MemSQL server instance that stores data and executes queries issued by the aggregator. In typical deployments, the aggregator-to-leaf node rao is generally 1:5. Increasing the number of aggregators can improve operaons like data loading and can allow for MemSQL to process more client requests concurrently. Applicaons serving many clients have a higher aggregator-to-leaf rao, and those with more demanding storage requirements need more leaves per aggregator. Client applicaons connect to an aggregator, which serves as the query router in the cluster. When the client sends a SQL query, the aggregator will parse, compile and distribute the query across the leaf nodes. In the leaf node, MemSQL may further opmize the query as needed and execute on the local store of data. This allows MemSQL to maintain high query performance even with rapidly changing data. The leaf nodes quickly compute the query results and send them back to the aggregator. The aggregator then aggregates the results from each leaf and sends the final result back to the client. Figure 10. Massively parallel processing for query execuon 17
