Apache Spark z Hadoop - dlaczego to ma znaczenie?



Wdrożenie na dużą skalę Apache Spark z Hadoopem przez czołowe firmy świadczy o jego sukcesie i potencjale, jeśli chodzi o przetwarzanie w czasie rzeczywistym.

Hadoop, struktura przetwarzania danych, która stała się platformą samą w sobie, staje się jeszcze lepsza, gdy są do niej podłączone dobre komponenty. Niektóre wady Hadoop, takie jak komponent MapReduce w Hadoop, cieszą się opinią powolnego analizowania danych w czasie rzeczywistym.





Wprowadź Apache Spark, silnik przetwarzania danych oparty na platformie Hadoop, zaprojektowany z myślą o obciążeniach wsadowych i strumieniowych, teraz w wersji 1.0 i wyposażony w funkcje, które ilustrują, jakie rodzaje pracy ma obejmować Hadoop. Spark działa na bazie istniejących klastrów Hadoop, aby zapewnić ulepszone i dodatkowe funkcje.

Przyjrzyjmy się kluczowym funkcjom Spark i tym, jak działa razem z Hadoop i .



Korzyści z klucza Apache Spark:

img2-R

Niesamowite funkcje Sparka:

  • Integracja z Hadoop - Spark może pracować z plikami przechowywanymi w HDFS.
  • Interaktywna powłoka Sparka - Spark jest napisany w języku Scala i ma własną wersję interpretera Scala.
  • Spark’s Analytic Suite - Spark jest wyposażony w narzędzia do interaktywnej analizy zapytań, przetwarzania i analizy wykresów na dużą skalę oraz analizy w czasie rzeczywistym.
  • Odporne rozproszone zbiory danych (RDD) - RDD to rozproszone obiekty, które można przechowywać w pamięci podręcznej w klastrze węzłów obliczeniowych. Są to podstawowe obiekty danych używane w Spark.
  • Operatorzy rozproszeni - Oprócz MapReduce istnieje wiele innych operatorów, których można używać na RDD.

Zalety używania Apache Spark z Hadoop:

usługa teraz samouczek narzędzia sprzedaży biletów
  • Apache Spark pasuje do społeczności open source Hadoop, opierając się na rozproszonym systemie plików Hadoop (HDFS). Jednak Spark nie jest powiązany z dwuetapowym paradygmatem MapReduce i obiecuje wydajność do 100 razy szybszą niż Hadoop MapReduce dla niektórych aplikacji.



  • Dobrze sprawdza się w algorytmach uczenia maszynowego - Spark zapewnia elementy podstawowe do przetwarzania klastrów w pamięci, które umożliwiają programom użytkownika ładowanie danych do pamięci klastra i wielokrotne wysyłanie do nich zapytań.

  • Biegaj 100 razy szybciej - Spark, oprogramowanie analityczne może również przyspieszyć zadania wykonywane na platformie przetwarzania danych Hadoop. Apache Spark, nazwany „szwajcarskim scyzorykiem Hadoop”, zapewnia możliwość tworzenia zadań analizy danych, które mogą działać 100 razy szybciej niż te działające na standardowym Apache Hadoop MapReduce. MapReduce był szeroko krytykowany jako wąskie gardło w klastrach Hadoop, ponieważ wykonuje zadania w trybie wsadowym, co oznacza, że ​​analiza danych w czasie rzeczywistym nie jest możliwa.

  • Alternatywa dla MapReduce - Spark zapewnia alternatywę dla MapReduce. Wykonuje zadania w krótkich seriach mikro-serii, które są oddalone od siebie o pięć sekund lub mniej. Zapewnia również większą stabilność niż zorientowane strumieniowo frameworki Hadoop w czasie rzeczywistym, takie jak Twitter Storm. Oprogramowanie może być używane do różnych zadań, takich jak ciągła analiza danych w czasie rzeczywistym, a dzięki bibliotece oprogramowania do bardziej szczegółowych zadań obliczeniowych obejmujących uczenie maszynowe i przetwarzanie wykresów.

  • Wsparcie dla wielu języków - Korzystając ze Spark, programiści mogą pisać zadania analizy danych w Javie, Scali lub Pythonie, używając zestawu ponad 80 operatorów wysokiego poziomu.

    co to jest funkcja wirtualna java
  • Obsługa bibliotek - Biblioteki platformy Spark zostały zaprojektowane tak, aby uzupełniać typy zadań przetwarzania, które są badane bardziej agresywnie, dzięki najnowszym komercyjnie obsługiwanym wdrożeniom Hadoop. MLlib implementuje mnóstwo popularnych algorytmów uczenia maszynowego, takich jak naiwna klasyfikacja Bayesa lub klastrowanie. Spark Streaming umożliwia szybkie przetwarzanie danych pozyskiwanych z wielu źródeł, a GraphX ​​umożliwia obliczenia na danych wykresów.

  • Stabilne API - W wersji 1.0 Apache Spark oferuje stabilne API (interfejs programowania aplikacji), którego programiści mogą używać do interakcji ze Sparkiem za pośrednictwem własnych aplikacji. Pomaga to w łatwiejszym korzystaniu ze Storm we wdrożeniach opartych na Hadoop.

  • Składnik SPARK SQL - Komponent Spark SQL do uzyskiwania dostępu do ustrukturyzowanych danych, umożliwia przeszukiwanie danych wraz z danymi nieustrukturyzowanymi w pracach analitycznych. Spark SQL, który jest w tej chwili tylko w wersji alfa, umożliwia uruchamianie zapytań podobnych do SQL na danych przechowywanych w Apache Hive. Wyodrębnianie danych z Hadoop za pośrednictwem zapytań SQL to kolejny wariant funkcji wykonywania zapytań w czasie rzeczywistym, która pojawia się wokół Hadoop.

  • Zgodność Apache Spark z Hadoop [HDFS, HBASE i YARN] - Apache Spark jest w pełni kompatybilny z rozproszonym systemem plików (HDFS) Hadoop, a także z innymi składnikami Hadoop, takimi jak YARN (Yet Another Resource Negotiator) i rozproszona baza danych HBase.

Adoptery branżowe:

Firmy informatyczne, takie jak Cloudera, Pivotal, IBM, Intel i MapR, złożyły Spark w swoje stosy Hadoop. Databricks, firma założona przez niektórych twórców Spark, oferuje komercyjne wsparcie dla oprogramowania. Zarówno Yahoo, jak i NASA, między innymi, używają oprogramowania do codziennych operacji na danych.

Wniosek:

To, co Spark ma do zaoferowania, z pewnością będzie dużym zainteresowaniem zarówno dla użytkowników, jak i komercyjnych dostawców Hadoop. Użytkownicy, którzy chcą wdrożyć Hadoop i którzy już zbudowali wiele swoich systemów analitycznych wokół Hadoop, są zainteresowani pomysłem wykorzystania Hadoop jako systemu przetwarzania w czasie rzeczywistym.

Spark 1.0 zapewnia im inną różnorodność funkcji do obsługi lub tworzenia zastrzeżonych elementów. W rzeczywistości jeden z trzech największych dostawców Hadoop, Cloudera, zapewniał już komercyjne wsparcie dla Spark za pośrednictwem swojej oferty Cloudera Enterprise. Hortonworks oferuje również Spark jako składnik swojej dystrybucji Hadoop. Wdrożenie Sparka na dużą skalę przez czołowe firmy świadczy o jego sukcesie i potencjale, jeśli chodzi o przetwarzanie w czasie rzeczywistym.

Masz do nas pytanie? Wspomnij o nich w sekcji komentarzy, a my skontaktujemy się z Tobą.

Powiązane posty:

transformacja czynna i pasywna w informatyce