Description of Brokers
The role of a broker is to provide database life cycle control (start, stop) for database processes, that is transaction engines (TEs) and/or storage managers (SMs). A broker provides the following:
- Allows management client access. The NuoDB Manager command line utility communicates directly to a broker.
- Communicates with all other brokers in the domain.
- Routes SQL connection requests to transaction engines anywhere in the domain, using different SQL connection load-balancing schemes.
- Stores the durable domain configuration.
- Monitors activity and fires alarms for all hosts, databases and processes in the domain.
- Provides safety in case of failure, such as network partitioning. Safety means that an incorrect result is never returned.
- Maintains MBeans for each database, broker, agent, and process in the domain.
Each broker has a complete picture of the entire domain, including all hosts, and all databases and their processes. As you can see, a domain is functional only with at least one broker. For continuous availability, each data center (and availability zone) should run at least one broker.