Todos os produtos
Search
Central de documentação

E-MapReduce:Trino

Última atualização: Jun 27, 2026

O Trino, anteriormente conhecido como PrestoSQL, é um mecanismo de consulta SQL distribuído e open source para análises interativas. A partir das versões 3.44.0 e 5.10.0 do E-MapReduce (EMR), a plataforma adotou o nome oficial da comunidade: Trino. Nas versões anteriores, o console exibia o nome Presto, mas o mecanismo subjacente já era o Trino.

Recursos básicos

Desenvolvido em Java, o Trino foi projetado para análises interativas de alto desempenho. Ele oferece suporte a:

  • Conformidade total com o padrão ANSI SQL.

  • Diversas fontes de dados por meio de conectores, incluindo:

    • Hive

    • Cassandra

    • Kafka

    • MongoDB

    • MySQL

    • PostgreSQL

    • SQL Server

    • Redis

    • Redshift

    • Arquivos locais

  • Estruturas de dados avançadas, como:

    • Arrays e mapas

    • Dados JSON

    • Dados GIS

    • Dados de cores

  • Extensibilidade por diversos mecanismos, entre eles:

    • Conectores de dados de extensão

    • Tipos de dados personalizados

    • Funções SQL personalizadas

  • Processamento em pipeline que transmite os resultados das consultas aos clientes em tempo real.

  • Monitoramento por múltiplas interfaces:

    • Interface web para visualize do progresso da execução das consultas.

    • Protocolo JMX.

Componentes do sistema

A figura a seguir ilustra os componentes do sistema Trino.Presto系统组成

Um cluster Trino utiliza uma arquitetura coordenador/worker. O coordenador recebe as consultas SQL dos clientes, analisa e planeja as execuções e distribui as tarefas resultantes para os nós workers. O coordenador é responsável por:

  • Receber consultas dos usuários, analisá-las, gerar planos de execução e distribuir tarefas para os nós workers.

  • Monitorar o status dos nós workers. Cada nó worker mantém uma conexão de heartbeat com o coordenador para reportar seu estado.

  • Manter os dados do metastore.

Os nós workers executam as tarefas distribuídas. Eles utilizam conectores para ler dados de sistemas de armazenamento externos, processam essas informações e retornam os resultados ao coordenador.

Casos de uso

O Trino foi criado para cargas de trabalho de Processamento Analítico Online (OLAP), abrangendo análise de dados, agregações em grande escala e geração de relatórios. É indicado para:

  • Extração, transformação e carga (ETL)

  • Consultas ad hoc

  • Análise de dados estruturados ou semiestruturados em grande escala

  • Agregação e análise de relatórios sobre dados multidimensionais de grande volume

Importante

O Trino não é um banco de dados relacional de uso geral e não substitui sistemas como MySQL ou PostgreSQL. Seu suporte a transações é limitado; portanto, não é adequado para Processamento Transacional Online (OLTP) ou outras cargas de trabalho transacionais.

Benefícios

O Trino no E-MapReduce (EMR) oferece as seguintes vantagens em relação à versão open source:

  • Clusters prontos para uso. Crie um cluster Trino com centenas de nós em minutos, sem necessidade de configuração manual.

  • Dimensionamento elástico simplificado.

  • Integração nativa com a pilha de software do EMR e suporte a dados armazenados no Object Storage Service (OSS).

  • Operações totalmente gerenciadas, eliminando a necessidade de manutenção e operação (O&M).

Termos

Modelo de dados

O Trino organiza os dados em uma hierarquia de três camadas: catálogos, schemas e tabelas.

  • Catálogo

    Um catálogo mapeia uma fonte de dados externa por meio de um conector e contém um ou mais schemas. Uma única consulta pode abranger vários catálogos.

  • Schema

    Um schema equivale a uma instância de banco de dados e contém várias tabelas.

  • Tabela

    Uma tabela funciona da mesma forma que em um banco de dados relacional padrão.

Conector

Um conector adapta o Trino a uma fonte de dados específica, funcionando de maneira semelhante a um driver de banco de dados. Cada catálogo está vinculado a um tipo de conector, configurado no arquivo de propriedades do catálogo.

O Trino fornece uma Service Provider Interface (SPI) padrão para implementação de conectores personalizados para qualquer fonte de dados. Além disso, o Trino inclui diversos conectores integrados, agrupados por tipo de fonte de dados:

  • Data lakes e lakehouses: Hive e outras fontes compatíveis com Hadoop

  • Bancos de dados relacionais: MySQL, PostgreSQL, SQL Server

  • Outros sistemas: Cassandra, Kafka, MongoDB, Redis, Redshift e arquivos locais

Mais informações

Para acessar a documentação open source do Trino, substitua o número da versão na URL http://trino.io/docs/3XX//@filepath pela versão do seu componente Trino e abra o link no navegador.

Por exemplo, se a sua versão do Trino for a 331, utilize https://trino.io/docs/331//@filepath. Para mais detalhes, consulte a Documentação do Trino 331.