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”

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)”

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)”

PySpark 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”

5 sposobów na lokalne środowisko Apache Spark

Apache Spark to jedna z najpopularniejszych platform do rozproszonego przetwarzania i analizy danych. Choć kojarzona jest farmą serwerów, Hadoop’em i technologiami chmurowymi, z powodzeniem możesz odpalić ją na swojej maszynie. W tym wpisie dowiesz się kilku sposobów na konfiguracje deweloperskiego środowiska Apache Spark.

Czytaj dalej „5 sposobów na lokalne środowisko Apache Spark”

Jak zacząć z Apache Spark i Cassandra

Apache Cassandra to specyficzna baza danych. Skaluje się (uwaga) liniowo. Ma to swoją cenę: specyficzne modelowanie tabel, konfigurowalna spójność i ograniczona analityka. Apple wykonuje miliony operacji na sekundę na ponad 160 tys. instancjach Cassandry. Gromadzi przy tym ponad 100 PB danych. Ograniczoną analitykę można “wyleczyć” wykorzystując Apache Spark i connector od DataStax i o tym jest ten wpis.

Czytaj dalej „Jak zacząć z Apache Spark i Cassandra”

MinIO – Big Data bez Hadoop/HDFS?

MinIO to rozproszony storage implementujący API AWS S3. Można go wdrożyć na środowiskach on-premises. Jest przygotowany pod Kubernetes. Stanowi ciekawą alternatywę dla środowisk opartych o HDFS i resztę ekosystemu Hadoop. W końcu Kubernetes staje się coraz ciekawszą alternatywą YARN-a dla Apache Spark. W tym wpisie zapoznamy się z lokalnie postawionym MinIO na docker-compose i wykonamy kilka operacji w Sparku.

Czytaj dalej „MinIO – Big Data bez Hadoop/HDFS?”

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?”

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”