Cluster Deployment and Upgrade
A DolphinDB cluster consists of 4 types of nodes: controller, agent,data node, and compute node.
- Controller: The controllers are the core of a DolphinDB cluster. They collect heartbeats of agents and data nodes, monitor the status of each node, and manage metadata and transactions of the distributed file system. There is only one controller in a single-machine cluster.
- Agent: An agent executes the commands issued by a controller to start/stop local data nodes. Each physical server has one and only one agent within a cluster.
- Data node: Data are stored and queries (or more complex computations) are executed on data nodes. A physical server can be configured with multiple data nodes.
- Compute node: The compute node is used for queries and computation, including
historical data queries, distributed joins, batch processing, streaming, and machine
learning model training. A physical server can be configured with multiple compute
nodes. Since data is not stored on a compute node, you can use
loadTable
to load data from a data node to a compute node for computational work. On a compute node, you can create the database and partitioned tables, and write data to the partitioned tables by calling a write interface. However, writing data on a compute node will lead to more network overhead than a data node as the compute node need to send data to data nodes for storage.