Big Data + Cyberbezpieczeństwo = Data-Driven SOC

Jak pewnie wiesz, na co dzień łączę Big Data i Cybersecurity. Czy taka fuzja ma sens? Niektórzy nie do końca rozumieli czemu przechodzę do CSIRT’u. Przecież to różne bajki. Oj byli w błędzie… wolumen danych jest ogromny. Jest też sporo wyzwań. Zapraszam Cię do mojego wywodu na ten temat 😉.

Czytaj dalej „Big Data + Cyberbezpieczeństwo = Data-Driven SOC”

ksqlDB – magia SQL w czasie rzeczywistym – część 1

ksqlDB to rozwiązanie z rodziny Apache Kafka i Confluent. Pozwala na wykorzystanie języka SQL do definiowania zadań przetwarzania strumieniowego. Wpis ten zaczyna serię o ksqlDB. Spróbujemy zrobić coś fajnego na podstawie danych z Packetbeat’a (monitoring ruchu sieciowego) i zobaczymy jak to dalej się rozwinie.

Czytaj dalej „ksqlDB – magia SQL w czasie rzeczywistym – część 1”

Deduplikacja zdarzeń w Logstash i Redis

Deduplikacja to W systemach rozproszonych występują tylko dwa trudne problemy:

2. Dostarczenie wiadomości dokładnie raz
1. Gwarantowana kolejność wiadomości
2. Dostarczenie wiadomości dokładnie raz.

Inny mi słowy: w tym wpisie zajmiemy się deduplikacją zdarzeń 😁. Ostatnio miałem z tym problem w SIEM’ie, więc padło na Logstash’a.

Czytaj dalej „Deduplikacja zdarzeń w Logstash i Redis”

Apache Spark – 2 Kroki do Lepszej Utylizacji Zasobów

Chcemy, aby nasze aplikacje w Apache Spark wykorzystywały wszystkie przydzielone zasoby. Niestety nie jest to takie proste. Rozproszenie obliczeń niesie za sobą koszty zarządzania zadaniami, a same zadania mają wobec siebie zależności. Z jednej strony ogranicza nas CPU (szybkość obliczeń), z drugiej strony dyski i sieć. MapReduce poświęciłem dedykowany materiał wideo. W artykule dowiesz się jak w 2 prostych krokach poprawić utylizację zasobów w Apache Spark.

Czytaj dalej „Apache Spark – 2 Kroki do Lepszej Utylizacji Zasobów”

Stream Processing – There’s no time like the present [nagranie]

Nagranie z mojego wystąpienia o przetwarzaniu strumieniowym w ramach DataOps Poland. Klasyczne podejście polegające na przetwarzaniu wsadowym nie zawsze się sprawdza. Wartość informacji maleje wraz z upływem czasu. Musimy wybrać kompromis pomiędzy szybkością, a dokładnością wyników. Z nagrania dowiesz się, dlaczego warto zainteresować się przetwarzaniem strumieniowym i jakie niesie ze sobą problemy.

Czytaj dalej „Stream Processing – There’s no time like the present [nagranie]”

Change Data Capture – Zmień Bazę W Strumień (Debezium)

Myślałeś/aś kiedyś o utworzeniu strumienia z operacji w bazie danych? W tym wpisie dowiesz się czym jest Change Data Capture i jak go wykorzystać planując architekturę naszego systemu. W części praktycznej sprawdzimy działanie Debezium na bazie MySQL

Czytaj dalej „Change Data Capture – Zmień Bazę W Strumień (Debezium)”

Najprostszy sposób na Klaster Apache Spark (Standalone Spark Cluster)

Apache Spark potrafi pokonać wydajnością Pandas działając na pojedynczej maszynie, ale zaprojektowany został by działać w klastrze. Uruchomienie klastra może wydawać się trudne, ale w rzeczywistości to bułka z masłem. W tym wpisie dowiesz się jak uruchomić najprostszy z klastrów, czyli Standalone Spark Cluster.

Czytaj dalej „Najprostszy sposób na Klaster Apache Spark (Standalone Spark Cluster)”

Jak Używać Variables i XCom w Apache Airflow?

Mówi się, że Apache Airflow to CRON na sterydach. Zdobywa uznanie wśród narzędzi do orchestracji ETL’i. Harmonogramowanie, zarządzanie i monitorowanie zadań mu nie straszne. Podstawowym sposobem definiowania zadań są acyklicze grafy skierowane (DAG). Zadania w nich muszą wymieniać się informacjami. We wpisie dowiesz się jak używać Variables i XCom w Apache Airflow.

Czytaj dalej „Jak Używać Variables i XCom w Apache Airflow?”

Czytelny Kod Scala w Apache Spark (4 podejścia)

Jupyter i Apache Zeppelin to dobre miejsce na eksperymentowanie z danymi. Niestety, specyfika notebook’ów nie zachęca do organizacji kodu, a w tym jego dekompozycji i czytelności. Możemy przekopiować komórki do Intellij IDEA i zbudować JAR’a, ale efekt będzie taki sobie. W artykule dowiesz się jak napisać czytelny kod Scala Apache Spark w Intellij IDEA.

Czytaj dalej „Czytelny Kod Scala w Apache Spark (4 podejścia)”

Analiza danych z Twitter dla leni w Elastic Stack (Xbox VS PlayStation)

Dane z Twitter można pozyskać na wiele sposobów, ale komu chce się pisać kod 😉. Szczególnie taki, który będzie działał 24/7. W Elastic Stack można w prosty sposób zbierać i analizować dane z Twitter’a. Logstash ma gotowe wejście do zbierania strumienia tweet’ów. Kafka Connect omawiana w poprzednim artykule również ma taką opcję, jednak Logstash może wysyłać dane do wielu źródeł (w tym do Apache Kafka) i jest prostszy w obsłudze.

W artykule:

  • Zapis strumienia tweetów do Elasticsearch w Logstash’u
  • Wizualizacje w Kibana (Xbox vs PlayStation)
  • Usunięcie tagów HTML dla keyword’a mechanizmem normalizacji
Czytaj dalej „Analiza danych z Twitter dla leni w Elastic Stack (Xbox VS PlayStation)”