O Que É um Cluster?
Deslize para mostrar o menu
No Databricks, Compute (ou um Cluster) é um conjunto de recursos computacionais e configurações nos quais são executadas cargas de trabalho de engenharia de dados, ciência de dados e análise de dados. Pode ser considerado como o "motor" que impulsiona seus notebooks e consultas.
Antes de clicar em "Criar", é importante entender o que acontece nos bastidores. Na seção anterior, o Cluster foi chamado de "Sala das Máquinas". Mas o que isso realmente significa em termos de hardware?
Quando se utiliza um aplicativo padrão como o Excel em um notebook, há uma limitação pelo poder daquela única máquina. Se tentar abrir um arquivo com 100 milhões de linhas, o Excel pode travar porque o "cérebro" do notebook simplesmente não é grande o suficiente. O Databricks resolve isso utilizando a Computação Distribuída.
A analogia do restaurante
Para entender como um Cluster funciona, imagine a cozinha movimentada de um restaurante:
- O Cluster é toda a equipe da cozinha;
- Os Nós são os chefs individuais;
- CPU (Unidade Central de Processamento) é a velocidade do chef. Um chef com CPU alta consegue cortar legumes muito rapidamente;
- RAM (Memória) é o espaço de bancada do chef. Se o chef tem uma bancada pequena, só consegue preparar um prato pequeno por vez. Se possui uma bancada grande (Alta RAM), pode organizar todos os ingredientes para um banquete complexo de uma só vez.
Em um Cluster Databricks, existe um Nó Driver (o Chef Principal) que organiza o trabalho, e Nós de Trabalho (os Sous Chefs) que realizam o processamento real dos dados.
Termos-chave que você verá na interface
Ao criar o seu cluster, você verá alguns termos técnicos:
- Tipo de Worker: aqui você escolhe o "tamanho" dos seus chefs. Você precisa de um chef com muito espaço de bancada (Otimizado para Memória) ou um chef extremamente rápido (Otimizado para Computação)?
- Versão do Runtime: este é o "Ambiente de Execução" do seu cluster. Ele contém a versão do Apache Spark e do Python que seu código irá utilizar. Normalmente, basta escolher a versão mais recente "LTS" (Long Term Support).
- Nós: representa o número de chefs na sua cozinha. Para tarefas pesadas de "Big Data", pode ser necessário 10 ou 20 trabalhadores. Para este curso e para seu aprendizado pessoal, frequentemente utilizaremos o modo Nó Único – que é apenas um chef realizando todo o trabalho – para manter os custos baixos;
- Auto-terminação: o Cluster permite especificar o tempo, em minutos, após o qual ele será encerrado automaticamente. Esta é uma ótima maneira de economizar custos – mesmo um Cluster ocioso é cobrado tanto pela Databricks quanto pelo seu provedor de nuvem, então é sempre recomendável adotar essa política. Na nossa analogia, isso seria como o horário de término do expediente dos chefs – em algum momento eles devem poder ir para casa!
- Tags: nossos chefs lidam com muitos materiais e receitas e precisam acompanhar o uso por prato ou por cliente; é isso que as tags fazem nos Clusters, permitindo especificar rótulos pelos quais você pode consultar posteriormente os tempos de uso e custos. Um recurso muito útil para análise de metadados.
Por que a escalabilidade é importante
A vantagem da nuvem é que você não precisa comprar esses "chefs". Você os aluga por segundo. Se você tem uma tarefa enorme que precisa ser concluída em 5 minutos, pode contratar 100 chefs (nós), finalizar o trabalho e depois "dispensá-los" imediatamente para parar de pagar. Esse é o núcleo da eficiência do Databricks.
1. Na nossa analogia da cozinha, o que representa a RAM (Memória)?
2. Qual é o papel do "Nó Driver" em um Cluster Databricks?
3. Por que um estudante escolheria um cluster "Single Node" para praticar?
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo