Dlaczego nie wystarczy nam macierz i jak działa HDFS.
Strona głównaUżytkownik
mszymczyk | użytkownik
Programowanie rozproszone 1612 dni, 2 godziny, 10 minut temu 103 źrodło rozwiń
Jednym z podstawowych narzędzi Data Scientist jest Numpy. Niestety nadmiar danych może znacznie utrudnić nam zabawę. Dlatego powstało Koalas. Biblioteka umożliwiająca korzystanie z Apache Spark w taki sposób, jakbyśmy robili to za pomocą Numpy.Spis treścihide1Cel2Środowisko3Pip i Spark Session4Przygotowanie Spark DataFrame5Przygotowanie Koalas DataFrame6Top 10 najczęściej ocenianych filmówPySparkKoalas/PandasSpark SQL7Top 10 filmów wg średnich ocen (ale tylko takich, które mają >100 ocen)PySparkKoalas/Pa...
Elasticsearch zaskakuje nas swoimi możliwościami i szybkością działania, ale czy zwracane wyniki są prawidłowe? W tym wpisie dowiesz się jak Elasticsearch działa pod maską i dlaczego zwracane agregacje są pewnego rodzaju przybliżeniem.Spis treścihide1Elasticsearch pod maskąIndeksy, shardy i replikiZapytania i agregacjeSzacowanie2TestDataFrame w Apache SparkTop 20 LinesTop 10 vehicleNumber3WnioskiPodziel się:Dodaj do ulubionych:PodobneElasticsearch pod maskąIndeksy, shardy i repliki Zacznijmy od tego, ja...
Bazy danych i XML 1625 dni, 1 godzinę, 39 minut temu 78 źrodło rozwiń
W poprzednim wpisie udokumentowałem utworzenie przepływu danych wykorzystującego technologie takie jak Kafka, Kafka Streams, Logstash i Elasticsearch. Po kilku dniach pracy mam już wystarczającą ilość danych, aby przekonać się jakie możliwości analizy danych transportu miejskiego umożliwia Elasticsearch i Kibana.Spis treścihide1DaneLiczność zbioru2MapaHeatmapGrid rectangles3Wykresy, wykresikiDodanie pola z godzinąWykresiki – ogólnieWykresiki – dla linii 122 i 190Najszybszy w mieście wóz, najszybszy w mie...
Jest to drugie podejście Wizualizacja autobusów w Elasticsearch i Kibana. Tym razem wykorzystam napisany wcześniej program w Kafka Streams do obliczenia prędkości i orientacji autobusów, a następnie wrzucę Logstash-em z Apache Kafka do Elasticsearch.Spis treścihide1Środowisko2Data Flow3Wrzucanie rekordów do Apache Kafka4Logstash5Elasticsearch6Kibana7Mapa8Działanie9RepozytoriumPodziel się:Dodaj do ulubionych:PodobneŚrodowisko Docker-compose już trochę puchnie. Znajduje się w nim Elasticsearch, Kibana, Zo...
Bazy danych i XML 1653 dni, 2 godziny, 48 minut temu 66 źrodło rozwiń
No właśnie. Jak zacząć w świecie Big Data? Przecież tyle tych technologii. Widać to choćby na tym schemacie. http://mattturck.com/wp-content/uploads/2019/07/2019MattTurckBigDataLandscapeFinal_Fullsize.png.Newsletter Amerykańscy naukowcy i radzieccy uczeni są zgodni w jednym: nie ma lepszego sposobu na początek przygody z Big Data, jak subskrypcja Wiadro Danych 😎 Przechodząc dalej, akceptujesz politykę prywatnościJęzyk Oczywiście najważniejszym językiem w IT jest… język angielski. Ale skończmy h...
Obrazy Dockera są łatwe w obsłudze. Nie musimy instalować konkretnej wersji środowiska, bibliotek i innych zależności. Wszystko powinno być zamknięte w abstrakcji zwanej kontenerem. Możemy je uruchamiać i skalować w Docker Swarm lub Kubernetes. W tym wpisie zajmiemy się dockeryzacją aplikacji Kafka Streams na przykładzie strumienia dla lokalizacji autobusów ZTM przedstawionym w poprzednim wpisie.Spis treścihide1Zmiany w pom.xml2Zmiany w kodzie aplikacji Kafka Streams3Dockerfile4Zbudowanie obrazu Docker5D...
Programowanie rozproszone 1667 dni, 1 godzinę, 52 minuty temu 34 źrodło rozwiń
Czasami klasyczne Kafka DSL nam nie wystarcza. Processor API pozwala na dowolne zdefiniowanie procesora, a co najlepsze, wykorzystanie State Store. W tym przypadku obliczymy prędkość, kierunek i dystans pojazdów komunikacji miejskiej w Warszwie.Spis treścihide1Rozkład jazdy2Źródło3Plan4Dlaczego Processor API?5No to lecimyOdczyt danych z KafkiTestyTopologiaProcesorTesty6Czy z prawdziwą Kafką też działa?7Repozytorium8PodsumowaniePodobneRozkład jazdyKafka Streams 101 – de/serilizacjaKafka Streams 102 – Wyją...
Programowanie rozproszone 1680 dni, 2 godziny, 27 minut temu 29 źrodło rozwiń
Nie wyobrażam sobie programowania bez pisania testów. Gdy śpieszy mi się i o nich „zapominam”, potem i tak poprawiam kod przez jakąś głupotę. Poprawiają jakość i przyśpieszają czas tworzenia oprogramowania. Nie wierzysz?Spis treścihide1Rozkład jazdy2Co zyskamy?3Zależności4Testowalny kod Kafka Streams5Test 1 – LowercaseStreamTopologyTestDriverTest właściwy6Test 2 – SerDeJsonStream7Repozytorium8WnioskiPodobneRozkład jazdyKafka Streams 101 – de/serilizacjaKafka Streams 102 – Wyjątki i Dead Letter QueueKafka...
Sztuka programowania 1695 dni, 1 godzinę, 49 minut temu 43 źrodło rozwiń
Błędy zdarzają się każdemu. Prędzej czy później nasza aplikacja Kafka Streams dostanie wiadomość, która ją zabije (Poison Pill). Niestety uruchomienie jej ponownie nie pomoże, dopóki wiadomość nie zniknie z kolejki. W tym wpisie spróbujemy obsłużyć takie wiadomości i zapisać je do Dead Letter Queue.Spis treścihide1Rozkład jazdy2Poison Pill3Rozwiązania4Problemy5Dead Letter Queue6Filtrowanie wadliwych rekordówPodczas deserializacjiPodczas transformacji7Wykorzystanie Dead Letter QueuePodczas deserializacjiP...
Programowanie rozproszone 1709 dni, 1 godzinę, 58 minut temu 29 źrodło rozwiń
Przetwarzanie strumieniowe jest dzisiaj standardem. Skoro i tak większość osób korzysta z Apache Kafka jako kolejki, czemu nie spróbować Kafka Streams? Jest to rozwiązanie skalowalne i nie wymaga specjalnych środowisk typu YARN czy Apache Mesos. Ten wpis rozpoczyna serię wpisów dotyczących Kafka Streams.Spis treścihide1Cel2Podstawy3Środowisko4Pierwszy strumień – LowerCaseStream5De/Serializacja z łapyPoison Pill6De/Serializacja nie z łapyPoison Pill7Co dalej?8RepozytoriumPodobneCel We wpisach z tego cykl...
Programowanie rozproszone 1723 dni, 1 godzinę, 30 minut temu 48 źrodło rozwiń
Elasticsearch najczęściej wykorzystywany jest do agregowania logów i monitorowania elementów systemu. Umożliwia również alertowanie, ale jest to funkcjonalność dostępna od wersji Gold, czyli trzeba za nią zapłacić 😥. Są jednak darmowe rozwiązania. W tym przypadku przyjrzymy się rozwiązaniu Praeco (z łac. obwoływacz, herold) opartym o ElastAlert.Spis treścihide1Praeco2Środowisko3KonfiguracjaPraeco & ElastAlertLogstashReguła w Praeco4Akcja5Reakcja6PodsumowaniePodobnePraeco ElastAlert jest to rozwiązan...
Bazy danych i XML 1730 dni, 59 minut temu 43 źrodło rozwiń
Pewnie się zdziwi Cie ta informacja. Elasticsearch służy do… szukania. Tak. To prawda. Okazuje się, że można go wykorzystać również do indeksowania zawartości plików typu doc, docx, pdf itp. W tym wpisie przyjrzymy się jak to zrobić, jak zmienić analizator oraz jak „zgubić” plik jeśli i tak trzymamy go np. na S3.Spis treścihide1Po co?2Środowisko3Przygotowanie Pipeline4Dodanie pliku5Wyszukiwanie6Ale ja nie potrzebuję analizować całego pliku7Wystarczy mi treść. Pliki trzymam na S38To co z tym OCR-em?9A co ...
Bazy danych i XML 1744 dni, 1 godzinę, 29 minut temu 133 źrodło rozwiń
Delta Lake zdobywa ostatnio coraz większa popularność. Słychać o nim na konferencjach na całym świecie. W tym artykule przyjrzymy się jakie problemy rozwiązuje.Spis treścihide1Co to Delta Lake?2Jupyter + Delta Lake3Przygotowanie danych4Bez Delta Lake5Z Delta LakeHistoria i podróże w czasieZarządzanie schematemVacuumDelta Lake APIDeleteUpdateMergeStreaming Sink6Co jest pod maską?7RepoCo to Delta Lake? Delta Lake to nakładka na Apache Spark. Pełni rolę warstwy persystencji i gwarantuje ACID na HDFS, S3, A...
Bazy danych i XML 1758 dni, 1 godzinę, 5 minut temu 52 źrodło rozwiń
Elasticsearch można lubić lub nie. Fakty są takie, że robi robotę. Razem z Kibana, Logstash i Beats pozwalają w prosty sposób zbierać logi, metryki i przeprowadzać analizy w czasie rzeczywistym. Gdy potrzebujemy więcej, możemy chwycić za inne narzędzia. W tym wpisie przyjrzymy się jak połączyć Apache Spark i Elasticsearch. Psst! Repo z kodem na dole wpisu!😎Czemu Spark? Ostatnio zwrócił moją uwagę HELK, czyli rozwiązanie do analizy cyber oparte na Elastic Stack. Patrząc na jego architekturę, widzimy wy...
Bazy danych i XML 1771 dni, 1 godzinę, 1 minutę temu 53 źrodło rozwiń
Prędzej czy później programista dowiaduje się o istotności logowania w swojej aplikacji. Najlepiej podejść do tematu w sposób „leniwy” tj. minimum wysiłku, maksimum efektów 😉. Elasticsearch i Kibana bardzo w tym pomagają. 16.01.2020 przedstawiłem swoje doświadczenia z tym związane na meetup-ie Warszawskiej Grupy .NET . Slajdy i kod znajdziesz tutaj: https://wiadrodanych.pl/wg-net-serilog-elk/Autor MaciejOpublikowano Kategorie Elasticsearch, Logowanie, Programowanie, Wystąpienia, Zbieranie logówTagi a...
Sztuka programowania 1779 dni, 56 minut temu 77 źrodło rozwiń
Myślisz o analizie i wizualizacji danych geo? Czemu nie spróbować Elasticsearch? Tzw. ELK (Elasticsearch + Logstash + Kibana) to nie tylko baza NoSQL. Jest to cały system, który umożliwia przechowywanie, wyszukiwanie, analizę i wizualizację danych z dowolnego źródła w czasie rzeczywistym. W tym przypadku wykorzystamy otwarte dane lokalizacji komunikacji miejskiej w Warszawie. Wspomniałem o nich w tym artykule.Instalacja Elasticsearch + Kibana Tak jak opisywałem to w poprzednim wpisie, użyjemy docker + d...
Bazy danych i XML 1787 dni, 1 godzinę, 57 minut temu 105 źrodło rozwiń
Dlaczego Docker? Wiele osób pyta mnie, czy do nauki potrzebne jest specjalne środowisko lub klaster. Klaster na pewno jest fajną opcją. Mimo wszystko sporo możliwości daje pojedyncza maszyna z Dockerem na pokładzie. Dlaczego Docker? Od momentu gdy poznałem podstawy Docker, nie potrafię sobie przypomnieć kiedy instalowałem jakąś bazę danych na swoim komputerze. Bardzo ułatwia pracę, deweloperkę i poznawanie nowych technologii bez zaśmiecania sobie systemu. Nie będę wchodzić w szczegóły opisując co to jes...
Architektura 1804 dni, 59 minut temu 179 źrodło rozwiń
Słyszałeś/aś o Apache Graphframes? Teoria grafów to nie tylko ich własności, ale i algorytmy. W tym wpisie tworzę model i wykonuję algorytm PageRank.
Bazy danych i XML 1819 dni, 1 godzinę, 1 minutę temu 59 źrodło rozwiń
W poprzednim poście utworzyliśmy strumień danych lokalizacji pojazdów komunikacji miejskiej na jednym z topiców w Apache Kafka. Teraz dorwiemy się do tego strumienia z poziomu Apache Spark, zapiszemy trochę danych na HDFS i zobaczymy czy da się coś z nimi zrobić. Dla przypomnienia, wpis jest częścią mini projektu związanego z danymi lokalizacji pojazdów komunikacji miejskiej w Warszawie. Plan na dzień dzisiejszy poniżej, a zastanawiamy się nad jego środkiem => Apache SparkOdczyt z Kafki Najszybszą meto...
Bazy danych i XML 1825 dni, 1 godzinę, 14 minut temu 45 źrodło rozwiń