Introducere la întrebările și răspunsurile la interviu Sqoop

Sqoop este un instrument de transfer de date open-source, instrumentul Sqoop transferă datele între ecosistemul Hadoop și serverele de baze de date relaționale (RDBMS). Importă datele în sistemul de fișiere Hadoop (HDFS), din baze de date relaționale, cum ar fi Oracle, MySQL, etc, de asemenea, exportă date din sistemul de fișiere Hadoop în RDMS.

Mai jos sunt cele 15 importante întrebări și răspunsuri la interviu Sqoop din 2019:

Așa că, în sfârșit, ți-ai găsit jobul de vis în Sqoop, dar te întrebi cum să crape interviul cu Sqoop și care ar putea fi probabil întrebările pentru interviu Sqoop din 2019. Fiecare interviu este diferit și sfera unui loc de muncă este diferită. Reținând acest lucru, am conceput cele mai comune întrebări și răspunsuri la interviu Sqoop pentru a vă ajuta să obțineți succes în interviu.

Aceste întrebări sunt împărțite în două părți:

Partea 1 - Întrebări pentru interviu Sqoop (de bază)

Această primă parte se referă la întrebări și răspunsuri la interviu de bază Sqoop.

1. Definiți Sqoop și de ce folosim Sqoop?

Răspuns:
Sqoop este un instrument de transfer de date open-source, care este proiectat pentru transferul de date între ecosistemul Hadoop și serverele de baze de date relaționale (RDBMS). Sqoop este utilizat pentru importul datelor din bazele de date relaționale, cum ar fi Oracle, MySQL, etc, în sistemul de fișiere Hadoop (HDFS), precum și pentru exportul de date din sistemul de fișiere Hadoop în baze de date relaționale.

2. Care sunt diferitele caracteristici ale Sqoop?

Răspuns:
Mai jos sunt diferite caracteristici acceptate de Sqoop -

  1. Capacitate de încărcare
  2. Încărcare completă și încărcare incrementală
  3. Tehnici de compresiune a datelor
  4. Importarea rezultatelor interogărilor SQL
  5. Conectori de date pentru toate bazele de date majore
  6. Suport de încărcare directă a datelor în sistemele de fișiere Hadoop
  7. Configurații de securitate precum Kerberos
  8. Funcționalități simultane de import sau export

Haideți să trecem la următoarele întrebări la interviu Sqoop.

3. Numește bazele de date relaționale și sursele ecosistemului Hadoop acceptate în Sqoop?

Răspuns:
Sqoop acceptă în prezent MySQL, PostgreSQL, Oracle, MSSQL, Teradata și Netezza IBM ca parte a bazelor de date relaționale.

Serviciile de destinație ale ecosistemului Hadoop acceptate în prezent sunt HDFC, Hive, HBase, H Catalog și Accumulo.

Sqoop folosește MySQL ca bază de date implicită.

4. Cum funcționează Sqoop?

Răspuns:
Aceasta este întrebarea comună a interviului Sqoop adresată într-un interviu. Pentru a efectua transferul de date, Sqoop utilizează comenzi de export și import. Programul Map Reduce va fi utilizat în Sqoop intern pentru stocarea setului de date pe HDFS. Comenzile vor fi asociate cu sarcinile Map pentru a prelua date din bazele de date relaționale; Reducerea sarcinii va prelua responsabilitatea plasării datelor preluate în destinații (HDFS / HBase / Hive)

Sqoop folosește, de asemenea, diverși conectori API pentru conectarea cu mai multe baze de date. Sqoop oferă și capacitatea de a crea conectori personalizați pentru a îndeplini cerințele specifice.

Haideți să vedem comenzile de exemplu de mai jos pentru import și export

O comandă pentru conectarea la baza de date MySQL pentru importul datelor din tabelul „Jurnal”

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

O comandă pentru exportul de date de la HDFS în baza de date relațională

sqoop export –connect jdbc: mysql: // localhost / sqoop_export –table export-dir / sqoop / emp_last / part-m-00000 –date-cheie de actualizare
sqoop export –connect jdbc: mysql: // localhost / sqoop_export –table log_table – export-dir / sqoop / data / foler1 / part-m-00000

5. Ce este Sqoop Metastore? Expică?

Răspuns:
Sqoop Metastore este un instrument disponibil în Sqoop care va fi utilizat pentru a configura aplicația Sqoop pentru a permite găzduirea unui depozit partajat sub formă de metadate. Acest Metastore poate fi utilizat pentru a executa lucrările și pentru a gestiona un număr de utilizatori pe baza rolurilor și activităților utilizatorului. Toți utilizatorii multipli pot efectua simultan mai multe sarcini sau operații pentru a realiza sarcinile în mod eficient. Sqoop Metastore va fi implementat ca o reprezentare în memorie în mod implicit. Când o lucrare este creată în Sqoop, definiția jobului este stocată în Metastore și va fi listată folosind joburi Sqoop, dacă este necesar.

6. Ce formate de fișiere acceptă Sqoop în timpul importării datelor?

Răspuns:
Sqoop utilizează două formate de fișiere pentru importul de date. Ele sunt: ​​- Format delimitat de fișier de test și format de fișier de secvență.

Format Delimitat Text File : Delimited Text Format este formatul implicit al fișierului pentru import. Încă putem specifica în mod explicit folosirea argumentului –as- textil. De asemenea, trecerea argumentului va seta caracterele delimitare între rânduri și coloane.

Format de fișier de secvență : Acest format de fișier putem spune că este un format de fișier binar. Acest tip de fișiere de format format este stocat în tipuri de date specifice înregistrărilor personalizate care sunt expuse ca clase Java.

Haideți să trecem la următoarele întrebări la interviu Sqoop.

7. Putem controla un număr de mappers în sqoop? Dacă da, cum?

Răspuns:
Da, putem controla numărul de mapatori din Sqoop specificând parametrul „-num-mappers” din comanda sqoop. Acest parametru poate controla numărul de sarcini ale hărții, adică nu este decât gradul de paralelism care va fi folosit de sqoop. Numărul va fi decis pe baza cerinței.

Sintaxă: Utilizați aceste steaguri pentru a controla numărul de mapatori: m, -num- mappers

Partea 2 - Întrebări pentru interviu Sqoop (avansat)

Haideți să aruncăm o privire asupra întrebărilor avansate de interviu Sqoop.

8. Ce este Sqoop-merge și explicați utilizarea acesteia?

Răspuns:
Sqoop merge este un instrument care combină două seturi de date diferite care mențin singura versiune prin suprascrierea intrărilor dintr-o versiune mai veche a unui set de date cu fișiere noi pentru a-l face cea mai recentă versiune de date. Există un proces de aplatizare în timp ce fuzionează cele două seturi de date diferite care păstrează datele fără pierderi și cu eficiență și siguranță. Pentru a efectua această operație, se va folosi comanda de cheie de îmbinare ca „–merge-key”

9. Care sunt diferențele dintre Sqoop, flume și distcp?

Răspuns:
Atât Distcp cât și Sqoop sunt utilizate pentru transferul datelor. Sqoop este utilizat pentru a transfera orice tip de date dintr-un cluster Hadoop într-un alt cluster, în timp ce Sqoop transferă date între bazele de date relaționale și ecosistemul Hadoop, cum ar fi Hive, HDFS și HBase, etc. Dar ambele metode folosesc aceeași abordare pentru a copia datele, care este pull / transfer.

Flume a distribuit un instrument, urmează arhitectura bazată pe agenți, pentru a transmite jurnalele în ecosistemul Hadoop. Întrucât Sqoop este o arhitectură bazată pe conector.

Flume colectează și agregă o cantitate imensă de date de jurnal. Flume poate colecta datele dintr-un tip diferit de resurse; nu ia în considerare schema sau datele structurate / nestructurate. Flume poate trage orice tip de date. Întrucât Sqoop poate importa doar baza de date relațională, astfel încât schema este obligatorie pentru sqoop pentru a fi procesată. În general, pentru deplasarea volumelor de muncă în vrac, flume este cea mai bună opțiune.

Haideți să trecem la următoarele întrebări la interviu Sqoop.

10. Care sunt sursele de date suportate de Apache Sqoop?

Răspuns:
Sursele de date diferite din diferite aplicații acceptate de Apache Sqoop sunt următoarele:

  1. Stup
  2. HBase
  3. Sistemul de fișiere distribuit Hadoop (HDFS)
  4. HCatalog
  5. Accumulo

11. Care sunt cele mai utilizate comenzi / funcții în Sqoop?

Răspuns:

Aceasta este întrebările avansate pentru interviu Sqoop adresate într-un interviu. Lista comenzilor de bază utilizate în Sqoop sunt următoarele:

Codegen -Codegen este utilizat pentru a genera cod pentru a comunica cu înregistrările bazei de date.

Eval -Sqoop Eval ajută la rularea eșantioanelor de interogare SQL împotriva bazelor de date și oferă rezultatele pe consolă.

Ajutor -Ajutați lista comenzilor disponibile

Import -Import va importa tabelul în ecosistemul Hadoop

Export -Export este utilizat pentru a exporta date HDFS în baze de date relaționale.

Create-hive-table- Această comandă este utilă pentru importarea definiției tabelelor în Hive

Import-all-tables -Import-all-tables va importa tabelele pentru a forma baze de date relaționale în HDFS.

List-baze de date- Va enumera toate bazele de date prezente pe un server.

Lista tabelelor - Va enumera toate tabelele prezente într-o bază de date.

Versiuni- Va afișa informațiile despre versiune.

Funcții - Import / export paralel, încărcare completă, încărcare incrementală, încărcare completă, comparație, conectori pentru baze de date RDBMS, integrare de securitate Kerberos, încărcare de date direct în HDFS (stup / HBase)

12. Explicați cele mai bune practici în timp ce importați tabele din MySQL sau din alte baze de date folosind Sqoop?

Răspuns:
În timp ce importăm tabelele de la MySQL, ar trebui să ne asigurăm de câteva lucruri, cum ar fi autentificarea și autorizarea către serverul țintă și bazele de date. Trebuie să ne asigurăm că am acordat privilegiile necesare bazelor de date, care trebuie accesate și, de asemenea, să ne asigurăm de rezoluția numelui de gazdă atunci când ne conectăm la numele de host sursă și destinație. Dacă nu avem permisiunea necesară, vom primi o excepție de eșec în conexiune în timpul conectării la baza de date.

13. Cum actualizați datele sau rândurile deja exportate?

Răspuns:
Pentru a actualiza rândurile, care sunt deja exportate destinația, putem utiliza parametrul „-update-key”. În aceasta, se folosește o listă de coloane separată de virgulă, care identifică în mod unic un rând și toate aceste coloane sunt utilizate în clauza WHERE a interogării UPDATE generate. SET parte din interogare va avea grijă de toate celelalte coloane de tabel.

Haideți să trecem la următoarele întrebări la interviu Sqoop.

14. Cum se configurează și se instalează driverul JDBC în Apache Sqoop?

Răspuns:
Driverele JDB din Apache Sqoop pot fi configurate pe baza furnizorului Hadoop, cum ar fi Cloudera sau Hortonworks, unde variază ușor în configurația sa bazată pe furnizorul Hadoop. JDBC în Cloudera poate fi configurat ca prin crearea unui folder de bibliotecă ca / var / lib /. Acest lucru se poate face pentru orice bibliotecă terță parte necesară pentru a fi configurată conform cerinței. În acest fel, orice tip de bază de date poate fi configurat folosind driverul JDBC. În afară de driverul JDBC, Apache Sqoop necesită un conector pentru a stabili o conexiune între diferite baze de date relaționale. Principalele componente necesare pentru a stabili o conexiune cu bazele de date sunt prin Driver și Conector al furnizorului de baze de date.

15. Care este clauza de divizare și când o folosim?

Răspuns:
Un parametru împărțit este pentru tranșarea datelor care trebuie importate în mai multe sarcini paralele. Folosind acest parametru, putem specifica numele coloanei, acestea sunt numele coloanelor pe baza cărora sqoop va împărți datele care vor fi importate în mai multe bucăți și vor fi difuzate în mod paralel. Este una dintre tehnicile de reglare a performanței în Sqoop.

Articole recomandate

Acesta a fost un ghid la Lista întrebărilor și răspunsurilor la interviu Sqoop, astfel încât candidatul să poată împărți cu ușurință aceste întrebări de interviu Sqoop. De asemenea, puteți consulta următoarele articole pentru a afla mai multe -

  1. Hadoop vs Teradata - care este benefic
  2. 13 întrebări uimitoare de testare a bazelor de date
  3. Top 10 Cele mai utile întrebări pentru interviu HBase
  4. 10 Cele mai grozave întrebări de interviu PHP pentru experienți
  5. Cunoașteți cele mai bune 5 întrebări utile pentru interviu DBA