Data Engineer
Come aggiungere una media mobile della somma degli ordini del giorno corrente e dei due giorni precedenti per utente?
Devi ripristinare rapidamente più file alla versione dell'ultimo commit senza influenzare le altre modifiche. Come procedere? git reset --hard HEAD Elimina e ricrea i file manualmente git fetch e git merge git revert HEAD git checkout HEAD^ <file1> <file2>
Hai dovuto lavorare con Oracle Data Integrator (ODI)?
Qual è stato l'ultimo compito in Python che hai risolto in produzione?
Quali altri formati di file, oltre a Parquet, funzionano bene con Hadoop e Hive?
Cos'è la variabile var, di che tipo è?
Hai usato Bridge e tabelle PIT in Data Vault? Fornisci un esempio e spiega lo scopo.
L'archiviazione grande era — quanto era difficile mantenerla manualmente in volumi e oggetti?
Cos'è una Vista Materializzata e come si differenzia da una Vista normale?
Cosa non ti piace attualmente del tuo lavoro?
Raccontaci la tua esperienza con Airflow (l'orchestratore). Cosa hai usato?
Hai lavorato con token JWT? Di quali blocchi è composto?
Cosa bisogna fare se si vuole cambiare il ramo a cui punta un submodule? - I submodule non supportano il cambio di ramo - Eliminare il submodule e aggiungerlo di nuovo con il ramo desiderato - Cambiare il ramo nel submodule e fare un commit nel repository principale - Eseguire git checkout sul ramo desiderato nel submodule e registrare le modifiche nel repository principale - Eseguire git submodule update --branch specificando il nuova ramo
Perché si separano le viste (VIEW) e le tabelle? A cosa servono le viste?
Hai caricato dati da Spark su S3 in formato Parquet, e poi da Parquet a Greenplum — come avviene il processo di caricamento?
Parlami di partizionamento. Quali operazioni interessanti hai dovuto fare?
Come affronti di solito la costruzione dei processi ETL e ELT? Qual è la differenza tra questi processi?
Rapporto per l'azienda logistica Sei un analista di un'azienda logistica che tiene traccia delle operazioni nei magazzini. Devi preparare un rapporto sull'efficienza di ogni magazzino. Per ogni magazzino, calcola: • il numero totale di operazioni (count_operations); • il numero totale di prodotti elaborati nel magazzino (sum_quantity); • il tempo medio di elaborazione di un'operazione (avg_processing_time), considerando solo le operazioni con tempo specificato (non NULL), arrotondato al numero intero più vicino; • il massimo e minimo numero di prodotti elaborati in una singola operazione (max_quantity, min_quantity); • il numero di operazioni di ogni tipo («fornitura», «spedizione», «trasferimento») in colonne separate: supply_operations, shipment_operations, transfer_operations. Filtra i magazzini con un numero totale di operazioni superiore a 2 e un tempo medio di elaborazione non superiore a 60 minuti. Ordina il risultato per ID magazzino in ordine crescente. Formato di input Tabella operations: • operation_id (int) — identificatore unico dell'operazione • warehouse_id (int) — identificatore del magazzino • operation_type (text) — tipo di operazione: «fornitura», «spedizione», «trasferimento»
Da dove inizieresti l'implementazione del progetto?
Sei stato l'unico a rispondere di loro — hai fatto tutto tu stesso?