Softwr

Databases · head to head

Apache Doris vs Trino

Apache Doris logo

Apache Doris

Databases

MPP analytical database with a MySQL wire protocol and sub-second aggregation on wide tables

From
Free
Free plan
Yes
Trino logo

Trino

Databases

A distributed SQL engine that queries data where it already lives, across object storage, warehouses and operational databases.

From
Free
Free plan
Yes

The short version

  • Both are free.
  • Only Apache Doris lists MySQL wire protocol; only Trino lists federated querying.
  • Prices and features on this page were last checked on 13 November 2026.

Where they differ

Only the attributes on which Apache Doris and Trino actually diverge.

Attributes where Apache Doris and Trino differ
AttributeApache DorisTrino
Pricing modelOpen source, no licence feeOpen-source
PlatformsLinux, Self-hostedWeb

Identical on both: starting price (Free), free tier (Yes), category (Databases).

What each one covers

Drawn from each product's published feature list. An absence here means we hold no record of it - not that the product lacks it.

Only in Apache Doris

  • MySQL wire protocol
  • Aggregate and unique key models
  • Materialised views
  • Multi-catalogue federation
  • Routine load from Kafka
  • Compute storage separation
  • Inverted indexes
  • Workload groups

Only in Trino

  • Federated querying
  • Connector architecture
  • Predicate and aggregation pushdown
  • Massively parallel execution
  • Fault-tolerant execution
  • Resource groups
  • Iceberg and Delta table support
  • Standard client protocols

What people use each for

The jobs each tool is most often brought in to do.

Apache Doris

  • A team whose MySQL read replica can no longer serve reporting queries and wants an OLAP engine its existing drivers already speaknot Trino
  • A real-time dashboard backend needing sub-second aggregation over billions of rows with hundreds of concurrent usersnot Trino
  • An ad or ecommerce platform that needs updates and deletes on analytical tables, which append-only OLAP engines handle badlynot Trino
  • A data team that wants one SQL endpoint over both internal tables and existing Hive or Iceberg tables in the lakenot Trino

Trino

  • Ad hoc analysis that spans a data lake and one or more operational databases, without building an ingestion pipeline firstnot Apache Doris
  • Serving a BI tool a single SQL endpoint over an estate that is actually several separate storage systemsnot Apache Doris
  • Querying Iceberg or Delta tables on object storage interactively, as the compute layer of a lakehousenot Apache Doris
  • Investigating whether a dataset is worth ingesting, by querying it in place before committing to a pipeline for itnot Apache Doris

Where each one falls short

Documented limitations, not opinions. Every one is a constraint you would hit in normal use.

Apache Doris

  • Two competing commercial vendors, VeloDB and SelectDB, were founded by overlapping core contributors, which makes the long-term governance and roadmap of the project harder to predict than a single-sponsor project
  • A large share of design discussion, issue reports and documentation detail originates in Chinese, so teams that do not read it get a thinner picture of known problems and workarounds
  • Operating a cluster means managing frontend and backend node roles, tablet balancing and compaction tuning, and compaction backlogs under heavy upsert load are a recurring production complaint
  • The MySQL protocol compatibility is at the wire level, not full MySQL semantics, so queries and functions still need porting and the familiarity can mislead
  • Managed cloud availability outside China and major clouds is limited compared with ClickHouse or Snowflake, so many Western adopters end up self-hosting whether they wanted to or not

Trino

  • Trino stores nothing and computes no statistics of its own, so the plan it produces is only as good as the partitioning, file sizes and table statistics on the source; a Hive table of thousands of small files or a lake with no stats produces a slow query the engine cannot improve
  • Federated queries pull data out of the systems they touch, so a join between a lake table and a production Postgres can put a full table scan onto an OLTP database that other applications depend on, and the person who wrote the query will not see the incident it causes
  • Releases come roughly every one to two weeks with no community long-term support line, and deprecations arrive quickly, so you either dedicate someone to keeping current or you buy Starburst Enterprise for a supported long-term version
  • It is memory-based and disk spilling was deprecated in favour of fault-tolerant execution, so a query exceeding cluster memory fails outright rather than degrading; enabling fault-tolerant execution requires an external exchange store on object storage and makes queries measurably slower
  • It is a query engine and not a warehouse: there is no built-in job scheduling, no incremental materialised view maintenance and no transformation framework, so producing curated tables still needs dbt or an equivalent layer that somebody has to own
  • The 2020 fork split the ecosystem, so documentation, connectors, Stack Overflow answers and vendor material written before then describe PrestoDB, which is now a different project with different behaviour, and following the wrong one wastes real time

Pricing, plan by plan

Apache Doris

Free
  • Apache DorisFree
    • Apache 2.0 licence with no usage restrictions
    • All engine features included
    • Community support via mailing list and Slack

Trino

Free

No published plan breakdown. See the Trino review.

Which should you pick?

Choose Apache Doris if

  • You need mysql wire protocol.
  • You want to start without paying.
  • You work on Linux, Self-hosted.
  • You also want aggregate and unique key models.

Choose Trino if

  • You need federated querying.
  • You want to start without paying.
  • You also want connector architecture.

Questions people ask

Is Apache Doris or Trino better?
Neither clearly leads. Apache Doris starts at Free and Trino at Free, and user ratings are close enough to be indistinguishable. Choose on capability and platform support.
Which is cheaper, Apache Doris or Trino?
Apache Doris starts at Free and Trino at Free.
Does Apache Doris or Trino run on more platforms?
Apache Doris runs on Linux, Self-hosted. Trino runs on Web.
Can I use Apache Doris for free?
Both have a free tier, so you can try either at no cost before committing.
What is Apache Doris best used for?
Apache Doris is most often used for a team whose mysql read replica can no longer serve reporting queries and wants an olap engine its existing drivers already speak, a real-time dashboard backend needing sub-second aggregation over billions of rows with hundreds of concurrent users, an ad or ecommerce platform that needs updates and deletes on analytical tables, which append-only olap engines handle badly, a data team that wants one sql endpoint over both internal tables and existing hive or iceberg tables in the lake. Of those, a team whose mysql read replica can no longer serve reporting queries and wants an olap engine its existing drivers already speak and a real-time dashboard backend needing sub-second aggregation over billions of rows with hundreds of concurrent users are not what Trino is typically brought in for.
What can Apache Doris do that Trino cannot?
Apache Doris covers MySQL wire protocol, Aggregate and unique key models, Materialised views, Multi-catalogue federation. Trino covers Federated querying, Connector architecture, Predicate and aggregation pushdown, Massively parallel execution.

Answered from the vendors’ own pages

Apache Doris: Is Apache Doris really free?

Yes, it is Apache 2.0 with no usage restrictions. The commercial products are managed services from VeloDB and SelectDB.

Trino: What is the difference between Trino and Presto?

They share an origin. The original creators left Meta and renamed their fork from PrestoSQL to Trino in December 2020; PrestoDB continues separately under the Linux Foundation. They have diverged in features, connectors and SQL behaviour, so material written for one may not apply to the other.

Apache Doris: Can I use my MySQL tools with it?

Yes, it implements the MySQL wire protocol, so clients and BI connectors attach without a new driver, though SQL semantics differ.

Trino: Does Trino replace my data warehouse?

Not on its own. It is compute without storage, scheduling or transformation. Paired with Iceberg or Delta on object storage and something like dbt for modelling it can serve as a lakehouse; used alone it is a query layer over what you already have.

Apache Doris: How does it compare with ClickHouse?

Doris handles updates and high concurrency more comfortably; ClickHouse is generally faster on raw single-query scan throughput and has far wider Western support.

Trino: Why is my federated query slow?

Usually because a connector could not push a filter or aggregation down, so Trino is pulling whole tables across the network to join them itself. The fix is usually better source-side partitioning or statistics, or ingesting that source rather than federating it.

Apache Doris: Who maintains it?

The Apache Software Foundation project, with most committers employed by VeloDB or SelectDB.

Trino: What happens when a query runs out of memory?

It fails. Disk spilling was deprecated in favour of fault-tolerant execution, which checkpoints to an external exchange store such as S3 and lets long queries survive memory pressure and worker loss, at the cost of noticeably slower execution.

Trino: Is there commercial support?

Yes, from Starburst, which offers Starburst Enterprise with long-term supported releases and Starburst Galaxy as a managed service. The open source project itself has no long-term support line.

Share

Related pages

Other head to heads