RousselTMLEARNING

Article · OpenObserve: from discovery to expertise

OpenObserve: architecture and concepts

1. OpenObserve at a glance #

An observability platform in a single binary.

Overview #

OpenObserve is an open source observability platform written in Rust. It brings logs, metrics and traces, dashboards, alerts and data pipelines into one product. Its distinctive feature: data is stored in columns, in Parquet format, on disk or in object storage, without a full inverted index as in Elasticsearch. Storage gets much cheaper; the vendor announces very large gaps, to be checked on your own data.

A single binary is enough to start: no cluster to build, no JVM. In our tests, a local node used about 370 MB of memory.

Open source or Enterprise? #

Open source (AGPL-3.0)Enterprise
Logs, metrics, traces, dashboards, alertsYesYes
Configurable retentionYesYes
PipelinesYes, without remote destinationsYes
Fine-grained access (custom roles)NoYes
SSO, federated search, full audit trailNoYes
To check: the split and conditions change over time. The vendor also offers the self-hosted Enterprise edition free below a daily ingestion threshold: see the official page. This course uses the open source edition.

2. Architecture #

From a single binary to a cluster.

Two deployment modes #

OpenObserve architecture in local mode and in high availability
Local mode covers many needs; high availability requires Kubernetes and object storage.
RolePurpose
RouterReceives and routes requests, serves the UI
IngesterReceives data, writes the WAL, produces Parquet and uploads it
QuerierRuns searches; stateless
CompactorMerges small files and enforces retention
SchedulerRuns scheduled alerts and reports

In high availability, PostgreSQL holds metadata and NATS handles coordination. Local disk is not supported there.

The journey of a record #

  1. The ingester writes the event to a WAL and to memory.
  2. Data is periodically converted to local Parquet files, already searchable.
  3. These files are uploaded to object storage.
  4. The compactor merges small files to speed up searches.

3. Concepts #

The vocabulary to know.

Organization, stream and schema #

ConceptMeaning
OrganizationIsolated space; the default in URLs
StreamEquivalent of an index; it has a type: logs, metrics or traces
SchemaCreated and extended automatically at ingestion
_timestampTimestamp of each event, in microseconds

OpenObserve versus other tools #

NeedOpenObserveOther choice
Simple all-in-oneOne binary, three signalsSigNoz, ClickStack (ClickHouse)
Very rich full-text searchSimpler, SQLElasticsearch, OpenSearch
Grafana ecosystemOwn UI, PromQL compatibleLoki, Mimir, Tempo

📄 OpenObserve: architecture and concepts →

My progress

  • ⏱ Estimated time : ≈ 3 min

Sign in to track your progress and take notes. Sign in

💬 Ask a question

Recommended Articles

Sending logs, metrics and traces to OpenObserve

OpenObserve receiving endpoints: JSON, bulk, OTLP with the OpenTelemetry Collector, Prometheus re...

Exploring data in OpenObserve: SQL, PromQL and VRL

Search with SQL, query metrics with PromQL, optimize a stream (indexes, partitions, retention) an...

Installing OpenObserve and ingesting your first data

Install OpenObserve with Docker Compose or the binary, configure it with its ZO_* variables, send...

OpenObserve in production: best practices

Choose your deployment mode, organize streams, secure, back up and monitor OpenObserve in product...

Alerts and pipelines in OpenObserve

Create a template, a destination and an alert, avoid the SSRF webhook block and process data with...

Grafana Alloy: Introduction and Architecture

Discover the fundamental concepts of Grafana Alloy, the transition from the static Agent to Alloy...

La stack LGTM (Loki, Grafana, Tempo, Mimir) : architecture et mise en place

Comprendre la stack LGTM de Grafana Labs : Loki pour les logs, Grafana pour la visualisation, Tem...

Grafana Loki : le système de logs inspiré de Prometheus

Découvrir Grafana Loki : philosophie d'indexation par labels, architecture (distributor, ingester...

Grafana Assistant: AI at the service of observability

Discover Grafana Assistant, the artificial intelligence integrated into Grafana Cloud. Learn how ...

Support us

♥ SUPPORT US

Support RousselTM Learning

Courses, articles, labs and certificates stay free with no intrusive ads. A voluntary contribution, of any amount you choose, pays for hosting, lab environments and new content.

Contribute with PayPal Any amount · card or PayPal accountLearn more
QR code PayPal
Or scan this QR code with your phone

Thank you, every contribution counts!