A configuração adequada de hardware e o design do ambiente de rede são fatores essenciais para garantir desempenho, custo-benefício e confiabilidade na criação de um cluster do Alibaba Cloud EMR. Este tópico descreve como selecionar serviços de alta disponibilidade, especificações de nós e soluções de configuração de rede com base nos requisitos de processamento de big data.
Seleção de serviço de alta disponibilidade
Ative ou não o recurso de alta disponibilidade conforme seus cenários de negócios e necessidades reais. Com o serviço de alta disponibilidade ativado, o cluster utiliza múltiplos nós mestre para eliminar riscos de falha de nó único e garantir a continuidade do serviço por meio de mecanismos distribuídos e de failover.
Dimensão | Cluster com nó mestre único | Cluster com múltiplos nós mestre |
Cenários |
|
|
Recursos principais | Arquitetura de nó único com implantação simples. Apresenta riscos de falha de ponto único. |
|
Failback | Sem recuperação automática: Exige intervenção manual para solução de problemas e reinicialização. | Failback automático: O serviço EMR substitui automaticamente o nó mestre com falha, configurando o mesmo ambiente e as mesmas ações de inicialização do nó original. |
Custo | Baixo custo: Configuração de apenas 1 nó mestre. | Custo mais elevado: Requer 3 nós mestre. Eles implementam mecanismos de decisão por maioria via algoritmos de consenso em sistemas distribuídos, atendendo aos requisitos de consistência forte de componentes open-source (como ZooKeeper e HDFS), tolerando falhas de nó único e evitando split-brain. |
Seleção de especificações de nó
O processo de configuração do cluster segue as etapas abaixo:
Definir o cenário de negócios: Conclua a seleção (por exemplo: data lake, análise de dados, fluxo de dados em tempo real, serviço de dados ou cenário de cluster personalizado) com base nos cenários.
Selecionar a arquitetura de armazenamento: Determine se deve escolher uma arquitetura com armazenamento e computação acoplados (HDFS) ou desacoplados (OSS-HDFS/OSS) conforme o cenário.
-
Configure as especificações dos nós e o tamanho do disco:
Configurar especificações de nó: Selecione tipos de instância ECS adequados (como uso geral, otimizado para computação, otimizado para memória, big data, etc.) para diferentes tipos de nós (como Master, Core, Task) com base na arquitetura de armazenamento escolhida, escala do cluster, características do negócio e outros fatores.
Configure o tamanho do disco: Calcule a capacidade de armazenamento e defina o tamanho apropriado do disco considerando o volume de dados e as expectativas de crescimento.
Cenário de Data Lake
Armazenamento e computação acoplados (HDFS)
Tipo de nó | Especificação recomendada |
Master Gerencia o cluster e coordena tarefas. Serviços implantados: NameNode, ResourceManager, HiveServer, HiveMetastore, SparkHistoryServer. |
|
Core Fornece poder de computação e recursos de armazenamento. Serviços implantados: DataNode, NodeManager. | As especificações das instâncias de nós Core dependem dos requisitos de recursos.
|
Task Fornece apenas poder de computação; não armazena dados. Usado principalmente para suprir demandas de CPU e memória dos nós Core. Serviços implantados: NodeManager. | Recomendações para cenários de pico e vale:
|
Armazenamento e computação desacoplados (OSS-HDFS/OSS)
Tipo de nó | Especificação recomendada |
Master Gerencia o cluster e coordena tarefas. Serviços implantados: ResourceManager, HiveServer, HiveMetastore, SparkHistoryServer. |
|
Core Função semelhante aos nós Task; não armazena dados. Serviços implantados: NodeManager. | Os nós Core não suportam dimensionamento elástico. Recomendamos usar apenas nós Task e não configurar nós Core. |
Task Fornece poder de computação. Serviços implantados: NodeManager. |
|
Cenário de análise de dados
Armazenamento e computação acoplados
Tipo de nó | Especificações recomendadas |
Master Gerencia o cluster e coordena tarefas. Serviços implantados: StarRocks FE, Doris FE, Zookeeper. |
|
Core Fornece poder de computação e recursos de armazenamento. Serviços implantados: StarRocks BE, Doris BE, ClickhouseKeeper, ClickhouseServer. | As especificações das instâncias de nós Core relacionam-se às necessidades de computação do negócio e ao volume de dados armazenados.
|
Task Fornece poder de computação. Serviços implantados: StarRocks CN. | Apenas o StarRocks Compute Node suporta implantação em nós Task. Se você não estiver usando componentes StarRocks, não é necessário utilizar nós Task. Recomendações para cenários de pico e vale:
|
Armazenamento e computação desacoplados
Apenas a versão 3.x do StarRocks suporta armazenamento e computação desacoplados.
Tipo de nó | Especificações recomendadas |
Master Gerencia o cluster e coordena tarefas. Serviços implantados: StarRocks FE, Zookeeper. |
|
Task Fornece poder de computação. Serviços implantados: StarRocks CN. | Na arquitetura de armazenamento e computação desacoplados do StarRocks, não existem nós Core, apenas nós Task.
Avalie as especificações da instância com base nas necessidades reais de computação do negócio; geralmente, selecione ≥16 núcleos e 64 GiB. O número de nós pode ser dimensionado elasticamente conforme a demanda. |
Cenário de fluxo de dados em tempo real
Armazenamento e computação acoplados (HDFS)
Tipo de nó | Especificações recomendadas |
Master Gerencia o cluster e coordena tarefas. Serviços implantados: NameNode, ResourceManager, FlinkHistoryServer, Zookeeper. |
|
Core Fornece poder de computação e recursos de armazenamento. Serviços implantados: DataNode, NodeManager. | As especificações das instâncias de nós Core dependem do tipo de negócio e dos requisitos de recursos.
|
Task Fornece apenas poder de computação; não armazena dados. Usado principalmente para complementar as demandas de CPU e memória dos nós Core. Serviços implantados: NodeManager. | Recomendações para cenários de pico e vale:
|
Armazenamento e computação desacoplados (OSS-HDFS/OSS)
Tipo de nó | Especificações recomendadas |
Master Gerencia o cluster e coordena tarefas. Serviços implantados: ResourceManager, FlinkHistoryServer, Zookeeper. |
|
Core Função semelhante aos nós Task; não armazena dados. Serviços implantados: NodeManager. | Os nós Core não suportam dimensionamento elástico. Recomendamos usar apenas nós Task e não configurar nós Core. |
Task Fornece poder de computação. Serviços implantados: NodeManager. |
|
Cenário de serviço de dados
Armazenamento e computação acoplados (HDFS)
Tipo de nó | Especificações recomendadas |
Master Gerencia o cluster e coordena tarefas. Serviços implantados: NameNode, HMaster, Zookeeper. |
|
Core Fornece poder de computação e recursos de armazenamento. Serviços implantados: DataNode, HRegionServer. |
As especificações das instâncias de nós Core dependem do volume de requisições do negócio e do volume de armazenamento.
|
Task Fornece apenas poder de computação; não armazena dados. Usado principalmente para complementar as demandas de CPU e memória dos nós Core. Serviços implantados: HRegionServer. | Em serviços de dados, como os dados ficam armazenados nos nós Core, geralmente não se recomenda o uso de nós Task para garantir a localidade dos dados. |
Armazenamento e computação desacoplados (OSS-HDFS/OSS)
Tipo de nó | Especificações recomendadas |
Master Gerencia o cluster e coordena tarefas. Serviços implantados: NameNode, HMaster, Zookeeper. |
|
Core Fornece poder de computação e recursos de armazenamento. Serviços implantados: DataNode, HRegionServer. |
Usar OSS-HDFS/OSS para armazenar HLog do HBase impacta significativamente o desempenho de gravação. Recomendamos salvar o HLog do HBase no HDFS. As especificações das instâncias de nós Core dependem do volume de requisições do negócio. Recomendam-se instâncias de uso geral, com espaço em disco ≥ 500 GiB.
|
Task Fornece poder de computação. Serviços implantados: HRegionServer. | Recomendações para cenários de pico e vale:
|
Cenário de cluster personalizado
Quando o negócio envolve múltiplos cenários mistos, como ETL offline, ETL em tempo real, análise complexa de agregação e serviços de consulta de alta concorrência:
Abordagem recomendada: Solução combinada de múltiplos tipos de cluster. Implante independentemente clusters com características diferentes (como clusters de processamento em lote offline, clusters de processamento de fluxo em tempo real, clusters analíticos e clusters de aceleração de consultas) para alcançar isolamento de recursos e adaptação ao cenário. Isso garante o desempenho e a estabilidade das diversas tarefas.
Se a escala do seu negócio for pequena e não houver conflitos de recursos entre os cenários, escolha um cluster personalizado: Reduza a complexidade de implantação e melhore a utilização de recursos através de configurações flexíveis.
Armazenamento e computação acoplados (HDFS)
Tipo de nó | Especificações recomendadas |
Master Responsável por gerenciar o cluster e coordenar tarefas. |
|
Core Fornece poder de computação e recursos de armazenamento. | As especificações das instâncias de nós Core dependem do tipo de negócio e dos requisitos de recursos.
|
Task Fornece apenas poder de computação; não armazena dados. Usado principalmente para complementar as demandas de CPU e memória dos nós Core. | Recomendações para cenários de pico e vale:
|
Armazenamento e computação desacoplados (OSS-HDFS/OSS)
Tipo de nó | Especificações recomendadas |
Master Gerencia o cluster e coordena tarefas. | Clusters pequenos (≤ 8 instâncias): Instâncias de uso geral com 8 núcleos e 32 GiB; selecione discos em nuvem. |
Core Função semelhante aos nós Task; não armazena dados. |
|
Task Fornece poder de computação. | Ao configurar apenas nós Task:
Quando tanto nós Core quanto nós Task forem configurados, considere os cenários de pico e vale:
|
Recomendações de configuração de rede
Dimensão principal | Recomendações de configuração |
Configuração de rede VPC |
|
Configuração de grupo de segurança |
|
Configuração de conectividade de rede |
|
Apêndice: Tipos de instância ECS
Consulte Família de instâncias para visualizar as características, especificações e cenários aplicáveis das famílias de instâncias ECS disponíveis. Isso serve de referência para configurar as especificações das instâncias de nós no console EMR.
|
Tipo de instância |
Características |
|
Uso geral |
vCPU:Memória=1:4. Abreviado como série g. |
|
Otimizado para computação |
vCPU:Memória=1:2, fornece mais recursos de computação. Abreviado como série c. |
|
Otimizado para memória |
vCPU:Memória=1:8, fornece mais recursos de memória. Abreviado como série r. |
|
SSD Local |
vCPU:Memória=1:4, usa discos SSD locais, possui alto IOPS aleatório e alta capacidade de throughput, mas apresenta risco de perda de dados. Este tipo de instância não está disponível para nós mestre. Abreviado como série i. |
|
Big data |
vCPU:Memória=1:4, usa discos SATA locais, possui alta relação custo-benefício de armazenamento, sendo o tipo de instância recomendado para cenários com grande volume de dados (nível de TB). Abreviado como série d. |
|
Compartilhado |
Tipo de instância com CPU compartilhada, não é estável o suficiente para grandes cargas computacionais, adequada apenas para aprendizado introdutório. Não recomendada para clientes empresariais. Este tipo de instância está disponível apenas para nós task. |