// Module included in the following assemblies:
//
// * service_mesh/v2x/ossm-architecture.adoc
// * observability/distr_tracing/distr-tracing-tempo-architecture.adoc

:_mod-docs-content-type: CONCEPT
[id="distr-tracing-tempo-architecture_{context}"]
= {DTProductName} architecture

{DTProductName} is made up of several components that work together to collect, store, and display tracing data.

* *{TempoName}* - This component is based on the open source link:https://grafana.com/oss/tempo/[Grafana Tempo project].

** *Gateway* – The Gateway handles authentication, authorization, and forwarding of requests to the Distributor or Query front-end service.

** *Distributor* – The Distributor accepts spans in multiple formats, including Jaeger, OpenTelemetry, and Zipkin. It routes spans to Ingesters by hashing the `+traceID+` and using a distributed consistent hash ring.

** *Ingester* – The Ingester batches a trace into blocks, creates bloom filters and indexes, and then flushes it all to the back end.

** *Query Frontend* – The Query Frontend shards the search space for an incoming query and sends the query to the Queriers. The Query Frontend deployment exposes the Jaeger UI through the Tempo Query sidecar.

** *Querier* - The Querier is responsible for finding the requested trace ID in either the Ingesters or the back-end storage. Depending on parameters, it can query the Ingesters and pull Bloom indexes from the back end to search blocks in object storage.

** *Compactor* – The Compactor streams blocks to and from the back-end storage to reduce the total number of blocks.

* *{OTELName}* - This component is based on the open source link:https://opentelemetry.io/[OpenTelemetry project].

** *OpenTelemetry Collector* - The OpenTelemetry Collector is a vendor-agnostic way to receive, process, and export telemetry data. The OpenTelemetry Collector supports open-source observability data formats, for example, Jaeger and Prometheus, sending to one or more open-source or commercial back-ends. The Collector is the default location instrumentation libraries export their telemetry data.
