Koalas, czyli PySpark w przebraniu Pandas

Jednym z podstawowych narzędzi Data Scientist jest Pandas. 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ą Pandas.

Czytaj dalej „Koalas, czyli PySpark w przebraniu Pandas”

Dlaczego Elasticsearch kłamie? Jak działa Elasticsearch?

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.

Czytaj dalej „Dlaczego Elasticsearch kłamie? Jak działa Elasticsearch?”

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”