Kafka Streams 202 – Dockeryzacja aplikacji, czyli Kafka w kontenerze

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.

Czytaj dalej Kafka Streams 202 – Dockeryzacja aplikacji, czyli Kafka w kontenerze

Kafka Streams 201 – Obliczanie prędkości, Processor API, KeyValueStore

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.

Czytaj dalej Kafka Streams 201 – Obliczanie prędkości, Processor API, KeyValueStore

Kafka Streams 103 – Pisz testy, zapomnij o Kafce

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?

Czytaj dalej Kafka Streams 103 – Pisz testy, zapomnij o Kafce

Kafka Streams 102 – Wyjątki i Dead Letter Queue

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.

Czytaj dalej Kafka Streams 102 – Wyjątki i Dead Letter Queue

Kafka Streams 101

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.

Czytaj dalej Kafka Streams 101

Delta Lake w Pigułce (czyli o podróżach w czasie)

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.

Czytaj dalej Delta Lake w Pigułce (czyli o podróżach w czasie)

Spark i Elasticsearch? To tak można? elasticsearch-spark

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.

Czytaj dalej Spark i Elasticsearch? To tak można? elasticsearch-spark

Keep Calm And Serilog Elasticsearch Kibana on .NET Core – 132. Spotkanie WG.NET

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 .

Czytaj dalej Keep Calm And Serilog Elasticsearch Kibana on .NET Core – 132. Spotkanie WG.NET

Kto najlepiej ćwierka? Podstawy Graphframes + Tweepy

Słyszałeś/aś o Apache Graphframes? Teoria grafów to nie tylko ich własności, ale i algorytmy. Przekształcenie danych do modelu grafowego umożliwia zastosowanie niektórych z nich. W tym wpisie pobierzemy dane „followersów” z Twittera i wykonamy parę prostych algorytmów w Graphframes w PySparku.

Czytaj dalej Kto najlepiej ćwierka? Podstawy Graphframes + Tweepy

Obliczanie prędkości w Apache Spark – GPS komunikacji miejskiej

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ć.

Czytaj dalej Obliczanie prędkości w Apache Spark – GPS komunikacji miejskiej