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ówKategoria: Big Data
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
Kafka Connect w pigułce
Kafka Connect to część platformy Apache Kafka. Służy do łączenia Kafki z zewnętrznymi serwisami takimi jak systemy plików lub bazy danych. W artykule dowiesz się jaki problem rozwiązuje i jak ją uruchomić.
Czytaj dalej Kafka Connect w pigułcePySpark ETL z MySQL i MongoDB do Cassandra
W Apache Spark/PySpark posługujemy się abstrakcjami, a faktyczne przetwarzanie dokonywane jest dopiero gdy chcemy zmaterializować wynik operacji. Do dyspozycji mamy szereg bibliotek, którymi możemy łączyć się z różnymi bazami i systemami plików. W tym artykule dowiesz się jak połączyć dane z MySQL i MongoDB, a następnie zapisać je w Apache Cassandra.
Czytaj dalej PySpark ETL z MySQL i MongoDB do Cassandra