[Pro Tip] Customowe klasy w pythonie pod Azure’a

  • [Pro Tip] Customowe klasy w pythonie pod Azure’a

    Posted by Mateusz Wąsalski on 2025-01-05 at 23:29

    Hejo,

    Parę razy musiałem podłączyć się Pythonem do bloba na Azure Storage, bo wygodnie mi tak było niż klikać ręcznie i tak mnie naszło, żeby stworzyć coś replikowalnego, żebym mógł tylko zmieniać connection_string i nazwę kontenera i dostać output, który jest mi potrzebny.

    Tak o to powstało to repo 😃

    https://github.com/mwasalski/Azure

    Na razie nic szczególnego, jedna klasa do wyciągnięcia wszytkich plików, bo chciałem to zrobić dla szerszego grona. Na swoje potrzeby miałem takie cuda, jak listowanie plików, jeśli ich nazwa jest taka sama, jak nazwa folderu ale dzień modyfikacji był z dzisiaj itp. więc dosyć takie specyficzne i pewnie rzadko by się coś takiego przydawało komuś.

    Mam niestety problem ze sprzątaniem swojego kodu, więc poprosiłem ChatGPT o małe posprzątanie tego, więc brawa a propos czystego kodu niestety już nie należą się mnie 😂

    Może się komuś przyda, będą to aktualizował co jakiś czas, żeby odrdzewić Pythona, może macie jakieś pomysły, co robicie z Blob Storage ale ręcznie? A może macie już jakieś skrypty i możecie się podzielić ?

    @mczuma

    Może zrobiliśmy na tej podstawie jakiegoś live’a a propos githuba ? W sensie jak uczestniczyć w takich open source’owych projektach, fork, zgłaszanie błędów itp ? Byłoby to w sumie takie dziecko uczestników Akademii Big Data 🙂

    Mateusz Wąsalski replied 4 hours, 42 minutes ago 2 Members · 3 Replies
  • 3 Replies
  • Marek

    Organizer
    2025-01-06 at 06:15
    248 Punkty

    Wow, dobra robota i świetny pomysł Mateusz!

    Można by dodać krótką dokumentację w readme. I pomyślałem, że może:

    • na bazie tego dorobić parę mateiałów do naszej bazy wiedzy, z podlinkowanym repo? Myślę albo o Quick Answers albo tutorialu.
    • Mógłbyś machnąć też post na tej grupie z jakimś use case jak z tego korzystasz, to łatwiej się wszystkim otworzą oczy na to o co dokładnie chodzi.

    Ja kiedy korzystałem z bloba, ale w ramach ADLS gen 2, to po prostu robiłem wszystko ręcznie w przeglądarce plików na Azure :D. Albo sparkiem, kiedy operowałem na zbiorach danych.

    • Mateusz Wąsalski

      Organizer
      2025-01-08 at 00:35
      94 Punkty

      Zapiszcie sobie w kalendarzu: w weekend do tego siądę 😀

  • Mateusz Wąsalski

    Organizer
    2025-01-08 at 00:34
    94 Punkty

    Nie spodziewałem się, że będę miał z tego taki fun 😀

    Mały update:

    – dodałem komentarze, docstringi jeszcze do poprawy, na razie zostawiłem wygenerowane aut.

    – przy odpaleniu klasy pobierają się wszystkie biblioteki, więc nic nie trzeba importować przed tym + metody też odwołują się do bibliotek zaimportowanych w klasie np.

    self.os = os

    self.load_dotenv = load_dotenv

    – list_blobs listuje bloby, albo wszystkie albo można dodać prefix/suffix, żeby listowało np. bloby w folderze raw/

    blobs = storage.list_blobs(prefix="raw/")

    Zrobiłem commit z terminala a nie z dodatku w VSC, więc +1 do Git skill xD

Zaloguj się aby odpowiedzieć