Este documento apresenta diretrizes de planejamento e recomendações para tipos de instância do StarRocks. Descreve as instâncias com armazenamento e computação integrados e as instâncias com armazenamento e computação separados.
Edição com armazenamento e computação integrados
Na edição com armazenamento e computação integrados, uma instância contém apenas nós frontend (FE) e backend (BE). Esta seção fornece recomendações sobre as especificações de ambos os tipos de nó.
Estimar o número de CUs para nós BE
Na edição com armazenamento e computação integrados, os nós backend (BE) são responsáveis pelo armazenamento de dados e pelas tarefas de computação.
-
Fórmula de estimativa
Total CUs = Total rows to scan / CPU processing capability / Expected response time * QPS (Queries Per Second)Os parâmetros são descritos da seguinte forma:
Total de linhas a verificar: número esperado de linhas que cada consulta SQL verifica. Este valor não corresponde ao total de linhas de uma única tabela, mas apenas à quantidade de linhas que precisam ser lidas.
Capacidade de processamento da CPU: este valor varia dinamicamente conforme a complexidade da consulta SQL. Geralmente, situa-se entre 10 milhões e 100 milhões de linhas por segundo. Quanto mais complexa for a consulta SQL, menor será o número de linhas processadas.
Tempo de resposta esperado: tempo de execução previsto para uma consulta SQL. Por exemplo, a consulta deve retornar um resultado em até 1 segundo.
Consultas por segundo (QPS): número de consultas SQL simultâneas enviadas por segundo. Por exemplo, 30 consultas por segundo.
-
Dados de amostra
ImportanteA fórmula fornece uma estimativa que pode não ser totalmente precisa, pois o desempenho varia conforme a complexidade do SQL. Em um ambiente de produção, avalie os recursos finais necessários com base nos resultados de testes de estresse específicos para o seu negócio.
Total de linhas a verificar
Complexidade do SQL
Capacidade estimada de processamento da CPU (linhas/s)
Tempo de resposta esperado (s)
QPS (consultas/s)
Total estimado de CUs
Especificações estimadas de BE
50 milhões de linhas
Alta
20 milhões de linhas
2
50
63
16 CUs × 4 nós
50 milhões de linhas
Média
50 milhões de linhas
1,5
100
67
16 CUs × 5 nós
50 milhões de linhas
Baixa
100 milhões de linhas
1
200
100
32 CUs × 3 nós
1 bilhão de linhas
Alta
20 milhões de linhas
5
20
200
32 CUs × 7 nós
1 bilhão de linhas
Média
50 milhões de linhas
3
50
333
64 CUs × 6 nós
1 bilhão de linhas
Baixa
100 milhões de linhas
1
80
800
64 CUs × 13 nós
30 bilhões de linhas
Alta
20 milhões de linhas
30
10
500
64 CUs × 8 nós
30 bilhões de linhas
Média
50 milhões de linhas
15
20
800
64 CUs × 13 nós
30 bilhões de linhas
Baixa
100 milhões de linhas
15
20
400
64 CUs × 6 nós
300 bilhões de linhas
Alta
20 milhões de linhas
60
5
2083
64 CUs × 33 nós
300 bilhões de linhas
Média
50 milhões de linhas
45
10
2222
64 CUs × 35 nós
300 bilhões de linhas
Baixa
100 milhões de linhas
45
10
1111
64 CUs × 18 nós
Estimar o armazenamento dos nós BE
O espaço total de armazenamento necessário para uma instância do StarRocks depende do tamanho bruto dos dados, do número de réplicas e da taxa de compressão do algoritmo utilizado.
-
Fórmula de estimativa
Total storage space required = Raw data size * Number of replicas / Compression ratioOs parâmetros são descritos da seguinte forma:
Tamanho bruto dos dados: tamanho de uma única linha × número total de linhas.
Número de réplicas: em uma arquitetura com armazenamento e computação integrados, esse valor geralmente é definido como 3.
Taxa de compressão: o StarRocks oferece suporte a quatro algoritmos de compressão: zlib, Zstandard (ou zstd), LZ4 e Snappy, listados em ordem decrescente de taxa de compressão. Esses algoritmos proporcionam taxas de compressão de 3:1 a 5:1.
-
Dados de amostra
Tamanho de uma única linha (KB)
Número de registros de linhas
Número de réplicas
Taxa de compressão
Tamanho estimado dos dados (GB)
50
100.000.000
3
3
4.768,37
NotaOs valores na tabela são apenas recomendações. Em um ambiente de produção, avalie os recursos finais necessários com base nos resultados de testes de estresse específicos para o seu negócio.
Planejamento de disco para nós BE
A fórmula de estimativa é a seguinte.
Total disk size per BE node = Total storage space / Disk utilization / Number of BE nodes
Os parâmetros são descritos da seguinte forma:
Espaço total de armazenamento: espaço total calculado para os nós BE.
Utilização do disco: recomenda-se uma taxa de utilização de 80% para reservar os 20% restantes do espaço para computação.
Número de nós BE: quantidade de nós BE determinada a partir da estimativa de CUs.
Por exemplo, se o espaço total de armazenamento for 4768 GB, a utilização do disco for 80% e houver 11 nós BE, o cálculo será 4768 GB / 80% / 11 = 541 GB. Portanto, o tamanho total do disco para um único nó BE é de 541 GB.
Selecione a quantidade de discos
A quantidade de discos a selecionar depende do desempenho dos SSDs empresariais (ESSDs) e da capacidade total de disco de um único nó. Para otimizar o desempenho de disco único, divida os discos ESSD PL1 conforme mostrado na tabela a seguir.
|
Tamanho total do disco por nó BE |
Tipo de disco |
Quantidade recomendada de discos |
|
<= 500 GB |
ESSD PL1 |
1 |
|
500 GB a 1 TB |
ESSD PL1 |
1 a 2 |
|
1 TB a 1,5 TB |
ESSD PL1 |
2 a 3 |
|
1,5 TB a 2 TB |
ESSD PL1 |
3 a 4 |
|
2 TB a 2,5 TB |
ESSD PL1 |
4 a 5 |
|
2,5 TB a 3 TB |
ESSD PL1 |
5 a 6 |
|
3 TB a 3,5 TB |
ESSD PL1 |
6 a 7 |
|
3,5 TB a 4 TB |
ESSD PL1 |
7 a 8 |
|
> 4 TB |
ESSD PL1 |
8 blocos |
Os limites de desempenho para outros discos cloud ESSD são os seguintes:
ESSD PL0: atinge o IOPS máximo do disco em 320 GB.
ESSD PL1: atinge o IOPS máximo do disco em 460 GB.
ESSD PL2: atinge o IOPS máximo do disco em 1260 GB.
ESSD PL3: atinge o IOPS máximo do disco em 7760 GB.
Para otimizar o desempenho, consulte as recomendações de divisão de discos para ESSD PL1 e ajuste adequadamente a quantidade de discos para os outros tipos de ESSD.
Estimar as especificações dos nós FE
Os nós frontend (FE) são responsáveis principalmente pelo gerenciamento de metadados, gerenciamento de conexões de clientes, planejamento de consultas e agendamento de consultas.
É possível estimar aproximadamente as especificações de FE com base no número total de CUs dos nós BE. A tabela a seguir fornece recomendações específicas. O disco de dados de um nó FE normalmente requer apenas 100 GB. Caso o espaço de armazenamento se torne insuficiente, faça o scale-out separadamente.
|
Total de CUs de BE |
Tipo de cenário |
Especificações recomendadas de FE |
|
< 120 CUs |
Cenário normal |
8 CUs × 3 |
|
120 CUs a 1000 CUs |
Cenário normal |
16 CUs × 3 |
|
1000 CUs a 3000 CUs |
Cenário normal |
32 CUs × 3 |
|
>= 3000 CUs |
Cenário normal |
64 CUs × 3 |
Os valores na tabela são apenas recomendações. Em um ambiente de produção, avalie os recursos finais necessários com base nos resultados de testes de estresse específicos para o seu negócio.
Para cenários de consultas pontuais com alta concorrência, considere aumentar o número de nós frontend. Por exemplo, aumente a quantidade para cinco nós.
Edição com armazenamento e computação separados
Na edição com armazenamento e computação separados, uma instância contém apenas nós FE e nós de computação (CNs).
Estimar o número de CUs para CNs
Para obter mais informações, consulte Estimar o número de CUs para nós BE.
Estimar o armazenamento de CNs
O armazenamento dos CNs é usado principalmente para dados em cache.
-
Fórmula de estimativa
Total storage space required = Raw data size / Compression ratio * Hot data percentageOs parâmetros são os seguintes:
Tamanho bruto dos dados: tamanho de uma única linha × número total de linhas.
Taxa de compressão: o StarRocks oferece suporte a quatro algoritmos de compressão: zlib, Zstandard (ou zstd), LZ4 e Snappy, listados em ordem decrescente de taxa de compressão. Esses algoritmos proporcionam taxas de compressão de 3:1 a 5:1.
Porcentagem de dados quentes: estime a porcentagem de dados frequentemente consultados (dados quentes) com base nas necessidades do seu negócio. Por exemplo, defina esse valor como 50%. Se não tiver certeza sobre a porcentagem exata, mas quiser garantir desempenho de consulta suficiente para a instância com armazenamento e computação separados, defina esse valor como 100%. Isso equivale ao tamanho de uma réplica. Como o índice de chave primária também utiliza espaço em disco de cache, recomenda-se um buffer de 20%. Portanto, a configuração recomendada é 120%.
-
Dados de amostra
Tamanho de uma única linha (KB)
Número de registros de linhas
Taxa de compressão
Porcentagem de dados quentes
Tamanho estimado dos dados (GB)
50
100.000.000
3
120%
1.907,35
NotaOs valores na tabela são apenas recomendações. Em um ambiente de produção, avalie os recursos finais necessários com base nos resultados de testes de estresse específicos para o seu negócio.
Para obter informações sobre o tamanho e a quantidade de discos para um único CN, consulte Planejamento de disco para nós BE.
Estimar as especificações dos nós FE
Para obter mais informações, consulte Estimar as especificações dos nós FE.