Perguntas frequentes sobre o Dataproc

Geral

O que é o Dataproc?

O Dataproc é um serviço rápido, fácil de usar, de baixo custo e totalmente gerenciado que permite executar o ecossistema Apache Spark e Apache Hadoop no Google Cloud Platform. O Dataproc provisiona clusters grandes ou pequenos rapidamente, oferece suporte a muitos tipos de jobs comuns e é integrado a outros serviços do Google Cloud Platform, como o Cloud Storage e o Cloud Logging, ajudando a reduzir o TCO.

Qual é a diferença entre o Dataproc e os clusters tradicionais do Hadoop?

O Dataproc é um serviço gerenciado do Spark/Hadoop que visa deixar o Spark e o Hadoop fáceis, rápidos e eficientes. Em uma implantação tradicional do Hadoop, mesmo que seja baseada na nuvem, você precisa instalar, configurar, administrar e controlar o trabalho no cluster. Por outro lado, o Dataproc lida com a criação, o gerenciamento, o monitoramento e o controle de jobs do cluster para você.

Como posso usar o Dataproc?

Há várias maneiras de usar um cluster do Dataproc dependendo das suas necessidades e capacidades. Você pode usar o Console do Google Cloud, que é baseado em navegador, para interagir com o Dataproc. Ou, como o Dataproc é integrado à Google Cloud CLI, você pode usar a Google Cloud CLI. Para acesso programático a clusters, use a API REST do Dataproc. Também é possível fazer conexões SSH para nós mestres ou workers no cluster.

Como o Dataproc funciona?

O Dataproc é uma estrutura gerenciada que é executada no Google Cloud Platform e reúne várias ferramentas populares para o processamento de dados, incluindo Apache Hadoop, Spark, Hive e Pig. O Dataproc tem um conjunto de mecanismos de controle e integração que coordenam o ciclo de vida, o gerenciamento e a coordenação de clusters. O Dataproc é integrado ao gerenciador de aplicativos YARN para facilitar o gerenciamento e o uso dos clusters.

Que tipo de jobs eu posso executar?

O Dataproc fornece suporte imediato e completo para muitos dos tipos de jobs mais populares, incluindo jobs Spark, Spark SQL, PySpark, MapReduce, Hive e Pig.

Qual é o gerenciador de clusters usado pelo Dataproc com o Spark?

O Dataproc executa o Spark no YARN.

Com que frequência os componentes do Dataproc são atualizados?

O Dataproc é atualizado quando há lançamentos importantes em componentes subjacentes (Hadoop, Spark, Hive, Pig). Cada versão principal do Dataproc é compatível com versões específicas de cada componente (consulte versões compatíveis do Dataproc).

O Dataproc é integrado a outros produtos do Google Cloud Platform?

Sim, o Dataproc tem integrações nativas e automáticas com o Compute Engine, o Cloud Storage, o Bigtable, o BigQuery, o Logging e o Cloud Monitoring. Além disso, o Dataproc é integrado às ferramentas que interagem com o Cloud Platform, incluindo a CLI gcloud e o console do Google Cloud.

Posso executar um cluster permanente?

Depois de iniciados, os clusters do Dataproc continuam em execução até serem encerrados. Você pode executar um cluster do Dataproc pelo tempo que precisar.

Gerenciamento de cluster

Posso executar mais de um cluster por vez?

Sim, você pode executar mais de um cluster do Dataproc por projeto simultaneamente. Por padrão, todos os projetos estão sujeitos às cotas de recursos do Google Cloud. É possível consultar o uso da cota e solicitar um aumento da cota com facilidade. Para saber mais, consulte Cotas de recursos do Dataproc.

Como posso criar ou eliminar um cluster?

Há várias maneiras de criar e eliminar clusters. As seções do Dataproc no Console do Google Cloud facilitam o gerenciamento de clusters pelo seu navegador. Os clusters também podem ser gerenciados por meio da linha de comando pela CLI gcloud. Para casos de uso mais complexos ou avançados, a API REST do Cloud Dataproc pode ser usada para gerenciar clusters de forma programática.

Posso aplicar configurações personalizadas ao criar um cluster?

O Dataproc permite ações de inicialização que são executadas quando um cluster é criado. Essas ações de inicialização podem ser scripts ou executáveis que o Dataproc executará ao provisionar seu cluster para personalizar configurações, instalar aplicativos ou fazer outras modificações no cluster.

Como dimensionar um cluster de acordo com as minhas necessidades?

As decisões de dimensionamento de cluster são influenciadas por vários fatores, incluindo o tipo de trabalho que será realizado, as restrições de custos, os requisitos de velocidade e a cota de recursos. Como o Dataproc pode ser implantado em vários tipos de máquina, você tem a flexibilidade de escolher os recursos necessários quando precisar.

Posso redimensionar meu cluster?

Sim, você pode redimensionar facilmente o cluster, mesmo durante o processamento do job. É possível redimensionar o cluster pelo Console do Google Cloud ou pela linha de comando. O redimensionamento aumenta ou reduz o número de trabalhos no cluster. Os trabalhos adicionados ao cluster são do mesmo tipo e tamanho que os existentes. O redimensionamento de clusters é aceitável e permitido, exceto em casos especiais, como redução do número de trabalhos a um ou da capacidade de HDFS abaixo da quantidade necessária para conclusão do job.

Gerenciamento de jobs e fluxos de trabalho

Como posso enviar jobs no meu cluster?

Há várias maneiras de enviar jobs em um cluster do Dataproc. A maneira mais fácil é usar a página Enviar um job do Dataproc no console do Google Cloud ou o comando gcloud dataproc jobs submit da CLI gcloud. Para envio de jobs programáticos, consulte a Referência da API do Dataproc.

Posso executar mais de um job por vez?

Sim, você pode executar mais de um job por vez em um cluster do Dataproc. O Cloud Dataproc utiliza um administrador de recursos (YARN) e configurações específicas do aplicativo, como escalonamento com Spark, para otimizar o uso dos recursos no cluster. O desempenho do job é escalonado de acordo com o tamanho do cluster e o número de jobs ativos.

Posso cancelar jobs em meu cluster?

Certamente. Os jobs podem ser cancelados pela interface da Web do Console do Google Cloud ou pela linha de comando. O Dataproc utiliza o cancelamento do aplicativo YARN para interromper jobs mediante solicitação.

Posso automatizar jobs em meu cluster?

É possível automatizar jobs para execução em clusters por meio de vários mecanismos. Você pode usar a gcloud CLI da Google Cloud CLI ou as APIs REST do Dataproc para automatizar o gerenciamento e o fluxo de trabalho de clusters e jobs.

Desenvolvimento

Quais linguagens de desenvolvimento são compatíveis?

É possível usar linguagens compatíveis com o ecossistema Spark e Hadoop, incluindo Java, Scala, Python e R.

O Dataproc tem uma API?

Sim, o Dataproc tem um conjunto de APIs RESTful que permitem interagir programaticamente com clusters e jobs.

Posso usar SSH em um cluster?

Sim, você pode usar SSH em cada máquina (nó mestre ou de trabalho) de um cluster. Isso pode ser feito do navegador ou da linha de comando.

Posso acessar as IUs da Web do Spark e Hadoop?

Sim, as IUs do Hadoop e do Spark (Spark, Hadoop, YARN) são acessíveis em um cluster. Em vez de abrir portas para as IUs, recomendamos usar um túnel SSH, que encaminhará o tráfego dos clusters pela conexão SSH com segurança.

Posso instalar ou gerenciar software em meu cluster?

Sim, assim como um cluster ou servidor do Hadoop, você pode instalar e gerenciar software em um cluster do Dataproc.

Qual é o fator de replicação padrão?

Devido a considerações de desempenho, bem como a alta confiabilidade do armazenamento anexado aos clusters do Dataproc, o fator de replicação padrão é definido como 2.

Que sistema operacional (SO) é usado no Dataproc?

O Dataproc é baseado no Debian e no Ubuntu. As imagens mais recentes se baseiam no Debian 10 Buster e no Ubuntu 18.04 LTS.

Onde posso aprender sobre streaming do Hadoop?

Consulte a documentação do projeto Apache.

Como instalar o comando gcloud dataproc?

Ao instalar a CLI gcloud, a ferramenta de linha de comando gcloud padrão é instalada, incluindo comandos gcloud dataproc.

Acesso e disponibilidade de dados

Como receber e enviar dados de um cluster?

O Dataproc usa o Hadoop Distributed File System (HDFS) para o armazenamento. Além disso, o Dataproc instala automaticamente o conector do Google Cloud Storage compatível com o HDFS, o que permite o uso do Cloud Storage em paralelo com o HDFS. Os dados podem ser movidos para dentro e para fora de um cluster por meio de upload/download para o HDFS ou o Cloud Storage.

Posso usar o Cloud Storage com o Dataproc?

Sim, os clusters do Dataproc instalam automaticamente o conector do Cloud Storage. Há vários benefícios ao escolher o Cloud Storage em vez do HDFS tradicional, inclusive persistência de dados, confiabilidade e desempenho.

Posso receber suporte para o conector do Cloud Storage?

Sim, quando usado com o Dataproc, o suporte ao conector do Cloud Storage é do mesmo nível que o Dataproc (consulte Como receber suporte). Todos os usuários do conector podem usar a tag google-cloud-dataproc no Stack Overflow para perguntas e respostas do conector.

Qual é o tamanho ideal de arquivo para conjuntos de dados no HDFS e no Cloud Storage?

Para melhorar o desempenho, armazene dados em arquivos maiores, por exemplo, de 256 MB a 512 MB.

Qual é a confiabilidade do Dataproc?

Como o Dataproc é criado com base em tecnologias confiáveis e comprovadas do Google Cloud Platform, incluindo Compute Engine, Cloud Storage e Monitoring, ele foi projetado para alta disponibilidade e confiabilidade. Por se tratar de um produto com disponibilidade geral, é possível consultar o SLA do Dataproc.

O que acontece com meus dados quando um cluster é encerrado?

Todos os dados no Google Cloud Storage serão mantidos depois que o cluster for encerrado. Esse é um dos motivos para escolher o Cloud Storage em relação a HDFS, porque os dados HDFS são removidos quando um cluster é encerrado, a menos que sejam transferidos para um local persistente antes do encerramento.

Como gerar registros, monitorar e depurar

Que tipo de geração de registros e monitoramento está disponível?

Por padrão, os clusters do Dataproc são integrados ao Monitoring e ao Logging. O Monitoring e o Logging facilitam a obtenção de informações detalhadas sobre a integridade, o desempenho e o status dos clusters do Dataproc. Os registros de aplicativos (YARN, Spark etc.) e de sistema são encaminhados para o Logging.

Como posso visualizar registros do Dataproc?

Você pode ver os registros do Dataproc de várias maneiras. Visite o Logging para ver os registros agregados do cluster em um navegador da Web. Além disso, use a linha de comando (SSH) para ver os registros manualmente ou monitorar as saídas do aplicativo. Por fim, os detalhes também estão disponíveis por meio das IUs da Web do aplicativo Hadoop, por exemplo, YARN.

Como é possível monitorar os clusters?

Os clusters podem ser facilmente monitorados por meio do Monitoring ou da seção Cloud Dataproc do console do Google Cloud. Também é possível monitorá-los por acesso de linha de comando (SSH) ou pelas interfaces da Web do aplicativo (Spark, YARN etc.).

Segurança e acesso

Como os meus dados são protegidos?

O Google Cloud Platform faz uso de um modelo de segurança robusto, que também é aplicado ao Cloud Dataproc. O Dataproc fornece mecanismos de autenticação, autorização e criptografia, como SSL, para proteger os dados. Também é possível criptografar os dados em trânsito de e para o cluster, durante a criação do cluster ou o envio do job.

Como posso controlar o acesso ao meu cluster do Dataproc?

O Google Cloud Platform oferece mecanismos de autenticação, que podem ser usados com o Dataproc. O acesso a clusters e jobs do Dataproc pode ser concedido aos usuários no nível do projeto.

Cobrança

Como o Dataproc é cobrado?

O Dataproc é cobrado por segundo e é baseado no tamanho de um cluster e no período de tempo em que o cluster está operacional. Na computação do componente de cluster da taxa, o Dataproc cobra uma taxa fixa com base no número de CPUs virtuais (vCPUs) em um cluster. Essa tarifa fixa é a mesma, independentemente do tipo de máquina ou do tamanho dos recursos usados do Google Compute Engine.

Sou cobrado por outros recursos do Google Cloud?

Sim, a execução de um cluster do Dataproc gera custos para outros recursos do Google Cloud usados no cluster, como o Compute Engine e o Cloud Storage. Cada item é identificado na sua fatura de modo separado, para que você saiba exatamente como os custos são calculados e alocados.

Há um tempo mínimo ou máximo para o faturamento?

As cobranças do Google Cloud são calculadas por segundo, e não por hora. No momento, o Compute Engine tem um incremento mínimo de um minuto para o faturamento. Portanto, o Dataproc também tem um incremento de faturamento mínimo de um minuto.

Disponibilidade

Quem pode criar um cluster do Dataproc?

O Dataproc tem disponibilidade geral, o que significa que todos os clientes do Google Cloud Platform podem usá-lo.

Em quais regiões o Dataproc está disponível?

O Dataproc está disponível em todas as regiões e zonas da plataforma do Google Cloud.