Generale
Che cos'è Dataproc?
Dataproc è un servizio veloce, facile da usare, a basso costo e completamente gestito che ti consente di eseguire l'ecosistema Apache Spark e Apache Hadoop su Google Cloud Platform. Dataproc esegue il provisioning di cluster grandi o piccoli rapidamente, supporta molti tipi di job popolari ed è integrato con altri servizi Google Cloud Platform, come Cloud Storage e Cloud Logging, contribuendo così a ridurre il TCO.
Qual è la differenza tra Dataproc e i cluster Hadoop tradizionali?
Dataproc è un servizio Spark/Hadoop gestito progettato per rendere Spark e Hadoop facili, veloci e potenti. In un deployment Hadoop tradizionale, anche uno basato sul 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 capacità. Puoi utilizzare l'interfaccia utente basata su browser Google Cloud console per interagire con Dataproc. In alternativa, poiché 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 del cluster.
Come funziona Dataproc?
Dataproc è un framework gestito che viene eseguito sulla Google Cloud Platform e che 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 YARN Application Manager per semplificare la gestione e l'utilizzo dei cluster.
Che tipo di job posso eseguire?
Dataproc fornisce supporto end-to-end e pronto all'uso per molti dei tipi di job più popolari, tra cui Spark, Spark SQL, PySpark, MapReduce, Hive e Pig.
Quale Cluster Manager utilizza Dataproc con Spark?
Dataproc esegue Spark su YARN.
Con quale frequenza vengono aggiornati i componenti in Dataproc?
Dataproc viene aggiornato quando vengono rilasciate versioni principali dei componenti sottostanti (Hadoop, Spark, Hive, Pig). Ogni release principale di Dataproc supporta versioni specifiche di ogni componente (vedi 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 piattaforma Cloud, inclusi l'interfaccia a riga di comando gcloud e Google Cloud console.
Posso eseguire un cluster persistente?
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ù cluster contemporaneamente?
Sì, puoi eseguire più di un cluster Dataproc per progetto contemporaneamente. Per impostazione predefinita, tutti i progetti sono soggetti alle quote delle 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 posso creare o eliminare un cluster?
Puoi creare ed eliminare cluster in diversi modi. Le sezioni Dataproc in Google Cloud console 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 di 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 eseguite durante la creazione di 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 in base alle 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. Poiché Dataproc può essere implementato su una varietà di tipi di macchine, hai la flessibilità di scegliere le risorse di cui hai bisogno, quando ne hai bisogno.
Posso ridimensionare il mio cluster?
Sì, puoi ridimensionare facilmente il cluster, anche durante l'elaborazione dei job. Puoi ridimensionare il cluster tramite 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 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 CLI gcloud dataproc jobs submit. Per l'invio programmatico dei job, consulta il riferimento 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 dell'applicazione, come lo scaling con Spark, per ottimizzare l'utilizzo delle risorse su un cluster. Le prestazioni del job aumenteranno 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 o la riga di comando. Google Cloud consoleDataproc utilizza l'annullamento dell'applicazione YARN per interrompere i job su richiesta.
Posso automatizzare i job sul mio cluster?
I job possono essere automatizzati per essere eseguiti sui cluster tramite diversi meccanismi. Puoi utilizzare Google Cloud CLI 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 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 in modo programmatico con cluster e job.
Posso utilizzare SSH per accedere 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 e 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 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 software su un cluster Dataproc.
Qual è il fattore di replica predefinito?
Per motivi di prestazioni e per l'elevata affidabilità dell'archiviazione collegata ai cluster Dataproc, il fattore di replica predefinito è impostato su 2.
Quale sistema operativo (OS) 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 sullo streaming 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 standard gcloud
, inclusi i comandi gcloud dataproc
.
Accesso ai dati e disponibilità
Come faccio a importare ed esportare dati da un cluster?
Dataproc utilizza Hadoop Distributed File System (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 a HDFS tradizionale offre una serie di vantaggi, tra cui persistenza, affidabilità e prestazioni dei dati.
Posso ricevere assistenza per il connettore Cloud Storage?
Sì, se utilizzato con Dataproc, il connettore Cloud Storage
è supportato allo stesso livello di Dataproc (vedi
Richiedi 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 file di dimensioni comprese tra 256 MB e 512 MB.
Quanto è affidabile Dataproc?
Poiché Dataproc è basato su tecnologie Google Cloud Platform affidabili e collaudate, tra cui Compute Engine, Cloud Storage e Monitoring, è progettato per garantire alta disponibilità e affidabilità. In qualità di prodotto disponibile a livello generale, puoi esaminare lo 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. Monitoraggio e logging semplificano l'ottenimento di informazioni dettagliate su integrità, prestazioni e stato dei cluster Dataproc. I log di sistema e delle applicazioni (YARN, Spark e così via) 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 del cluster aggregati in un browser web. Inoltre, puoi utilizzare la riga di comando (SSH) per visualizzare manualmente i log o monitorare gli output delle applicazioni. Infine, i dettagli sono disponibili anche tramite le interfacce utente web delle applicazioni Hadoop, come l'interfaccia web YARN.
Come si possono monitorare i cluster?
I cluster possono essere monitorati facilmente tramite Monitoring o la sezione Cloud Dataproc di Google Cloud console. Puoi anche monitorare i cluster tramite l'accesso alla riga di comando (SSH) o le interfacce web delle applicazioni (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 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 viene fatturato Dataproc?
Dataproc viene fatturato al secondo e si basa sulle dimensioni di un cluster e sul periodo di tempo in cui il cluster è operativo. Nel calcolo del 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 voce è indicata separatamente nella fattura, in modo da sapere esattamente come vengono calcolati e distribuiti i costi.
Esiste un periodo minimo o massimo per la fatturazione?
I costi di Google Cloud vengono calcolati al secondo, non all'ora. 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 di Google Cloud Platform possono utilizzarlo.
In quali regioni è disponibile Dataproc?
Dataproc è disponibile in tutte le regioni e zone della piattaforma Google Cloud.