Databricks: Jak znaleźć wolno działający notebook?

Problem:

Czas procesowania danych w Databricks zwiększył się dwukrotnie. Poprzednio wynosił 3 godziny teraz wynosi 6. Zanim podejmiesz proces naprawy trzeba sprawdzić który notebook spowodował aż tak duży spadek wydajności. Czy spadek wydajności rozlał się równomiernie pomiędzy wszystkie notebooki? Czy dotyczy tylko części? Możemy wykluczyć, że ktoś inny pracował na platformie w tym samym czasie i wpływał na wydajność. Cluster jest dedykowany do przetwarzań batchowych i nikt inny nie ma do niego dostępu.

Rozwiązanie:

Użyjemy Databricks rest API, żeby przeszukać wszystkie joby i znaleźć ten, który trwał najdłużej w porównaniu z poprzednim ładowaniem. Gdy znajdziemy, który to job, wtedy przeszukamy wszystkie taski i sprawdzimy czy są jacyś pojedynczy kandydaci, których wydajność zdecydowanie spadła i znajdziemy wolno działający notebook.

Read More

Databricks: Jak opublikować report w Power BI używając Pythona?

Problem:
Dostawca zewnętrzny umieszcza na Azure Storage Account raport w Power BI. Masz zadanie umieścić ten raport w serwisie Power BI. Będziesz to robił cyklicznie, więc chcesz uprościć sobie pracę. W jaki sposób to zrobisz?

Co masz dostępne?
Narzędzie, która masz dostępne to Databricks i całe dobrodziejstwo jakie z tym się wiąże.

Rozwiązanie:
Skrypt w Pythonie wykorzystujący Power BI Rest API, Key Vault i Azure Identity do automatycznego importu raportu w pbix.

Potrzebne oczywistości:
1. Storage Account – tam przechowywany będzie plik pbix.
2. Service Principal – do połączenia Databricks – Power BI. Pamiętaj o ustawieniu odpowiedniej roli.
3. Biblioteka Azure Identity – do autentykacji
4. Key Vault – do przechowywania sekretów. To nie jest „must have” ale to jest dobra praktyka.

Read More