What it does
OpenObserve ingests observability data and provides search and SQL-style analytics. Its storage and query design use columnar formats and object storage integrations.
Why it’s interesting
Telemetry volume can make storage and indexes expensive. Columnar scans and partition pruning provide a different set of tradeoffs from a traditional search cluster.
Real-world use case
Collect service logs and correlate a slow request with related events.
What I can learn
- 01
Object-store-first data layout
Understand how telemetry files can be partitioned and stored as columnar objects, reducing reliance on a continuously running index.
- 02
Vectorized query execution
Study how columnar batches and predicate pushdown help a query engine scan only the data needed for a log search.
- 03
OpenTelemetry ingestion and correlation
Learn how logs, traces, and metrics share OpenTelemetry attributes that make cross-signal correlation possible.
One thing to explore
File list and query services
Follow the src implementation and connect it to the concepts above.
Explore the source (opens in a new tab)10-Minute Challenge
Trace a log through the query flow
Before you start: A browser and source access; local setup has evolved, so use the official installation documentation.
- Read the current deployment guide before starting a local instance.
- Browse the file-list or query service and identify how data files are selected.
- Sketch where a time-range filter could reduce the scan.