This topic discusses the role of Dremio services and how they are implemented on a deployment. The Dremio
services property specifies whether a node is enabled with the master coordinator, secondary coordinator, or executor role.
A Dremio cluster consists of:
- One or more coordinator nodes
- One or more executor nodes
Master Coordinator Role
The master coordinator node has the special function of managing metadata. The master coordinator node is also responsible for:
- Query planning
- Serving Dremio's UI
- Handling client connections, including the REST API
If you are implementing High Availability, you can setup more that one coordinator node. In this case, the additional nodes are used as backup should the coordinator node fail.
Secondary Coordinator Role
Secondary coordinator nodes improve concurrency and distribute query planning for ODBC and JDBC client requests to your deployment.
Executor nodes execute queries.
Single Node and Cluster Deployments
- In single node deployments, both execution and coordination happens on the same node.
- In cluster deployments, a given node may only have a single role: either a coordinator or an executor. Multiple roles per node are not supported in cluster deployments.