Generale
Che cos'è Dataproc?
Dataproc è un servizio rapido, facile da utilizzare, a basso costo 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 di grandi o piccole dimensioni, supporta molti tipi di job popolari ed è integrato con altri servizi Google Cloud Platform, come Cloud Storage e Cloud Logging, aiutandoti 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 basato su cloud, devi installare, configurare, amministrare e orchestrare il lavoro sul cluster. Al contrario, Dataproc gestisce per te la creazione, la gestione, il monitoraggio e l'orchestrazione dei job del cluster.
Come posso utilizzare Dataproc?
Ci sono vari modi per utilizzare un cluster Dataproc a seconda delle tue esigenze e funzionalità. Puoi utilizzare la console Google Cloud basata su browser per interagire con Dataproc. Oppure, poiché Dataproc è integrato con Google Cloud CLI, puoi utilizzare Google Cloud CLI. Per l'accesso programmatico ai cluster, utilizza l'API Dataproc REST. Puoi inoltre stabilire connessioni SSH a nodi master o worker nel cluster.
Come funziona Dataproc?
Dataproc è un framework gestito che viene eseguito su Google Cloud Platform e collega diversi strumenti popolari per l'elaborazione dei dati, tra cui Apache Hadoop, Spark, Hive e Pig. Dataproc offre una serie di meccanismi di controllo e integrazione che coordinano il ciclo di vita, la gestione e il coordinamento dei cluster. Dataproc è integrato con Gestione applicazioni YARN per facilitare la gestione e l'utilizzo dei cluster.
Che tipo di job posso eseguire?
Dataproc fornisce supporto predefinito e end-to-end per molti dei tipi di job più popolari, tra cui Spark, Spark SQL, PySpark, MapReduce, Hive e Pig.
Quale gestore di 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 versione di Dataproc principale supporta versioni specifiche di ciascun componente (consulta la pagina Versioni di Dataproc supportate).
Dataproc è integrato con altri prodotti Google Cloud Platform?
Sì, Dataproc ha integrazioni native e automatiche con Compute Engine, Cloud Storage, Bigtable, BigQuery, Logging e Cloud Monitoring. Inoltre, Dataproc è integrato in strumenti che interagiscono con Cloud Platform, tra cui gcloud CLI e Google Cloud Console.
Posso eseguire un cluster permanente?
Una volta avviati, i cluster Dataproc rimangono in esecuzione 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 l'interfaccia a riga di comando gcloud. Per casi d'uso più complessi o avanzati, l'API REST di Cloud Dataproc può essere utilizzata per gestire i cluster a livello di programmazione.
Posso applicare le impostazioni personalizzate quando creo un cluster?
Dataproc supporta le azioni di inizializzazione che vengono eseguite durante la creazione di un cluster. Queste azioni di inizializzazione possono essere script o eseguibili che vengono eseguiti da Dataproc durante il provisioning del cluster per personalizzare le impostazioni, installare applicazioni o apportare altre modifiche al cluster.
Come faccio a ridimensionare un cluster per le mie esigenze?
Le decisioni relative al dimensionamento 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. Dal momento che è possibile eseguire il deployment di Dataproc su vari tipi di macchine, hai la flessibilità di scegliere le risorse giuste quando ne hai bisogno.
Posso ridimensionare il mio cluster?
Sì, puoi facilmente ridimensionare il tuo cluster, anche durante l'elaborazione del job. Puoi ridimensionare il cluster tramite la Google Cloud Console 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 capacità di HDFS al di sotto della quantità necessaria per il completamento del job.
Gestione dei job e del flusso 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 sulla console Google Cloud o il comando gcloud dataprocJob send di gcloud CLI. Per l'invio di job programmatici, consulta la documentazione di riferimento dell'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 di risorse (YARN) e configurazioni specifiche per le applicazioni, ad esempio la scalabilità con Spark, per ottimizzare l'utilizzo delle risorse su un cluster. Le prestazioni del job verranno scalate in base alle dimensioni del cluster e al numero di job attivi.
Posso annullare i job sul mio cluster?
Certamente. I job possono essere annullati tramite l'interfaccia web di Google Cloud Console o la riga di comando. Dataproc utilizza la cancellazione delle applicazioni YARN per arrestare 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'interfaccia Google Cloud 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 i linguaggi supportati dall'ecosistema Spark/Hadoop, tra cui Java, Scala, Python e R.
Dataproc ha un'API?
Sì, Dataproc offre un set di API RESTful che ti consentono di interagire in modo programmatico con cluster e job.
Posso usare SSH per connetterti a un cluster?
Sì, puoi usare SSH per connetterti 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 interfacce utente di Hadoop e Spark (UI di Spark, Hadoop, YARN) sono accessibili all'interno di un cluster. Anziché aprire le porte per le interfacce utente, è consigliabile utilizzare un tunnel SSH, che inoltra in modo sicuro il traffico dai cluster alla connessione SSH.
Posso installare o gestire software sul mio cluster?
Sì, come con un cluster o un server Hadoop, puoi installare e gestire software su un cluster Dataproc.
Qual è il fattore di replica predefinito?
A causa delle considerazioni relative alle prestazioni e all'elevata affidabilità dello spazio di archiviazione associato 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 ultime immagini si basano su Debian 10 Buster e Ubuntu 18.04 LTS.
Dove posso trovare informazioni sullo streaming Hadoop?
Puoi consultare la documentazione sul progetto Apache.
Come faccio a installare il comando gcloud dataproc?
Quando installi l'interfaccia a riga di comando gcloud, viene installato lo strumento a riga di comando gcloud
standard, inclusi i comandi gcloud dataproc
.
Accesso ai dati e disponibilità
Come posso inserire e uscire i dati da un cluster?
Dataproc utilizza l'HDFS (Hadoop Distributed File System) 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. È possibile spostare i dati all'interno e all'esterno di un cluster tramite il 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 all'HDFS tradizionale, tra cui la persistenza dei dati, l'affidabilità e le prestazioni, offre numerosi vantaggi.
Posso ricevere assistenza per Cloud Storage Connector?
Sì, se utilizzato con Dataproc, il connettore Cloud Storage è supportato allo stesso livello di Dataproc (consulta la sezione Richiedi assistenza). Tutti gli utenti del connettore
possono utilizzare il tag google-cloud-dataproc
su
Stack Overflow
per le domande e le risposte del connettore.
Quali sono le dimensioni file ideali 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 file comprese tra 256 MB e 512 MB.
Quanto è affidabile Dataproc?
Poiché è basato su tecnologie affidabili e comprovate di Google Cloud Platform, tra cui Compute Engine, Cloud Storage e Monitoring, è progettato per l'alta disponibilità e l'affidabilità. In qualità di prodotto disponibile pubblicamente, puoi consultare lo SLA di Dataproc.
Cosa succede ai miei dati quando un cluster viene arrestato?
Qualsiasi dato in Cloud Storage persiste dopo l'arresto del cluster. Questo è uno dei motivi per scegliere Cloud Storage da HDFS poiché 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. Con Monitoring e Logging puoi ottenere informazioni dettagliate sullo stato, sulle prestazioni e sullo stato dei tuoi cluster Dataproc. Sia i log delle applicazioni (YARN, Spark ecc.) sia i log di sistema vengono inoltrati a Logging.
Come posso visualizzare i log da Dataproc?
Puoi visualizzare i log da Dataproc in diversi modi. Puoi visitare la pagina Logging per visualizzare i log di cluster aggregati 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 si monitorano i cluster?
I cluster possono essere facilmente monitorati tramite Monitoring o nella sezione Cloud Dataproc di Google Cloud Console. Puoi anche monitorare i tuoi cluster tramite l'accesso da riga di comando (SSH) o dalle 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, valido anche per 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 del 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 costi di 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 calcolare il componente cluster della tariffa, Dataproc addebita una tariffa fissa in base al numero di CPU virtuali (vCPU) in un cluster. Il costo fisso è lo stesso indipendentemente dal tipo di macchina o dalle dimensioni delle risorse Compute Engine utilizzate.
Mi vengono addebitate altre risorse di 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 viene riportata separatamente nella fattura, in modo che tu sappia esattamente come vengono calcolati e assegnati i 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 minimo della fatturazione di 1 minuto. Pertanto, Dataproc ha anche un incremento minimo della fatturazione 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 aree geografiche è disponibile Dataproc?
Dataproc è disponibile in tutte le aree geografiche e le zone di Google Cloud Platform.