O EMR oferece componentes de código aberto e de desenvolvimento próprio que abrangem desenvolvimento de dados, mecanismos de computação, serviços de dados, gerenciamento de recursos, armazenamento de dados e integração de dados. Selecione e configure os componentes conforme suas necessidades.
Caso um componente desejado não esteja disponível durante a criação do cluster, ou se um componente de código aberto estiver restrito a usuários existentes, instale-o e gerencie-o por conta própria.
O EMR é composto por componentes de código aberto, componentes de desenvolvimento próprio, produtos integrados da Alibaba Cloud e gerenciamento de clusters. Consulte o diagrama de arquitetura do serviço para obter a lista completa de componentes de big data e seus casos de uso.
Desenvolvimento de dados
A camada de desenvolvimento de dados fornece ferramentas visuais e gerenciamento de código para coleta, limpeza, modelagem, análise e agendamento de tarefas. Ela auxilia as empresas a gerenciar e utilizar seus ativos de dados com eficiência.
Para desenvolvimento de dados no EMR, utilize os produtos da Alibaba Cloud DataWorks . Confira os detalhes abaixo:
|
Nome do produto |
Descrição |
Documentação geral |
|
DataWorks |
O DataWorks oferece integração, desenvolvimento, governança, gestão de qualidade, O&M e controle de segurança de ponta a ponta. É ideal para cenários que exigem integração e governança de dados complexas. |
Para utilizar componentes de desenvolvimento de dados de código aberto, escolha entre Hue e Superset:
|
Tipo de componente |
Nome do componente |
Descrição |
Documentação comum |
|
Código aberto |
Hue |
O Hue está disponível apenas para usuários existentes. O Hue é uma interface web de código aberto para interação com o ecossistema Apache Hadoop. |
|
|
Superset |
O Superset está disponível apenas para usuários existentes. O Superset é uma ferramenta de visualização de dados que oferece recursos avançados de visualização e painéis. |
Mecanismos de computação
O EMR suporta os principais mecanismos de computação para processamento em lote, análise interativa, processamento de fluxo e machine learning. Esses mecanismos transformam a estrutura e a lógica dos dados para atender aos requisitos de diferentes cenários de big data.
|
Tipo de componente |
Nome do componente |
Descrição |
Documentação relacionada |
|
Código aberto |
Spark |
O Spark é um mecanismo de processamento de big data rápido e de uso geral que fornece computação em memória e suporta processamento em lote, processamento em tempo real, machine learning e computação gráfica. |
|
|
Hive |
O Hive é uma ferramenta de data warehouse baseada no Hadoop que fornece o HiveQL, uma linguagem de consulta semelhante ao SQL, para armazenar, consultar e analisar dados em grande escala no Hadoop. |
||
|
StarRocks |
O StarRocks é um banco de dados MPP (Massively Parallel Processing) de alta velocidade de última geração que suporta análise multidimensional OLAP (Online Analytical Processing), consultas de alta concorrência e análises em tempo real. |
||
|
Doris |
O Doris é um banco de dados analítico em tempo real de alto desempenho, adequado para análise de relatórios, consultas ad hoc e aceleração de consultas federadas para data lakes. |
||
|
ClickHouse |
O ClickHouse é um sistema de gerenciamento de banco de dados orientado a colunas e de código aberto, projetado para processamento analítico online (OLAP) eficiente e consultas rápidas em conjuntos de dados massivos. |
||
|
Trino |
O Trino, anteriormente PrestoSQL, é um mecanismo de consulta SQL distribuído e de código aberto, adequado para consultas analíticas interativas. |
||
|
Flink |
O Flink é um mecanismo de processamento de fluxo que suporta o processamento de fluxos de dados em tempo real e em grande escala. |
||
|
Presto |
O Presto, também conhecido como PrestoDB, é um mecanismo de consulta SQL distribuído flexível e escalável, adequado para consultas analíticas interativas. |
||
|
Tez |
O Apache Tez é uma estrutura de processamento de big data distribuída que fornece um modelo de execução de grafo acíclico direcionado (DAG) eficiente e flexível. Ele serve principalmente como substituto do MapReduce para otimizar o desempenho de consultas e processamento em lote. |
||
|
Phoenix |
O Phoenix é uma camada intermediária SQL construída sobre o HBase que permite usar sintaxe SQL padrão para consultar e gerenciar dados armazenados no HBase. |
||
|
Impala |
O Impala está disponível apenas para usuários existentes. O Impala fornece consultas SQL de alto desempenho e baixa latência para dados armazenados no Apache Hadoop. |
||
|
Kudu |
O Kudu está disponível apenas para usuários existentes. O Kudu é um gerenciador de armazenamento distribuído, escalável e orientado a colunas que fornece operações de leitura/gravação aleatória de baixa latência e análise de dados eficiente. |
||
|
Druid |
O Druid está disponível apenas para usuários existentes. O Druid é um sistema de análise em tempo real, distribuído e em memória, destinado a consultas rápidas e interativas em grandes conjuntos de dados. |
Serviços de dados
A camada de serviços de dados oferece criptografia, controle de acesso, consulta, acesso a dados e capacidades de API para melhorar a segurança, o desempenho operacional e a eficiência analítica em ambientes de big data.
|
Tipo de componente |
Nome do componente |
Descrição |
Documentação relacionada |
|
Código aberto |
Ranger |
O Ranger é uma estrutura centralizada de gerenciamento de segurança para permissões e auditoria no ecossistema Hadoop. |
|
|
Kerberos |
O Kerberos é um protocolo de autenticação de identidade que utiliza tecnologia de chave simétrica para verificar identidades em outros serviços e suporta SSO. |
||
|
OpenLDAP |
O OpenLDAP é uma implementação de código aberto do protocolo LDAP para gerenciar e armazenar informações de usuários e recursos. Ele fornece recursos de gerenciamento de usuários e autenticação de identidade. |
||
|
Kyuubi |
O Kyuubi é um gateway SQL distribuído e multilocatário que simplifica a análise de dados e o processamento de consultas ao fornecer serviços SQL e outros serviços de consulta para mecanismos de consulta de data lake. |
||
|
Zookeeper |
O ZooKeeper é um serviço de coordenação distribuída para gerenciar tarefas essenciais em aplicações distribuídas, como configuração, sincronização e nomenclatura. Ele oferece uma solução consistente, de alto desempenho e confiável para gerenciamento de clusters. |
||
|
Knox |
O Knox é um gateway de API REST que simplifica o acesso seguro ao Hadoop e componentes relacionados, fornecendo autenticação de identidade unificada e controle de acesso. |
||
|
Livy |
O Livy é um serviço que interage com o Spark por meio de uma interface REST ou biblioteca cliente RPC. |
||
|
Kafka Manager |
O Kafka Manager está disponível apenas para usuários existentes. O Kafka Manager é uma ferramenta de gerenciamento de clusters para o Kafka que fornece uma interface web para administrar e monitorar clusters Kafka. |
||
|
Desenvolvimento próprio |
DLF-Auth |
O DLF-Auth é fornecido pelo Data Lake Formation (DLF) e permite controle de acesso granular sobre bancos de dados, tabelas, colunas e funções gerenciados pelo DLF, possibilitando o gerenciamento unificado de permissões de dados no data lake. |
Gerenciamento de recursos
A camada de gerenciamento de recursos oferece agendamento e administração eficientes, permitindo o agendamento automatizado de tarefas, alocação inteligente de recursos e dimensionamento elástico de clusters para aumentar a eficiência e a confiabilidade do processamento de big data.
|
Tipo de componente |
Nome do componente |
Descrição |
Documentação relacionada |
|
Código aberto |
YARN |
O YARN é o sistema de gerenciamento de recursos do Hadoop que agenda e administra recursos do cluster. Ele suporta a execução de diferentes tipos de tarefas de computação distribuída em recursos compartilhados. |
Armazenamento de dados
A camada de armazenamento de dados suporta armazenamento distribuído para dados estruturados e não estruturados. Escolha o método de armazenamento adequado aos requisitos do seu mecanismo de computação.
|
Tipo de componente |
Nome do componente |
Descrição |
Documentação comum |
|
Desenvolvimento próprio |
OSS-HDFS |
O OSS-HDFS é uma solução de armazenamento de objetos compatível com a interface do Hadoop Distributed File System (HDFS) que permite às tarefas de computação de big data acessar dados no Alibaba Cloud OSS diretamente usando o protocolo HDFS padrão. |
|
|
JindoCache |
O JindoCache é uma solução de cache distribuído que acelera o acesso a dados em grande escala armazenando blocos de dados na memória, melhorando o desempenho de leitura e reduzindo a pressão sobre o sistema de armazenamento subjacente. |
||
|
ESS |
O ESS está disponível apenas para usuários existentes. Novos usuários devem utilizar o componente Celeborn. O ESS é um componente de extensão baseado em Shuffle que otimiza problemas de leitura e gravação do Shuffle. |
||
|
JindoData |
O JindoData está disponível apenas para usuários existentes. Novos usuários devem utilizar o componente JindoCache. O JindoData é um conjunto de aceleração de armazenamento de data lake de desenvolvimento próprio para os ecossistemas de big data e IA. Ele fornece uma solução abrangente de aceleração de acesso para os principais sistemas de armazenamento de data lake da Alibaba Cloud e do mercado. |
||
|
SmartData |
O SmartData está disponível apenas para usuários existentes. Novos usuários devem utilizar o componente OSS-HDFS. O SmartData é um componente EMR de desenvolvimento próprio que fornece otimização unificada de armazenamento, otimização de cache, aceleração de computação e extensões de recursos de armazenamento para mecanismos de computação do EMR. Ele abrange acesso a dados, governança de dados e segurança de dados. |
||
|
Código aberto |
Paimon |
O Paimon é um formato de armazenamento de lake unificado para fluxo e lote que suporta gravações de alto throughput e consultas de baixa latência. |
|
|
Hudi |
O Hudi é um formato de armazenamento de data lake que suporta atualização e exclusão de dados em um sistema de arquivos Hadoop, além do consumo de alterações de dados. |
||
|
Iceberg |
O Iceberg é um formato de tabela de data lake aberto que fornece operações de leitura/gravação de alto desempenho e gerenciamento de metadados. |
||
|
DeltaLake |
O DeltaLake é uma camada de armazenamento de dados de código aberto. Ele fornece transações ACID (atomicidade, consistência, isolamento e durabilidade), processamento escalável de metadados e processamento unificado de fluxo e lote. |
||
|
HDFS |
O Hadoop Distributed File System (HDFS) é um sistema de arquivos distribuído para armazenar grandes conjuntos de dados. Ele apresenta alta tolerância a falhas e alto throughput, armazenando dados redundantemente em vários nós do cluster. |
||
|
HBase |
O HBase é um banco de dados distribuído, orientado a colunas e de código aberto, construído sobre o sistema de arquivos Hadoop. Ele fornece acesso de leitura/gravação aleatória de baixa latência e armazenamento altamente confiável para grandes conjuntos de dados. |
||
|
Celeborn |
O Celeborn é um serviço que processa dados intermediários para melhorar a estabilidade, flexibilidade e desempenho dos mecanismos de big data. |
||
|
HBASE-HDFS |
O HBASE-HDFS é o HDFS. Em cenários de separação entre computação e armazenamento, ele usa o HBASE-HDFS local para armazenar dados de Write-Ahead Logging (WAL). |
||
|
Alluxio |
O Alluxio está disponível apenas para usuários existentes. O Alluxio é uma tecnologia de orquestração de dados de código aberto para análise de dados e IA baseadas em nuvem que fornece uma camada unificada de acesso a dados, suportando múltiplos sistemas de armazenamento subjacentes. |
Integração de dados
A camada de integração de dados oferece transferência de dados em lote, processamento de fluxo de mensagens em tempo real e coleta distribuída de logs para melhorar a eficiência da transferência e a confiabilidade da coleta de dados.
|
Tipo de componente |
Nome do componente |
Descrição |
Documentação geral |
|
Código aberto |
Flume |
O Flume é um sistema distribuído, confiável e de alta disponibilidade para coletar, agregar e mover grandes fluxos de dados de log para um repositório de dados centralizado. |
|
|
Sqoop |
O Sqoop é uma ferramenta para transferir dados eficientemente entre o Hadoop e bancos de dados relacionais. Ele suporta operações de importação e exportação de dados em grande escala. |
||
|
Kafka |
O Kafka está disponível apenas para usuários existentes. O Kafka é uma plataforma de streaming de eventos distribuída e de código aberto com alto throughput, baixa latência e persistência, amplamente utilizada para processamento de fluxo de dados em tempo real e aplicações de pipeline de dados. |
Referências
Para obter informações sobre a arquitetura geral do EMR, consulte Arquitetura do serviço.
Para ver os componentes e respectivas versões suportados por cada versão do EMR, consulte Componentes suportados por cada versão.
Para conhecer os cenários suportados pelo EMR e os componentes adequados para cada um, consulte Casos de uso de big data.