Domande frequenti su Dataproc

Generale

Che cos'è Dataproc?

Dataproc è un servizio rapido, facile da usare, economico e completamente gestito che ti consente di eseguire l'ecosistema Apache Spark e Apache Hadoop su Google Cloud Platform. Dataproc esegue rapidamente il provisioning di cluster grandi o piccoli, supporta molti tipi di job molto diffusi ed è integrato con altri servizi Google Cloud Platform, come Cloud Storage e Cloud Logging, per aiutarti a ridurre il TCO.

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

Dataproc è un servizio Spark/Hadoop gestito pensato per rendere Spark e Hadoop semplici, veloci e potenti. In un deployment Hadoop tradizionale, anche se basato su cloud, è necessario installare, configurare, amministrare e orchestrare il lavoro sul cluster. Dataproc invece si occupa di creazione, gestione, monitoraggio e orchestrazione dei job.

Come posso utilizzare Dataproc?

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

Come funziona Dataproc?

Dataproc è un framework gestito che viene eseguito sulla Google Cloud Platform e collega diversi strumenti diffusi per l'elaborazione dei dati, tra cui Apache Hadoop, Spark, Hive e Pig. Dataproc ha una serie di meccanismi di controllo e integrazione che coordinano il ciclo di vita, la gestione e il coordinamento dei cluster. Dataproc è integrato con il gestore di applicazioni YARN, per semplificare la gestione e l'utilizzo dei cluster.

Che tipo di job posso eseguire?

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

Quale sistema di gestione dei cluster utilizza Dataproc con Spark?

Dataproc esegue Spark on YARN.

Con quale frequenza vengono aggiornati i componenti in 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 (vedi Versioni di Dataproc supportate).

Dataproc è integrato con altri prodotti Google Cloud Platform?

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

Posso eseguire un cluster permanente?

Una volta avviati, i cluster Dataproc continuano a essere eseguiti 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 delle risorse di Google Cloud. Puoi facilmente controllare l'utilizzo della quota e richiedere un aumento della quota. Per ulteriori informazioni, consulta Quote delle risorse Dataproc.

Come posso creare o eliminare un cluster?

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

Posso applicare impostazioni personalizzate quando creo un cluster?

Dataproc supporta 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 dimensionare un cluster per le mie esigenze?

Le decisioni sulle 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 delle risorse. Poiché è possibile eseguire il deployment di Dataproc su vari tipi di macchine, puoi scegliere le risorse di cui hai bisogno al momento giusto.

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 tramite 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 dei worker 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 posso inviare job nel 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 job send di gcloud CLI. Per l'invio del job programmatico, consulta il riferimento API Dataproc.

Posso eseguire più job alla volta?

Sì, puoi eseguire più di un job alla volta su un cluster Dataproc. Cloud Dataproc utilizza un sistema di gestione delle risorse (YARN) e configurazioni specifiche dell'applicazione, ad esempio la scalabilità con Spark, per ottimizzare l'uso delle risorse in un cluster. Le prestazioni del job verranno scalate in base alle dimensioni del cluster e al numero di job attivi.

Posso annullare i job nel mio cluster?

Certamente. I job possono essere annullati tramite l'interfaccia web della console Google Cloud o la riga di comando. Dataproc utilizza l'annullamento dell'applicazione YARN per arrestare i job su richiesta.

Posso automatizzare i job nel mio cluster?

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

Sviluppo

Quali linguaggi di sviluppo sono supportati?

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

Dataproc ha un'API?

Sì, Dataproc ha un set di API RESTful che consentono di interagire in modo programmatico con cluster e job.

Posso connetterti a un cluster tramite SSH?

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

Posso accedere alle interfacce utente web di Spark/Hadoop?

Sì, le UI di Hadoop e Spark (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 inoltrerà in modo sicuro il traffico dai cluster sulla connessione SSH.

Posso installare o gestire il software nel mio cluster?

Sì, come con 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 si basano su Debian 10 Buster e Ubuntu 18.04 LTS.

Dove posso trovare informazioni sui flussi di dati Hadoop?

Puoi consultare la documentazione relativa al progetto Apache.

Come si installa il comando gcloud dataproc?

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

Accesso ai dati e disponibilità

Come posso inserire dati all'interno e all'esterno di un cluster?

Dataproc utilizza il sistema di file distribuito Hadoop (HDFS) per l'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/download su HDFS o Cloud Storage.

Posso utilizzare Cloud Storage con Dataproc?

Sì, i cluster Dataproc installano automaticamente il connettore Cloud Storage. La scelta di Cloud Storage rispetto ad HDFS tradizionale offre numerosi vantaggi, tra cui persistenza dei dati, affidabilità e 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 la pagina Richiedere assistenza). Tutti gli utenti del connettore possono utilizzare il tag google-cloud-dataproc su Stack Overflow per domande e risposte sul connettore.

Qual è la dimensione ideale 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 dimensioni dei file comprese tra 256 e 512 MB.

Quanto è affidabile Dataproc?

Poiché Dataproc si basa su tecnologie affidabili e comprovate Google Cloud Platform, tra cui Compute Engine, Cloud Storage e Monitoring, Dataproc è progettato per offrire disponibilità e affidabilità elevate. Trattandosi di un prodotto disponibile pubblicamente, puoi esaminare lo SLA di Dataproc.

Cosa succede ai miei dati quando un cluster viene arrestato?

Tutti i dati in Cloud Storage vengono conservati dopo l'arresto del cluster. Questo è uno dei motivi per scegliere Cloud Storage invece di HDFS, dal momento che i dati HDFS vengono rimossi all'arresto di un cluster, a meno che non vengano trasferiti in una posizione permanente prima dell'arresto.

Logging, monitoraggio e debug

Che tipo di logging e monitoraggio sono disponibili?

Per impostazione predefinita, i cluster Dataproc sono integrati con Monitoring e Logging. Monitoring e Logging consentono di ottenere facilmente informazioni dettagliate su integrità, prestazioni e stato dei cluster Dataproc. Sia i log di sistema (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 dell'applicazione Hadoop, come l'interfaccia web YARN.

Come possono essere monitorati i cluster?

I cluster possono essere facilmente monitorati tramite Monitoring o la sezione Cloud Dataproc della console Google Cloud. Puoi anche monitorare i cluster tramite l'accesso dalla 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 da e verso un cluster, al momento della creazione del cluster o dell'invio di un job.

Come posso controllare l'accesso al mio cluster Dataproc?

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 vengono fatturati i dati di Dataproc?

Dataproc è fatturato al secondo e si basa sulle dimensioni di un cluster e sul periodo di tempo in cui il cluster è operativo. Nel calcolo della tariffa per il componente cluster, Dataproc addebita una tariffa fissa in base al numero di CPU virtuali (vCPU) in un cluster. La 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 voce è indicata separatamente nella fattura, pertanto sai esattamente come vengono calcolati e allocati i tuoi costi.

Esiste un tempo minimo o massimo per la fatturazione?

Gli addebiti di Google Cloud sono calcolati al secondo, non all'ora. Attualmente, Compute Engine ha un incremento di fatturazione minimo di 1 minuto. Pertanto, Dataproc ha anche un incremento di fatturazione minimo di 1 minuto.

Disponibilità

Chi può creare un cluster Dataproc?

Dataproc è in disponibilità generale, pertanto tutti i clienti di Google Cloud Platform possono utilizzarlo.

In quali regioni è disponibile Dataproc?

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