Overview
Introduction
Datanode
is mainly responsible for storing the actual data for GreptimeDB. As we know, in GreptimeDB, a table
can have one or more Region
s, and Datanode
is responsible for managing the reading and writing of these Region
s. Datanode
is not aware of table
and can be considered as a region server
. Therefore, Frontend
and Metasrv
operate Datanode
at the granularity of Region
.
Components
A Datanode
contains all the components needed for a region server
. Here we list some of the vital parts:
- A gRPC service is provided for reading and writing region data, and
Frontend
uses this service to read and write data fromDatanode
s. - An HTTP service, through which you can obtain metrics, configuration information, etc., of the current node.
Heartbeat Task
is used to send heartbeat to theMetasrv
. The heartbeat plays a crucial role in the distributed architecture of GreptimeDB and serves as a basic communication channel for distributed coordination. The upstream heartbeat messages contain important information such as the workload of aRegion
. If theMetasrv
has made scheduling(such asRegion
migration) decisions, it will send instructions to theDatanode
via downstream heartbeat messages.- The
Datanode
does not include components like thePhysical Planner
,Optimizer
, etc. (these are placed in theFrontend
). The user’s query requests for one or moreTable
s will be transformed intoRegion
query requests in theFrontend
. TheDatanode
is responsible for handling theseRegion
query requests. - A
Region Manager
is used to manage allRegion
s on aDatanode
. - GreptimeDB supports a pluggable multi-engine architecture, with existing engines including
File Engine
andMito Engine
.
当前内容版权归 GreptimeDB 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 GreptimeDB .