Poznajemy Sparka. Błyskawiczna analiza danych - Helion
ISBN: 978-8-3011-8685-2
stron: 260, Format: ebook
Data wydania: 2016-06-17
Księgarnia: Helion
Cena książki: 74,00 zł
Ilość danych we wszystkich domenach wciąż rośnie. Jak możemy skutecznie je wykorzystywać? W książce Poznajemy Sparka przedstawiono Apache Spark, system open source do przetwarzania klastrów, dzięki któremu pisanie i uruchamianie aplikacji analizy danych jest szybsze. Za pomocą Sparka można stawić czoła dużym zbiorom danych za pośrednictwem prostych interfejsów w językach Python, Java i Scala.
Dzięki tej pracy, napisanej przez deweloperów Sparka, naukowcy zajmujący się danymi i inżynierowie dowiedzą się, jak przedstawiać równoległe zadania za pomocą kilku wierszy kodu oraz jak pisać aplikacje od prostych zdań wsadowych do przetwarzania strumieniowego i systemów uczących się. Informacje zawarte w książce pozwolą im na:.
- szybkie zgłębienie możliwości Sparka, takich jak rozproszone zbiory danych, buforowanie w pamięci oraz interaktywna powłoka
- wykorzystywanie wbudowanych bibliotek, łącznie z Spark SQL, Spark Streaming oraz MLlib
- wykorzystywanie paradygmatu programowania zamiast łączenia i dopasowywania narzędzi takich jak Hive, Hadoop, Mahout i Storm
- poznawanie sposobu wykorzystywania aplikacji interakcyjnych, wsadowych i strumieniowych dołączanie źródeł danych, np. HDFS, Hive, JSON i S3
Osoby które kupowały "Poznajemy Sparka. Błyskawiczna analiza danych", wybierały także:
- Scala for Machine Learning - Second Edition 186,88 zł, (29,90 zł -84%)
- Data Analysis with IBM SPSS Statistics 186,88 zł, (29,90 zł -84%)
- QlikView for Developers 186,88 zł, (29,90 zł -84%)
- Practical Machine Learning Cookbook 186,88 zł, (29,90 zł -84%)
- Mastering Hadoop 3 175,88 zł, (29,90 zł -83%)
Spis treści
Poznajemy Sparka. Błyskawiczna analiza danych eBook -- spis treści
- Okładka
- Strona tytułowa
- Strona redakcyjna
- Spis treści
- Słowo wstępne
- Wprowadzenie
- 1. Wprowadzenie do analizy danych w Sparku
- Czym jest Apache Spark?
- Ujednolicony stos
- Jądro Sparka
- Spark SQL
- Spark Streaming
- MLlib
- GraphX
- Zarządzanie klastrami
- Kto i po co korzysta ze Sparka?
- Zadania z zakresu nauki o danych
- Aplikacje przetwarzania danych
- Krótka historia Sparka
- Wersje i wydania Sparka
- Warstwy pamięci w Sparku
- 2. Pobieranie Sparka i rozpoczęcie pracy
- Pobieranie Sparka
- Wprowadzenie do powłok Sparka dla Pythona i Scali
- Wprowadzenie do podstawowych pojęć Sparka
- Niezależne aplikacje
- Inicjalizowanie kontekstu SparkContext
- Tworzenie niezależnych aplikacji
- Podsumowanie
- 3. Programowanie z rozproszonymi zbiorami danych RDD
- Podstawy RDD
- Tworzenie RDD
- Działania na RDD
- Transformacje
- Akcje
- Leniwa ewaluacja
- Przekazywanie funkcji do Sparka
- Python
- Scala
- Java
- Popularne transformacje i akcje
- Podstawowe RDD
- Przekształcenia między typami RDD
- Utrzymywanie (buforowanie)
- Podsumowanie
- 4. Praca z parami klucz-wartość
- Motywacja
- Tworzenie RDD par
- Transformacje na RDD par
- Agregacje
- Grupowanie danych
- Złączenia
- Sortowanie danych
- Działania dostępne na RDD par
- Partycjonowanie danych (zaawansowane)
- Określanie partycjonera RDD
- Działania, które zyskują dzięki partycjonowaniu
- Działania, które mają wpływ na partycjonowanie
- Przykład: PageRank
- Niestandardowe partycjonery
- Podsumowanie
- 5. Ładowanie i zapisywanie danych
- Motywacja
- Formaty plików
- Pliki tekstowe
- JSON
- Wartości oddzielane przecinkami i tabulatorami
- Pliki sekwencyjne
- Pliki obiektowe
- Formaty wejścia i wyjścia w Hadoop
- Kompresja plików
- Systemy plików
- Lokalny lub zwykły
- Amazon S3
- HDFS
- Dane strukturalne w Spark SQL
- Apache Hive
- JSON
- Bazy danych
- Łączniki z bazą danych Java
- Cassandra
- HBase
- Elasticsearch
- Podsumowanie
- 6. Zaawansowane programowanie w Sparku
- Wprowadzenie
- Akumulatory
- Akumulatory i odporność na błędy
- Akumulatory niestandardowe
- Zmienne rozgłoszeniowe
- Optymalizacja rozgłoszeń
- Praca na poszczególnych partycjach
- Potokowanie do programów zewnętrznych
- Działania liczbowe na RDD
- Podsumowanie
- 7. Uruchamianie Sparka w klastrze
- Wprowadzenie
- Spark Runtime Architecture
- Sterownik
- Wykonawcy
- Menedżer klastrów
- Uruchamianie programu
- Podsumowanie
- Wdrażanie aplikacji za pomocą spark-submit
- Pakowanie kodu i elementów zależnych
- Aplikacja Java Spark budowana za pomocą Mavena
- Aplikacja Scala Spark budowana za pomocą sbt
- Konflikty zależności
- Harmonogramowanie w aplikacjach Sparka i między nimi
- Menedżery klastrów
- Menedżer klastrów Standalone
- Hadoop YARN
- Apache Mesos
- Amazon EC2
- Którego menedżera klastrów używać?
- Podsumowanie
- 8. Dostrajanie i debugowanie Sparka
- Konfigurowanie Sparka z SparkConf
- Składniki wykonania: prace, zadania i etapy
- Znajdowanie informacji
- Sieciowy interfejs użytkownika w Sparku (Web UI)
- Dzienniki sterownika i wykonawców
- Kluczowe zagadnienia dotyczące wydajności
- Poziom równoległości
- Format serializacji
- Zarządzanie pamięcią
- Dostarczanie sprzętu
- Podsumowanie
- 9. Spark SQL
- Łączenie ze Spark SQL
- Używanie Spark SQL w aplikacjach
- Inicjalizacja Spark SQL
- Przykład podstawowych zapytań
- Elementy DataFrames
- Buforowanie
- Ładowanie i zapisywanie danych
- Apache Hive
- Źródła danych lub Parquet
- JSON
- Ze zbiorów RDD
- Serwer JDBC/ODBC
- Praca z Beeline
- Długotrwałe tablice i zapytania
- Funkcje definiowane przez użytkowników
- UDF w Spark SQL
- Funkcje UDF w Hive
- Wydajność Spark SQL
- Opcje dostrajania wydajności
- Podsumowanie
- 10. Spark Streaming
- Prosty przykład
- Architektura i abstrakcja
- Transformacje
- Transformacje bezstanowe
- Transformacje stanowe
- Operacje wyjścia
- Źródła wejściowe
- Główne źródła
- Dodatkowe źródła
- Wiele źródeł i ustawianie rozmiaru klastra
- Działanie 24/7
- Punkty kontrolne
- Odporność sterownika na błędy
- Odporność węzła roboczego na błędy
- Odporność odbiornika na błędy
- Gwarancje przetwarzania
- Interfejs użytkownika w strumieniowaniu
- Kwestie wydajności
- Rozmiary wsadu i okien
- Poziom równoległości
- Czyszczenie pamięci i jej wykorzystywanie
- Podsumowanie
- 11. Systemy uczące się w MLlib
- Przegląd
- Wymagania dotyczące systemu
- Podstawy systemów uczących się
- Przykład: klasyfikacja spamu
- Typy danych
- Praca z wektorami
- Algorytmy
- Ekstrakcja cech
- Statystyki
- Klasyfikacja i regresja
- Klastrowanie
- Wspólne filtrowanie i rekomendacje
- Zmniejszenie wymiarowości
- Ewaluacja modelu
- Wskazówki i kwestie wydajności
- Przygotowanie cech
- Konfigurowanie algorytmów
- Bufrowanie zbiorów RDD do ponownego wykorzystania
- Rozpoznawanie rzadkości
- Poziom równoległości
- API potoku
- Podsumowanie
- O autorach
- Przypisy