Introduzione a Sqoop Intervista Domande e risposte

Sqoop è uno strumento di trasferimento dati open source, lo strumento Sqoop trasferisce i dati tra Hadoop Ecosystem e Relational Database Server (RDBMS). Importa i dati nel file system Hadoop (HDFS), da database relazionali come Oracle, MySQL, ecc., Esporta anche i dati dal file system Hadoop in RDMS.

Di seguito sono riportate le 15 importanti domande e risposte dell'intervista di Sqoop 2019:

Quindi hai finalmente trovato il lavoro dei tuoi sogni in Sqoop ma ti stai chiedendo come rompere l'intervista di Sqoop e quali potrebbero essere le probabili domande di intervista di Sqoop 2019. Ogni colloquio è diverso e anche la portata di un lavoro è diversa. Tenendo presente questo aspetto, abbiamo progettato le domande e le risposte più comuni relative all'intervista di Sqoop per aiutarti a ottenere il successo durante l'intervista.

Queste domande sono divise in due parti:

Parte 1 - Domande di intervista con Sqoop (di base)

Questa prima parte tratta le domande e le risposte di base dell'intervista di Sqoop.

1. Definire Sqoop e perché utilizziamo Sqoop?

Risposta:
Sqoop è uno strumento di trasferimento dati open source, progettato per il trasferimento di dati tra Hadoop Ecosystem e Relational Database Server (RDBMS). Sqoop viene utilizzato per importare i dati da database relazionali come Oracle, MySQL, ecc. Nel file system Hadoop (HDFS) e anche per esportare i dati dal file system Hadoop in database relazionali.

2. Quali sono le diverse caratteristiche di Sqoop?

Risposta:
Di seguito sono elencate le diverse funzionalità supportate da Sqoop:

  1. Capacità di carico
  2. Caricamento completo e caricamento incrementale
  3. Tecniche di compressione dei dati
  4. Importazione dei risultati delle query SQL
  5. Connettori dati per tutti i principali database
  6. Supporto per il caricamento diretto dei dati nei file system Hadoop
  7. Configurazioni di sicurezza come Kerberos
  8. Funzionalità di importazione o esportazione simultanee

Passiamo alle prossime domande di intervista di Sqoop.

3. Denominare i database relazionali e le fonti dell'ecosistema Hadoop supportate in Sqoop?

Risposta:
Attualmente Sqoop supporta MySQL, PostgreSQL, Oracle, MSSQL, Teradata e IBM Netezza come parte dei database di relazioni.

I servizi di destinazione dell'ecosistema Hadoop attualmente supportati sono HDFC, Hive, HBase, H Catalog e Accumulo.

Sqoop utilizza MySQL come database predefinito.

4. Come funziona Sqoop?

Risposta:
Queste sono le domande frequenti sull'intervista di Sqoop poste in un'intervista. Per eseguire il trasferimento dei dati, Sqoop utilizza i comandi di esportazione e importazione. Il programma Map Reduce verrà utilizzato internamente in Sqoop per la memorizzazione di set di dati in HDFS. I comandi verranno associati alle attività Mappa per recuperare i dati dai database relazionali; L'attività Riduci si assumerà la responsabilità di posizionare i dati recuperati nelle destinazioni (HDFS / HBase / Hive)

Sqoop utilizza inoltre vari connettori API per la connessione con diversi database. Sqoop offre inoltre la possibilità di creare connettori personalizzati per soddisfare requisiti specifici.

Vediamo i seguenti comandi di esempio per l'importazione e l'esportazione

Un comando per la connessione al database MySQL per l'importazione dei dati dalla tabella 'Log'

sqoop import –connect jdbc: mysql: // localhost / –username –password –table –m 1
sqoop import –connect jdbc: mysql: // localhost / mytestdb –username root –password admin123 –table log –m 1

Un comando per esportare dati da HDFS a Relational Database

sqoop export –connect jdbc: mysql: // localhost / sqoop_export –table export-dir / sqoop / emp_last / part-m-00000 –update-key id
sqoop export –connect jdbc: mysql: // localhost / sqoop_export –table log_table – export-dir / sqoop / data / foler1 / part-m-00000

5. Cos'è Sqoop Metastore? Spiegalo?

Risposta:
Sqoop Metastore è uno strumento disponibile in Sqoop che verrà utilizzato per configurare l'applicazione Sqoop per consentire l'hosting di un repository condiviso sotto forma di metadati. Questo metastore può essere utilizzato per eseguire i lavori e gestire un numero di utenti in base ai ruoli e alle attività degli utenti. Tutti gli utenti multipli possono eseguire più attività o operazioni contemporaneamente per raggiungere le attività in modo efficiente. Sqoop Metastore sarà implementato come rappresentazione in memoria per impostazione predefinita. Quando viene creato un lavoro in Sqoop, la definizione del lavoro viene memorizzata all'interno del Metastore e, se necessario, verrà elencata usando i lavori Sqoop.

6. Quali formati di file supporta Sqoop durante l'importazione dei dati?

Risposta:
Sqoop utilizza due formati di file per l'importazione dei dati. Sono: - Formato del file di prova delimitato e formato del file di sequenza.

Formato file di testo delimitato : il formato del testo delimitato è il formato file predefinito per l'importazione. Possiamo ancora specificare esplicitamente usando l'argomento –as- textile. Allo stesso modo, passando l'argomento verranno impostati i caratteri delimitatori tra righe e colonne.

Formato file sequenza : questo formato file possiamo dire che è un formato file binario. Questo tipo di record di file di formato è archiviato in tipi di dati specifici di record personalizzati esposti come Classi Java.

Passiamo alle prossime domande di intervista di Sqoop.

7. Possiamo controllare un numero di mapper in sqoop? Se si, come?

Risposta:
Sì, possiamo controllare il numero di mapper in Sqoop specificando il parametro "-num-mappers" nel comando sqoop. Questo parametro può controllare il numero di attività della mappa, ovvero il grado di parallelismo che verrà utilizzato da sqoop. Il numero sarà deciso in base al requisito.

Sintassi: utilizzare questi flag per controllare il numero di mapper: m, -num- mapper

Parte 2 - Domande di intervista con Sqoop (avanzate)

Diamo ora un'occhiata alle domande avanzate di intervista di Sqoop.

8. Che cos'è Sqoop-merge e spiega il suo utilizzo?

Risposta:
Sqoop merge è uno strumento che combina due diversi set di dati che mantengono l'unica versione sovrascrivendo le voci in una versione precedente di un set di dati con nuovi file per renderlo il set di dati della versione più recente. Si verifica un processo di appiattimento durante l'unione dei due diversi set di dati che preserva i dati senza alcuna perdita e con efficienza e sicurezza. Per eseguire questa operazione, il comando unisci tasto verrà utilizzato come "–merge-key"

9. Quali sono le differenze tra Sqoop, flume e distcp?

Risposta:
Sia Distcp che Sqoop vengono utilizzati per il trasferimento dei dati. Sqoop viene utilizzato per trasferire qualsiasi tipo di dati da un cluster Hadoop a un altro cluster, mentre Sqoop trasferisce i dati tra i database relazionali e l'ecosistema Hadoop come Hive, HDFS e HBase, ecc. Ma entrambi i metodi utilizzano lo stesso approccio per copiare i dati, che è pull / transfer.

Flume ha distribuito uno strumento, segue l'architettura basata su agenti, per lo streaming dei log nell'ecosistema Hadoop. Considerando che Sqoop è un'architettura basata su connettore.

Flume raccoglie e aggrega un'enorme quantità di dati di registro. Flume può raccogliere i dati da un diverso tipo di risorse; non considera lo schema o i dati strutturati / non strutturati. Flume può estrarre qualsiasi tipo di dati. Considerando che Sqoop può importare solo i dati del database relazionale, quindi lo schema è obbligatorio per l'elaborazione di sqoop. In generale, per spostare carichi di lavoro in blocco, il canale di scarico è l'opzione migliore.

Passiamo alle prossime domande di intervista di Sqoop.

10. Quali sono le origini dati supportate da Apache Sqoop?

Risposta:
Le diverse origini dati da varie applicazioni supportate da Apache Sqoop sono le seguenti:

  1. Alveare
  2. HBase
  3. Hadoop Distributed File System (HDFS)
  4. HCatalog
  5. Accumulo

11. Quali sono i comandi / funzioni più utilizzati in Sqoop?

Risposta:

Queste sono le domande avanzate sull'intervista di Sqoop poste in un'intervista. Elenco dei comandi di base utilizzati in Sqoop sono i seguenti:

Codegen -Codegen viene utilizzato per generare codice per comunicare con i record del database.

Eval -Sqoop Eval aiuta nell'esecuzione di query SQL di esempio sui database e fornisce i risultati sulla console.

Aiuto - Aiuto elenca i comandi disponibili

Import -Import importerà la tabella nell'ecosistema Hadoop

Export -Export viene utilizzato per esportare i dati HDFS in database relazionali.

Create-hive-table -Questo comando è utile per importare la definizione della tabella in Hive

Import-all-tables -Import-all-tables importa le tabelle per formare database relazionali in HDFS.

Elenco-database- Elencherà tutti i database presenti su un server.

Elenco-tabelle- Elencherà tutte le tabelle presenti in un database.

Versioni: verranno visualizzate le informazioni sulla versione.

Funzioni -Importazione / esportazione parallela, Pieno carico, Carico incrementale, Pieno carico, Confronto, Connettori per database RDBMS, Integrazione di sicurezza Kerberos, Carica dati direttamente in HDFS (Hive / HBase)

12. Spiegare le migliori pratiche durante l'importazione di tabelle da MySQL o altri database utilizzando Sqoop?

Risposta:
Durante l'importazione delle tabelle da MySQL, dovremmo accertarci di alcune cose come l'autenticazione e l'autorizzazione sul server di destinazione e sui database. Dobbiamo assicurarci di aver concesso i privilegi necessari sui database, ai quali è necessario accedere e anche della risoluzione del nome host quando ci colleghiamo ai nomi host di origine e destinazione. Se non disponiamo dell'autorizzazione necessaria, otterremo un'eccezione di errore di connessione durante la connessione al database.

13. Come si aggiornano i dati o le righe già esportati?

Risposta:
Per aggiornare le righe, che sono già state esportate nella destinazione, possiamo usare il parametro “–update-key”. In questo, viene utilizzato un elenco di colonne separato da virgole che identifica in modo univoco una riga e tutte queste colonne vengono utilizzate nella clausola WHERE della query UPDATE generata. SET parte della query si occuperà di tutte le altre colonne della tabella.

Passiamo alle prossime domande di intervista di Sqoop.

14. Come configurare e installare il driver JDBC in Apache Sqoop?

Risposta:
I driver JDB in Apache Sqoop possono essere configurati in base al provider Hadoop come Cloudera o Hortonworks dove varia leggermente nella sua configurazione in base al provider Hadoop. JDBC in Cloudera può essere configurato come creando una cartella di libreria come / var / lib /. Questo può essere fatto per qualsiasi libreria di terze parti che deve essere configurata secondo il requisito. In questo modo, qualsiasi tipo di database può essere configurato usando il suo driver JDBC. Oltre al driver JDBC, Apache Sqoop richiede un connettore per stabilire una connessione tra diversi database relazionali. I componenti principali necessari per stabilire una connessione con i database sono tramite Driver e Connettore del provider di database specifico.

15. Che cos'è la clausola split-by e quando la utilizziamo?

Risposta:
Un parametro suddiviso per tagliare i dati da importare in più attività parallele. Usando questo parametro, possiamo specificare i nomi della colonna, questi sono i nomi delle colonne in base a quale sqoop dividerà i dati da importare in più blocchi e funzioneranno in modo parallelo. È una delle tecniche per ottimizzare le prestazioni in Sqoop.

Articoli consigliati

Questa è stata una guida all'elenco delle domande e risposte sull'intervista di Sqoop in modo che il candidato possa facilmente reprimere queste domande sull'intervista di Sqoop. Puoi anche consultare i seguenti articoli per saperne di più -

  1. Hadoop vs Teradata -Che è benefico
  2. 13 Domande stupefacenti per le interviste sui test del database
  3. Le 10 domande più utili per l'intervista con HBase
  4. 10 domande di intervista PHP più impressionanti per esperti
  5. Conosci le 5 principali domande utili per l'intervista a DBA