Documentation — Concepts
A SynSQL cluster is made of three kinds of brokers.
A SQL broker is a synsqld process. It accepts the connections of the clients, checks the accounts and the privileges, parses the statements, and executes them. Any SQL broker can answer any client. A cluster usually has several of them, and the clients know the list: if the broker you are connected to stops answering, the client connects another one.
SQL brokers do not store your data.
A master broker is a MariaDB server that keeps the data dictionary: the tables, their columns, their hash key, their partitions and segments, the users and their privileges. Several master brokers can hold the same dictionary, so that the cluster survives the loss of one of them. The SQL brokers write every change to all of them.
A data broker is a MariaDB server that stores segments, which are the pieces of your tables. A cluster has as many data brokers as its license allows: show cluster tells the maximum and the number that are running. show databrokers lists them.
client ──► SQL broker ──► master brokers (dictionary)
│
└─────────► data brokers (segments of the tables)
The client only knows the SQL brokers, through its configuration file. Statements that change the dictionary (create table, alter table, grant...) go to the master brokers. Statements that read or change your data go to the data brokers that hold the segments, in parallel.