Domande frequenti su Dataproc

Generale

Che cos'è Dataproc?

Dataproc è un servizio rapido, facile da usare, a basso costo e completamente gestito che ti consente di eseguire l'ecosistema Apache Spark e Apache Hadoop sulla Google Cloud Platform. Dataproc esegue rapidamente il provisioning di cluster grandi o piccoli, supporta molti tipi di job comuni ed è integrato con altri servizi Google Cloud Platform, come Cloud Storage e Cloud Logging, aiutandoti così a ridurre il TCO.

Qual è la differenza tra Dataproc e i cluster Hadoop tradizionali?

Dataproc è un servizio Spark/Hadoop gestito progettato per semplificare, velocizzare e potenziare Spark e Hadoop. In un deployment Hadoop tradizionale, anche se basato su cloud, devi installare, configurare, amministrare e orchestrare il lavoro sul cluster. Al contrario, Dataproc gestisce la creazione, la gestione, il monitoraggio e l'orchestrazione dei job per te.

Come posso utilizzare Dataproc?

Esistono diversi modi per utilizzare un cluster Dataproc, a seconda delle tue esigenze e delle tue funzionalità. Puoi utilizzare la console Google Cloud basata su browser per interagire con Dataproc. In alternativa, poiché Dataproc è integrato con Google Cloud CLI, puoi utilizzare quest'ultima. Per l'accesso programmatico ai cluster, utilizza l'API REST Dataproc. Puoi anche stabilire connessioni SSH ai nodi master o worker del cluster.

Come funziona Dataproc?

Dataproc è un framework gestito che viene eseguito sulla Google Cloud Platform e riunisce diversi strumenti popolari per l'elaborazione dei dati, tra cui Apache Hadoop, Spark, Hive e Pig. Dataproc dispone di un insieme di meccanismi di controllo e integrazione che coordinano il ciclo di vita, la gestione e il coordinamento dei cluster. Dataproc è integrato con l'Application Manager YARN per semplificare la gestione e l'utilizzo dei cluster.

Quali tipi di job posso eseguire?

Dataproc fornisce supporto immediato e end-to-end per molti dei tipi di job più diffusi, tra cui Spark, Spark SQL, PySpark, MapReduce, Hive e Pig.

Quale gestore del cluster utilizza Dataproc con Spark?

Dataproc esegue Spark on YARN.

Con quale frequenza vengono aggiornati i componenti di Dataproc?

Dataproc viene aggiornato quando si verificano release principali nei componenti sottostanti (Hadoop, Spark, Hive, Pig). Ogni release principale di Dataproc supporta versioni specifiche di ciascun componente (consulta Versioni di Dataproc supportate).

Dataproc è integrato con altri prodotti Google Cloud Platform?

Sì, Dataproc dispone di integrazioni native e automatiche con Compute Engine, Cloud Storage, Bigtable, BigQuery, Logging e Cloud Monitoring. Inoltre, Dataproc è integrato negli strumenti che interagiscono con la piattaforma Cloud, tra cui Google Cloud CLI e la console Google Cloud.

Posso eseguire un cluster persistente?

Una volta avviati, i cluster Dataproc continuano a funzionare fino all'arresto. Puoi eseguire un cluster Dataproc per tutto il tempo necessario.

Gestione dei cluster

Posso eseguire più di un cluster alla volta?

Sì, puoi eseguire più di un cluster Dataproc per progetto contemporaneamente. Per impostazione predefinita, tutti i progetti sono soggetti alle quote di risorse Google Cloud. Puoi facilmente controllare l'utilizzo della quota e richiedere un aumento della quota. Per ulteriori informazioni, consulta Quote delle risorse Dataproc.

Come faccio a creare o distruggere un cluster?

Puoi creare e distruggere i cluster in diversi modi. Le sezioni di Dataproc nella console Google Cloud semplificano la gestione dei cluster dal browser. I cluster possono essere gestiti anche tramite la riga di comando tramite la CLI gcloud. Per casi d'uso più complessi o avanzati, l'API REST Cloud Dataproc può essere utilizzata per gestire i cluster in modo programmatico.

Posso applicare impostazioni personalizzate quando creo un cluster?

Dataproc supporta le azioni di inizializzazione che vengono eseguite quando viene creato un cluster. Queste azioni di inizializzazione possono essere script o eseguibili che Dataproc eseguirà durante il provisioning del cluster per personalizzare le impostazioni, installare applicazioni o apportare altre modifiche al cluster.

Come faccio a determinare le dimensioni di un cluster in base alle mie esigenze?

Le decisioni relative alle dimensioni del cluster sono influenzate da diversi fattori, tra cui il tipo di lavoro da eseguire, i vincoli di costo, i requisiti di velocità e la quota di risorse. Poiché Dataproc può essere implementato su diversi tipi di macchine, hai la flessibilità di scegliere le risorse di cui hai bisogno, quando ti servono.

Posso ridimensionare il mio cluster?

Sì, puoi ridimensionare facilmente il cluster, anche durante l'elaborazione dei job. Puoi ridimensionare il cluster tramite la console Google Cloud o la riga di comando. Il ridimensionamento può aumentare o diminuire il numero di worker in un cluster. I worker aggiunti a un cluster avranno lo stesso tipo e le stesse dimensioni di quelli esistenti. Il ridimensionamento dei cluster è accettabile e supportato, tranne in casi speciali, come la riduzione del numero di worker a uno o la riduzione della capacità HDFS al di sotto della quantità necessaria per il completamento del job.

Gestione di job e flussi di lavoro

Come faccio a inviare job sul mio cluster?

Esistono diversi modi per inviare job su un cluster Dataproc. Il modo più semplice è utilizzare la pagina Invia un job di Dataproc nella console Google Cloud o il comando gcloud dataproc jobs submit gcloud CLI. Per l'invio di job programmatici, consulta il riferimento all'API Dataproc.

Posso eseguire più di un job alla volta?

Sì, puoi eseguire più di un job alla volta su un cluster Dataproc. Cloud Dataproc utilizza un gestore delle risorse (YARN) e configurazioni specifiche per l'applicazione, come il ridimensionamento con Spark, per ottimizzare l'utilizzo delle risorse in un cluster. Le prestazioni dei job aumenteranno in base alle dimensioni del cluster e al numero di job attivi.

Posso annullare i job sul mio cluster?

Assolutamente. I job possono essere annullati tramite l'interfaccia web della console Google Cloud o la riga di comando. Dataproc utilizza l'annullamento delle applicazioni YARN per interrompere i job su richiesta.

Posso automatizzare i job sul mio cluster?

I job possono essere automatizzati per l'esecuzione sui cluster tramite diversi meccanismi. Puoi utilizzare l'Google Cloud CLI gcloud o le API REST di Dataproc per automatizzare la gestione e il flusso di lavoro di cluster e job.

Sviluppo

Quali lingue di sviluppo sono supportate?

Puoi utilizzare i linguaggi supportati dall'ecosistema Spark/Hadoop, tra cui Java, Scala, Python e R.

Dataproc ha un'API?

Sì, Dataproc dispone di un insieme di API RESTful che ti consentono di interagire programmaticamente con cluster e job.

Posso connettermi tramite SSH a un cluster?

Sì, puoi accedere tramite SSH a ogni macchina (nodo master o worker) all'interno di un cluster. Puoi utilizzare SSH da un browser o dalla riga di comando.

Posso accedere alle UI web di Spark/Hadoop?

Sì, le UI di Hadoop e Spark (UI di Spark, Hadoop, YARN) sono accessibili all'interno di un cluster. Anziché aprire le porte per le UI, ti consigliamo di utilizzare un tunnel SSH, che inoltra in modo sicuro il traffico dai cluster tramite la connessione SSH.

Posso installare o gestire software sul mio cluster?

Sì, come per un cluster o un server Hadoop, puoi installare e gestire il software su un cluster Dataproc.

Qual è il fattore di replica predefinito?

Per motivi di prestazioni e per l'elevata affidabilità dello spazio di archiviazione collegato ai cluster Dataproc, il fattore di replica predefinito è impostato su 2.

Quale sistema operativo viene utilizzato per Dataproc?

Dataproc è basato su Debian e Ubuntu. Le immagini più recenti sono basate su Debian 10 Buster e Ubuntu 18.04 LTS.

Dove posso trovare informazioni sullo streaming di Hadoop?

Puoi consultare la documentazione del progetto Apache.

Come faccio a installare il comando gcloud dataproc?

Quando installi gcloud CLI, viene installato lo strumento a riga di comando gcloud standard, inclusi i comandi gcloud dataproc.

Accesso e disponibilità dei dati

Come faccio a trasferire i dati all'interno e all'esterno di un cluster?

Dataproc utilizza il file system distribuito Hadoop (HDFS) per lo spazio di archiviazione. Inoltre, Dataproc installa automaticamente il connettore Google Cloud Storage compatibile con HDFS, che consente l'utilizzo di Cloud Storage in parallelo con HDFS. I dati possono essere spostati all'interno e all'esterno di un cluster tramite caricamento/scaricamento su HDFS o Cloud Storage.

Posso utilizzare Cloud Storage con Dataproc?

Sì, i cluster Dataproc installano automaticamente il connettore Cloud Storage. Esistono diversi vantaggi nell'usare Cloud Storage anziché HDFS tradizionale, tra cui la persistenza dei dati, l'affidabilità e le prestazioni.

Posso ricevere assistenza per il connettore Cloud Storage?

Sì, se utilizzato con Dataproc, il connettore Cloud Storage è supportato allo stesso livello di Dataproc (consulta Ricevi assistenza). Tutti gli utenti del connettore possono utilizzare il tag google-cloud-dataproc su Stack Overflow per domande e risposte relative al connettore.

Quali sono le dimensioni ideali dei file per i set di dati su HDFS e Cloud Storage?

Per migliorare le prestazioni, archivia i dati in file di dimensioni maggiori, ad esempio tra 256 MB e 512 MB.

Quanto è affidabile Dataproc?

Poiché Dataproc è basato su tecnologie affidabili e collaudate Google Cloud Platform, tra cui Compute Engine, Cloud Storage e monitoraggio, è progettato per garantire elevata disponibilità e affidabilità. Poiché si tratta di un prodotto disponibile a livello generale, puoi consultare l'SLA di Dataproc.

Che cosa succede ai miei dati quando un cluster viene chiuso?

Tutti i dati in Cloud Storage vengono conservati dopo l'arresto del cluster. Questo è uno dei motivi per scegliere Cloud Storage anziché HDFS, poiché i dati HDFS vengono rimossi quando un cluster viene arrestato (a meno che non vengano trasferiti in una posizione permanente prima dell'arresto).

Logging, monitoraggio e debug

Quali tipi di logging e monitoraggio sono disponibili?

Per impostazione predefinita, i cluster Dataproc sono integrati con Monitoring e Logging. Il monitoraggio e il logging consentono di ottenere facilmente informazioni dettagliate sull'integrità, sulle prestazioni e sullo stato dei cluster Dataproc. Sia i log delle applicazioni (YARN, Spark e così via) sia i log di sistema vengono inoltrati a Logging.

Come faccio a visualizzare i log di Dataproc?

Puoi visualizzare i log di Dataproc in diversi modi. Puoi visitare Logging per visualizzare i log aggregati del cluster in un browser web. Inoltre, puoi utilizzare la riga di comando (SSH) per visualizzare manualmente i log o monitorare gli output dell'applicazione. Infine, i dettagli sono disponibili anche tramite le UI web delle applicazioni Hadoop, come l'interfaccia web YARN.

Come si possono monitorare i cluster?

I cluster possono essere monitorati facilmente tramite la sezione Monitoring o Cloud Dataproc della console Google Cloud. Puoi anche monitorare i tuoi cluster tramite l'accesso a riga di comando (SSH) o le interfacce web dell'applicazione (Spark, YARN e così via).

Sicurezza e accesso

Come vengono protetti i miei dati?

Google Cloud Platform utilizza un modello di sicurezza avanzato, che si applica anche a Cloud Dataproc. Dataproc fornisce meccanismi di autenticazione, autorizzazione e crittografia, come SSL, per proteggere i dati. I dati possono essere criptati dall'utente in transito verso e da un cluster, al momento della creazione del cluster o dell'invio del job.

How can I control access to my Dataproc cluster?

Google Cloud Platform offre meccanismi di autenticazione che possono essere utilizzati con Dataproc. L'accesso ai cluster e ai job Dataproc può essere concesso agli utenti a livello di progetto.

Fatturazione

Come viene fatturata Dataproc?

Dataproc viene fatturato al secondo e si basa sulle dimensioni di un cluster e sul periodo di tempo in cui il cluster è operativo. Per il calcolo della componente del cluster della tariffa, Dataproc addebita una tariffa fissa in base al numero di CPU virtuali (vCPU) in un cluster. Questa tariffa fissa è la stessa indipendentemente dal tipo di macchina o dalle dimensioni delle risorse Compute Engine utilizzate.

Mi vengono addebitati costi per altre risorse Google Cloud?

Sì, l'esecuzione di un cluster Dataproc comporta addebiti per altre risorse Google Cloud utilizzate nel cluster, come Compute Engine e Cloud Storage. Ogni articolo è indicato separatamente nella fattura, in modo da sapere esattamente come vengono calcolati e assegnati i costi.

È previsto un periodo di tempo minimo o massimo per la fatturazione?

Gli addebiti di Google Cloud vengono calcolati in base ai secondi, non alle ore. Al momento, Compute Engine ha un incremento di fatturazione minimo di 1 minuto. Pertanto, anche Dataproc ha un incremento di fatturazione minimo di 1 minuto.

Disponibilità

Chi può creare un cluster Dataproc?

Dataproc è in disponibilità generale, il che significa che tutti i clienti Google Cloud Platform possono utilizzarlo.

In quali regioni è disponibile Dataproc?

Dataproc è disponibile in tutte le regioni e le zone della piattaforma Google Cloud.