Ostatnie Patoszkolenie w tym roku👇
➡️ 04.06.2024 Architektura 101
W dzisiejszym odcinku rozbieramy na części pierwsze nowy opensource’owy projekt od Microsoftu - Radius. Łukasz bierze go na warsztat, więc będzie się działo. Następnie zerkamy z niedowierzaniem na zakupy AWS - tak, zapłacili bilion za MS365. Czyżby nowy feature w ich infrastrukturze, czy po prostu chmura pełna ironii? Kończymy dyskusją o Terraform, gdzie Łukasz rozprawia się z klątwą, a Szymon broni, ale czy skutecznie? Zapnijcie pasy, startujemy!
Słuchasz Patoarchitektów dzięki Protopii. Sprawdź, jak Patoarchitekci i Protopia mogą Ci pomóc ➡️ protopia.tech
Linki i ciekawe znaleziska:
Szymon Warda: Cześć, słuchajcie Patoarchitektów. Prowadzą Szymon Warda: Łukasz Kałużny: i Łukasz Kałużny. Wszystkie linki do tego odcinka znajdziecie na patoarchitekci.io lub klasycznie gdzieś tu na dole
Szymon Warda: …albo na górze. Oczywiście stały element, czyli Pato to the moon, przekażcie cioci, babci, koledze, chyba koledze najlepiej, szefowi itd itd bo robimy zasięgi czy jakkolwiek to nazwać. Dobrze Łukaszu, to z czym lecimy dzisiaj?
Łukasz Kałużny: Dobra, ja dzisiaj będę darł tylko łacha. Jestem nadworną lożą szyderców. No to lecimy. Microsoft wydał opensource o nazwie Radius. Po pierwsze, jak zwykle mają problemy z nazwami, bo Radius to nazwa takiego starego protokołu, który do dzisiaj jest używany w sieciach mało większości znany, ale będzie ładnie kolidować. Mają do tego szczęście. I co oni wymyślili? Że Cloud Native Application to nie tylko Kubernetes. Jest to więcej. Tak opisali ten projekt. A całość, założenie jest takie, że mamy móc deployować wszystko i wszędzie. Z punktu widzenia aplikacji
Szymon Warda: To ja jeszcze uzupełniam, bo Microsoft wydał Microsoft Azure Inkubations. Ci sami od Kedy i Dapra, czyli poczytny, powiedzmy..
Łukasz Kałużny: …Zestaw Team Microsoft… Raczej Keda nie jest stąd, de facto. A to jest team Marka Russinovitza.
Szymon Warda: Więc stoją za tym konkretne nazwiska powiedzmy sobie. I ja mam z tym problem de facto, bo ok, zgodzę się.. To jest w ogóle kolejne podejście Microsoftu do tego, żeby idea jest taka, że na lokalnym developmencie sobie odpalamy np. Mongo, potem na devie mamy Cosmosa, w wersji np. niższej, potem na przykład na produkcji mamy w premium wersji. Jest taka możliwość.
Szymon Warda: Więc ideowo to nie jest głupie, ale faktycznie jak się popatrzy na zawartość to tak trochę kuleje. Tam jest dużo ogólników, bardzo mało konkretów.
Łukasz Kałużny: Ja już zacząłem to trochę rozborowywać. Po pierwsze czemu ja mówię, że z tego szydzę? Szymon słyszałeś o czymś takim jak Open Application Model?
Szymon Warda: Było, pamiętam.
Łukasz Kałużny: Nie żyje, de facto. Jeżeli popatrzymy dalej, DAPR.
Szymon Warda: DAPR generalnie robi to samo tak naprawdę.
Łukasz Kałużny: Tylko zobacz, że nie wyszedł, tylko że jest. On jest ściśle z aplikacją miał deployment aplikacji, ale DAPR już dalej nie pójdzie. Jest już po swoim piku życia.
Szymon Warda: Wydaje mi się, że po piku jest, ale znalazł swoją niszę i tam jest wykorzystywany.
Łukasz Kałużny: Ale praktycznie w sensie nie jest to szeroki. Jakbyś miał kogoś teraz powiedzieć, że szukam kogoś kto będzie szukał ludzi z doświadczeniem i skillami z DAPRa to będzie porażka.
Szymon Warda: Zgodzę się, ale tak samo na przykład Orleans. To będą takie projekty, które będą cieszyły się wąskim gronie zainteresowaniem. To miały sens i tyle.
Łukasz Kałużny: Orleans jeszcze się sprawdził w paru miejscach tak mocno.
Szymon Warda: Sprawdził się, jak najbardziej, szczególnie w ogóle w kręgach funkcyjnych. Tak naprawdę to bardzo lubię
Łukasz Kałużny: Tak, tak, w gamingu w Xboksie, że tak powiem, wytarte w boju na bazie chyba hello, czy któryś z tych dobra? I to była jedna szydera, druga szydera. Tam sam podział, pomysł wysoko poziomowy ok, nawet jest dobry. Wykonanie fatalne. Jak zobaczyłem pod spodem w czym pisze się opis to myślałem, że padnę.
Szymon Warda: A ja na to nie zwróciłem uwagi w czym pisze opis właściwie
Łukasz Kałużny: Aktualnie w Bicepie
Szymon Warda: Właśnie, bo chwalili się, że wspiera Terraforma, wspiera Bicepa w ogóle integruje się z innymi.
Łukasz Kałużny: Patrząc de facto jak sobie popatrzymy cały autoring gdzieś to jest z wykorzystaniem aktualnie opis Bicepa.
Szymon Warda: Ale lubisz Bicepa? To co?
Łukasz Kałużny: To że jest to Bicep? Mi pal licho, mi to nie przeszkadza. Tylko że jeżeli popatrzymy szeroko to to powinien być niestety HCL albo YAML.
Szymon Warda: A ja tu będę polemizował mimo że… Bo YAML jest fajny. Zrobisz złą spację i się wszystko rypie
Łukasz Kałużny: Albo HCL
Szymon Warda: HCL to jeszcze ok. Tu bym się zgodził. Akurat składnię HCL-a lubię faktycznie,
Łukasz Kałużny: Więc wiesz. To jest tam czy pójdziesz HCL-a czy.. Bicepowa składnia też nie jest zła jak porównuję ją do HCL-owej.
Szymon Warda: Są podobne do siebie. HCL czy składnia Terraforma.
Łukasz Kałużny: Tak, dokładnie. HCL Teraform, Bicepowa na Azure Deploymentu. Tylko ludziom już ten Multi Cloud od razu to będzie. Jak zobaczą Bicep to będzie Microsoft Cloud.
Szymon Warda: To się też zgadza. Czyli rozwiązanie problemu tego, że faktycznie lokalny development do chmury przenosimy na trochę innych rzeczach to to ma sens jak najbardziej. Całe podejście jak to z Microsoftu niektóre wypalają, niektóre nie wypalają. Trzeba dokładnie monitorować co tam się właściwie dzieje i w którym to kierunku będzie szło tak naprawdę.
Łukasz Kałużny: No wiesz, dobrze zrobiony kawałek Docker Compose, ewentualnie dobrze zrobione bazy danych z wykorzystaniem test containers czy innych takich rzeczy może się lepiej sprawdzić w lokalnym developmencie.
Szymon Warda: Tak czyli problem jest taki, że nie adresuje to w pełni właśnie jak używać takich narzędzi, które są tylko pasowe, które nie mają emulatorów lokalnych bo to jest problematyczne przy lokalnym developmencie.
Łukasz Kałużny: Tak, jest to mega problematyczne. Tylko radius tego. Nie nie do końca to tego tak nie i nie adresuje. W szczególności, że jak dla AWS-a to masz local stack zawsze zapominam tej nazwy ale AWS miał na przykład local… Tam jest taki produkcyjny częściowo komercyjny produkt lokal stack który pozwala więc zupełnie co innego.
Szymon Warda: Dobra, to ja mam dwa niusy bazodanowe. Pierwsze to jest fork MySQLa a z dodaniem Vector Searcha, czyli już wszyscy będą mieli wektory. Tak, to zaciekawiło mnie, że ktoś w ogóle się dotyka MySQLs tak bardzo mocno tak naprawdę.
Łukasz Kałużny: Wiesz co, patrząc się, nadal jeszcze żyje, szeroko.
Szymon Warda: Tak, żyje, ale względem postgresql, to na pewno. Bo żeby nie było Oracle dodał Vector Searcha. Ale to jeszcze nie jest Community Edition, więc generalnie tak to działa. Drugi temat to jest to, że znowu postgresql, bo odcinek bez postgresql to wiadomo nie odcinek. Dodanie funkcji rastowych do postgresql po to też była możliwość w C była możliwość na tym języku postgresowym, a teraz będą funkcje w pełni rastowe, de facto.
Łukasz Kałużny: Ciekawe.
Szymon Warda: I to nie jest nowinka, chociaż SQL Server miał funkcje w dotnecie od 10 lat, ma jakoś więcej, może nawet wbudowane, ale to ma sens właśnie.
Łukasz Kałużny: Oracle były Javowe, więc każdy tam miał swoje,
Szymon Warda: Każdy swoje, no tak. No ale o co chodzi? Bo też do poprzedniego odcinka był link o tym właśnie, że wyszło wsparcie dla sterowników na Windowsie pisanych w rascie. Wida więc, że rast się powoli, powoli, ale mimo wszystko się rozpycha i całkiem nieźle mu idzie w tej całej układance. A Ty co masz?
Łukasz Kałużny: Wiesz co, jedna rzecz. Co do Twoich wektorów to ja to zostawię do short and sweetów w newsletterze, do tego odcinka
Szymon Warda: Dobrze.
Łukasz Kałużny: Jak zrobić wektory w SQL Database SQL Serverze bez supportu wektorów?
Szymon Warda: Można to wiadomo, że to można zrobić. Pytanie jak to będzie wydajne?
Łukasz Kałużny: Wiesz co i to jest ciekawostka, bo jak na normalnych prockach tak jak w Azure SQLu to SIMD i AVX512 bierze udział w szukaniu i przetwarzaniu.
Szymon Warda: OK, to może fajnie działać.
Łukasz Kałużny: Więc właśnie tak, plus tam jest ten column store czyli odwrócone. Pamiętaj, że są odwrócone format odwrócony odwrócony format przechowywania danych, więc to jest ciekawe pod tym względem do szukania. Dobra, więc to sobie pójdzie do short and sweet.
Łukasz Kałużny: A druga rzecz, która to jest dla mnie lol AWS się chwalił, że ma dla workplace’u, ma swoje maile i inne takie rzeczy i do tworzenia dokumentów gdzieś tam w ramach swojej chmury usługi. No i wyszły papiery, że zakupuje za ichniejszy bilion licencję od Microsoftu na M365.
Szymon Warda: No ale prawda jest taka, że każda korporacja potrzebuje zestawu M365, Wordy i Officy itd potrzebne są.
Łukasz Kałużny: Ja wiem, ale no doc-pudding nie wyszedł.
Szymon Warda: Ale czy jest sens, żeby Amazon rozwijał swojego Worda? Nie ma sensu. Mają wybór albo pójdą w Googlowe rzeczy - chyba jeszcze gorzej, albo albo będą mieli 365
Łukasz Kałużny: Oj, od razu gorzej. Wolisz docsy.
Szymon Warda: Ja tak, ale to jest korporacja. Będą woleli Worda de facto. Tak więc jako alternatywę wiesz, że mają swoje narzędzia, ale poszli w tamto, więc to jest mocno ciekawe.
Szymon Warda: To ja dwa niusy AI-owe, dwa zupełnie inne. Jeden to jest to. MSowi się przez przypadek udostępniło 38 terabajtów danych swoich pracowników, między innymi właśnie do uczenia modeli AI-owych w kontekście GitHuba. Czyli mały upsik. Jak się to wydarzyło? Tak jak zwykle to bywa z modelami AI-owymi, czyli mianowicie w publicznym repo był link z opisem modelu. Ten link był linkiem do blob storage, który był publiczny bo był cały czas pokazywany. Tak, dokładnie tak, był pełen dostęp.
Szymon Warda: Więc no upsik mówi się, ale drugi link jest dużo ciekawszy. CloudFlare wchodzi w AI. Co dorzucili? Dorzucili swoją bazę wektorową, no wiadomo, musi być. Ale tak poważnie mówiąc generalnie faktycznie przydała się. Dorzucili Workery z dostępem do GPU całego AI Gateway’a. Ale teraz co jest interesujące, wszystko jest w modelu pa-as-you-go.
Łukasz Kałużny: GPU w pay-as-you-go.
Szymon Warda: To workery z GPU w pay-as-you.go. To jest naprawdę ciekawe. Co więcej, chwalą się, że znaczenie tego jest nie tylko bo… Moja pierwsza myśl była taka OK, no to w takim razie będą workery z GPU do zwracania odpowiedzi de facto ze wszystkiego, a oni bardziej w kontekście pokazują to w kontekście tego, że workery będą mogły robić embeddingi wektorowe dla danych tak naprawdę, czyli takie naprawdę realne, realne wykorzystanie.
Szymon Warda: Więc jestem ciekawy jak to pójdzie. Zdziwiłem się, że poszli w tym w kierunku, ale to jak to zrobili, że worker właśnie z GPU to to ma ręce i nogi.
Łukasz Kałużny: Ma ręce. W szczególności, że problemy z dostępnością ceny tych żeby odpalić model są naprawdę duże, więc to jest ciekawe.
Szymon Warda: Tak, to będzie fajny model do tego jak już zrobimy model i będzie on serwował dane tak naprawdę do uczenia jako takiego, to obstawiam, że to nie ta bajka.
Łukasz Kałużny: Ale do serwowania tak. Dobra, to teraz musisz mi kiedyś wytłumaczyć czemu jak ja dotykam Terraforma. W każdym projekcie kiedy muszę coś zrobić w tym Terraformie, to trafiam na coś co przeszkadza. Ale wiesz, to tylko chodzi o to, że zawsze trafię coś, co trzeba hakować. Mam takiego pecha z tym i co tutaj bym chciał wrzucić, bo wrzucałeś, że były update’y do Container Appsów jakieś kilka odcinków temu, że było sporo fajnych updateów. Workload profiles, czyli te dedykowane profile jak i te dedykowane środowiska są po dziś dzień nie support w samym Teraformie, ani joby ani eventy, nic nie jest supportowane czy workflow profile na poziomie środowiska czy aplikacji.
Szymon Warda: Albo minął tylko miesiąc albo dwa, więc nie spodziewaj się zbyt szybko.
Łukasz Kałużny: Słuchaj, jest lepiej. Nawet flaga Label Preview nie zniknął.
Szymon Warda: To jest problem z Terraformem. To opóźnienie i to de facto wspaniały plik stanu. No co ja Ci powiem. Generalnie..
Szymon Warda: Inaczej. Już akceptuję fakt, że czasem trzeba tam wejść i posprzątać, jeżeli chciało się zrobić coś szybko. Tak, to że się psuje, to inna bajka. Dla mnie cały governance wokół pliku po prostu upierdliwy bardzo mocno. To jest takie… no to po prostu upierdliwe i zbyt kosztowne jak na tę wartość. To co mówiłem zawsze: ja dużo bardziej preferuję składnię HCL-ową od składni bicepowej.
Łukasz Kałużny: Mi to zwisa i z tym i z tym mam problemy. Więc dla osób, które mówią i mnie zaczepiają co tak hejtuje Terraforma to wynika z praktyki hehehe.
Szymon Warda: Ja bym się z tym zgodził, że…
Łukasz Kałużny: Im dalej wchodzisz tym bardziej są rozwiązania.
Szymon Warda: Żeby nie było hejtowanie Terraforma jak były tylko arm templaty było w pełni zasadne. Ich czytelność była na poziomie ujemnym. Już jest lepiej.
Łukasz Kałużny: Bicep jest spoko, Deployment stacki coraz lepiej działają, więc będzie można zacząć hejtować. Terraforma za plik stanu
Szymon Warda: Będzie wszystko działało generalnie
Łukasz Kałużny: Lepiej mówię, że lepiej działają. To nie jest jeszcze Ultimate Solution, które rozwiązuje ten problem. Dobra.
Szymon Warda: Ja mam jeszcze jedno w takim razie ciekawy link, bardziej do poczytania sobie o tym. AWS się chwali jak to pozmieniał i co pozmieniał AWS Lambdzie, a dokładniej jak to siedzi pod spodem. Co chcieli optymalizować? Optymalizować chcieli cold starty. To i tak było całkiem niezłe i odporność na padnięcie całej zony. Niezły artykuł opisujący co było i jak to będzie wyglądało, co się zmieniło i od kiedy itd itd. Całkiem ciekawe, ale co mnie tam zaciekawiło to jest to właśnie jak wykorzystują Firecrackera do mikro wirtualizacji i jak wykorzystują pauzowanie i snapshoty. Nie wiem jak do tego żeby duplikat ować maszyny i oszczędzać na kosztach. Raczej snapshot mikro, wiem jak są. Ciekawą rzeczą artykuł jest to nie do końca jest na opowiedzenie bo to zbyt dużo konkretów, ale do przeczytania jak najbardziej, więc w linkach do odcinka zerknijcie.
Szymon Warda: Tak naprawdę Dobra, no to co? Zamykamy dzisiejszy odcinek i do usłyszenia kolejnym razem. Trzymajcie się! Na razie, na razie.