Data Engineer
Hoe kunnen gegevens uit ClickHouse worden verwijderd?
Vergelijk de ETL- en ELT-aanpakken: wat is het verschil en wanneer wordt elk van hen toegepast?
Wat zijn dode rijen in de database?
Wat was jouw architectuur in het project? DWH of iets anders?
Welke SQL-query's schrijf je: eenvoudige controles of complexe scripts voor datawarehouses?
Waarvoor zijn indexen, wat zijn de voor- en nadelen?
Er is een speciale sequentie gemaakt genaamd even_sequence, die alleen even getallen genereert. Wat moet er op de plaats van [...] worden ingevuld zodat, indien de waarde van even_column niet is opgegeven bij het invoegen, de waarde wordt gehaald uit even_sequence? create table some_table( even_column [...] ); integer computed as nextval('even_sequence') integer generated always as identity (start with 2 increment by 2) integer default nextval('even_sequence') integer unique default nextval('even_sequence') integer generated by even_sequence’
Heeft u één S3-bucket of meerdere gebruikt? Op basis waarvan?
Heeft u ervaring met het optimaliseren van Spark-taken? Kunt u een concreet voorbeeld geven?
De opslag is gebouwd volgens het Data Vault-schema — heb je het ook ontwikkeld, onderhouden? Heb je handmatig hubs, links toegevoegd?
Hoe maak je een upward extension (NULL invullen met de vorige niet-nul waarde in omgekeerde richting)?
Is de methode van het vergelijken van hash-registraties gebruikt om het verschil tussen de bron en de doel tabel te berekenen?
Analyse van gebruikersactiviteit in reclamecampagnes Het bedrijf houdt een registratie bij van gebeurtenissen gerelateerd aan reclamecampagnes. Er worden twee tabellen verstrekt: • campaigns — lijst van reclamecampagnes met hun identificaties en namen; • events — gebeurtenissen van gebruikers per campagne met informatie over het type gebeurtenis (bijvoorbeeld 'click' (klik)) en de tijd. Het is nodig om voor elke campagne een rapport te maken met de volgende indicatoren: • Totaal aantal gebeurtenissen. • Aantal unieke gebruikers die gebeurtenissen hebben uitgevoerd. • Tijd van de eerste en laatste gebeurtenis per campagne. • Rangorde van de campagne op basis van het afnemende totale aantal gebeurtenissen. Rangorde is een nummer dat aan elke rij in de resultaatset wordt toegekend op basis van de gegevensvolgorde. Als twee of meer rijen dezelfde waarde hebben, krijgen ze dezelfde rang, maar wordt de volgende rang overgeslagen. Het rapport moet alleen campagnes bevatten die gebeurtenissen hebben gehad: campagnes zonder gebeurtenissen worden niet meegenomen. De uiteindelijke rapportage moet eerst gesorteerd worden op de rangorde van de campagne in oplopende volgorde, en vervolgens op campaign_name in alfabetische volgorde. Invoerformaat • campaign_name (string) — naam van de reclamecampagne • start_date (timestamp) — startdatum en -tijd van de campagne • end_date (timestamp) — einddatum en -tijd van de campagne Tabel events: • event_id (int) — unieke identificatie van het evenement • user_id (int) — unieke identificatie van de gebruiker die het evenement heeft uitgevoerd • campaign_id (int) — unieke identificatie van de campagne • event_type (string) — type gebeurtenis, bijvoorbeeld 'click' of 'conversion' • event_time (timestamp) — datum en tijd van het evenement De gegevens bevatten geen ontbrekende of onjuiste waarden. Uitvoerformaat De query moet een tabel retourneren met de velden in deze volgorde: • campaign_name (string) — naam van de reclamecampagne • total_events (int) — totaal aantal gebeurtenissen gerelateerd aan de campagne • unique_users (int) — aantal unieke gebruikers die gebeurtenissen hebben uitgevoerd • first_event_time (timestamp) — datum en tijd van de eerste gebeurtenis van de campagne • last_event_time (timestamp) — datum en tijd van de laatste gebeurtenis van de campagne • campaign_rank (int) — rangorde van de campagne op basis van het afnemende totale aantal gebeurtenissen Sorteer de gegevens op de rangorde van de campagne in oplopende volgorde, en vervolgens op campaign_name in alfabetische volgorde.
Hoe je Jupyter of Pandas niet door geheugen ombrengt?
Wat is statistiek in de context van databasebeheersystemen en query-optimalisatie?
Hoe handelen bij skew (scheefheid) op user_id bij JOIN van transactietabellen en gebruikers? Hoe kies je de optimale verdeelsleutel?
Vertel op hoofdlijnen hoe de architectuur van Spark is opgebouwd: welke componenten zijn er en hoe werken ze samen bij het uitvoeren van een SQL-query.
Hoe weet je het daadwerkelijke uitvoeringsplan van een query in Oracle?
Welke soorten fysieke verbindingen tussen tabellen bestaan er (Hash Join, Merge Join, Nested Loop)?
We hebben een pipeline-engine nodig — een mechanisme dat het mogelijk maakt om zeer snel stroom te creëren door contracten en parameters aan te leveren. Hoe zou je dit op een hoger niveau implementeren?