Skip to main content
Version: Nightly

Frontend

The Frontend is a stateless service that serves as the entry point for client requests in GreptimeDB. It provides a unified interface for multiple database protocols and acts as a proxy that forwards read/write requests to appropriate Datanodes in the distributed system.

Core Functions

  • Protocol Support: Multiple database protocols including SQL, PromQL, MySQL, and PostgreSQL. See Protocols for details
  • Request Routing: Routes requests to appropriate Datanodes based on metadata
  • Query Distribution: Splits distributed queries across multiple nodes
  • Response Aggregation: Combines results from multiple Datanodes
  • Authorization: Security and access control validation

Architecture

Key Components

  • Protocol Handlers: Handle different database protocols
  • Catalog Manager: Caches metadata from Metasrv to enable efficient request routing and schema validation
  • Dist Planner: Converts logical plans to distributed execution plans
  • Request Router: Determines target Datanodes for each request

Request Flow

request flow

Deployment

The following picture shows a typical deployment of GreptimeDB in the cloud. The Frontend instances form a cluster to serve the requests from clients:

frontend

Details