Sobes.tech

Data Engineer

Dane są dwie tabele t1 i t2. Zadaniem jest wypisanie wszystkich rodzajów joinów, które znasz, oraz wynik zapytania select * from t1 <join> t2 on t1.t = t2.t dla każdego z nich. |t1.t| ------ 1 2 4 null ------ |t2.t| ------ 1 3 null null

325

Opowiedz o swoim doświadczeniu z Greenplum, DBT i Data Vault. Dlaczego przeszedłeś z modelu śnieżynki na Data Vault?

249

Czym różni się pętla po ciągu od pętli po krotce w Pythonie? Jakie typy są podstawowe i jak to wpływa na wydajność?

243

Porównaj dwa rozwiązania problemu wyszukiwania jednostek według zużycia pamięci: 1) pętla z zmiennymi, 2) split('0') + list comprehension + max()

236

Opisz metody optymalizacji zapytań SQL, które stosowałeś. Jak skróciłeś czas wykonania z 12-15 sekund?

204

Co motywuje Cię w pracy? Wypisz swoje mocne strony w zakresie hard skills.

175

Dana jest łańcuch zer i jedynek. Należy napisać funkcję func(), która zwróci maksymalną liczbę kolejnych jedynek. Na przykład: func("010111011") -> 3

173

Dane są dwie tabele t1 i t2. Zadaniem jest wypisanie wszystkich rodzajów joinów, które znasz, oraz wynik zapytania select * from t1 <join> t2 on t1.t = t2.t dla każdego z nich. |t1.t| ------ 1 2 4 null ------ |t2.t| ------ 1 3 null null cross 1 1 - null null - INNER JOIN [phone] LEFT JOIN 1 - 1 2 - NULL 4 - NULL NULL - NULL RIGHT JOIN [phone] NULL - 3 NULL - NULL NULL - NULL FULL JOIN [phone] - NULL 4 - NULL NULL - 3 null - NULL null - NULL null - NULL

168

Jakie rodzaje algorytmów JOIN istnieją w PostgreSQL i czym różni się Hash Join od Nested Loop Join? W jakich przypadkach Hash Join jest niepraktyczny?

168

Opowiedz o najtrudniejszym lub najciekawszym zadaniu, które musiałeś rozwiązać

134