Szybki start: tworzenie klastra Apache Spark w usłudze Azure HDInsight przy użyciu witryny Azure Portal

W tym przewodniku Szybki start utworzysz klaster Apache Spark w usłudze Azure HDInsight za pomocą witryny Azure Portal. Następnie utworzysz notes Jupyter Notebook i użyjesz go do uruchamiania zapytań Spark SQL względem tabel apache Hive. Azure HDInsight jest zarządzaną usługą analityczną typu „open source” o szerokim zakresie, z przeznaczeniem dla przedsiębiorstw. Platforma Apache Spark dla usługi HDInsight umożliwia szybką analizę danych i przetwarzanie klastrów przy użyciu przetwarzania w pamięci. Notes Jupyter Notebook umożliwia interakcję z danymi, łączenie kodu z tekstem markdown i wykonywanie prostych wizualizacji.

Aby uzyskać szczegółowe wyjaśnienia dotyczące dostępnych konfiguracji, zobacz Konfigurowanie klastrów w usłudze HDInsight. Aby uzyskać więcej informacji na temat używania portalu do tworzenia klastrów, zobacz Tworzenie klastrów w portalu.

Jeśli używasz wielu klastrów razem, możesz utworzyć sieć wirtualną; Jeśli używasz klastra Spark, możesz również chcieć użyć usługi Hive Warehouse Połączenie or. Aby uzyskać więcej informacji, zobacz Planowanie sieci wirtualnej dla usługi Azure HDInsight i Integrowanie platform Apache Spark i Apache Hive z usługą Hive Warehouse Połączenie or.

Ważne

Opłaty za klastry usługi HDInsight są naliczane proporcjonalnie za minutę, niezależnie od ich użycia. Pamiętaj o usunięciu klastra po zakończeniu korzystania z niego. Aby uzyskać więcej informacji, zobacz sekcję Czyszczenie zasobów w tym artykule.

Wymagania wstępne

Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.

Tworzenie klastra platformy Apache Spark w usłudze HDInsight

Witryna Azure Portal służy do tworzenia klastra usługi HDInsight, który używa obiektów blob usługi Azure Storage jako magazynu klastra. Aby uzyskać więcej informacji na temat korzystania z usługi Data Lake Storage 2. generacji, zobacz Szybki start: konfigurowanie klastrów w usłudze HDInsight.

  1. Zaloguj się w witrynie Azure Portal.

  2. W menu górnym wybierz pozycję + Utwórz zasób.

    Screenshot of Azure portal how to create a resource.

  3. Wybierz pozycję Analiza>usługi Azure HDInsight, aby przejść do strony Tworzenie klastra usługi HDInsight.

  4. Na karcie Podstawowe podaj następujące informacje:

    Właściwości Opis
    Subskrypcja Z listy rozwijanej wybierz subskrypcję platformy Azure używaną dla klastra.
    Grupa zasobów Z listy rozwijanej wybierz istniejącą grupę zasobów lub wybierz pozycję Utwórz nową.
    Nazwa klastra Podaj globalnie unikatową nazwę.
    Region (Region) Z listy rozwijanej wybierz region, w którym jest tworzony klaster.
    Availability zone Opcjonalnie — określ strefę dostępności, w której ma zostać wdrożony klaster
    Typ klastra Wybierz typ klastra, aby otworzyć listę. Z listy wybierz pozycję Spark.
    Wersja klastra To pole zostanie automatycznie wypełnione wersją domyślną po wybraniu typu klastra.
    Nazwa użytkownika logowania klastra Wprowadź nazwę użytkownika logowania klastra. Domyślną nazwą jest administrator. To konto służy do logowania się do notesu Jupyter Notebook w dalszej części przewodnika Szybki start.
    Hasło logowania klastra Wprowadź hasło logowania klastra.
    Nazwa użytkownika protokołu SSH (Secure Shell) Wprowadź nazwę użytkownika protokołu SSH. Nazwą użytkownika protokołu SSH używaną w tym przewodniku Szybki start jest sshuser. Domyślnie to konto współdzieli hasło z kontem Nazwa użytkownika logowania klastra.

    Screenshot shows Create HDInsight cluster with the Basics tab selected.

  5. Wybierz pozycję Dalej: Magazyn, aby przejść do strony Magazyn>>.

  6. W obszarze Magazyn podaj następujące wartości:

    Właściwości opis
    Podstawowy typ magazynu Użyj wartości domyślnej usługi Azure Storage.
    Metoda wybierania Użyj wartości domyślnej Wybierz z listy.
    Konto magazynu podstawowego Użyj wartości wypełnionej automatycznie.
    Kontener Użyj wartości wypełnionej automatycznie.

    Screenshot shows Create HDInsight cluster with the Storage tab selected.

    Wybierz pozycję Przejrzyj i utwórz , aby kontynuować.

  7. W obszarze Przeglądanie i tworzenie wybierz pozycję Utwórz. Utworzenie klastra trwa około 20 minut. Przed przejściem do następnej sesji należy utworzyć klaster.

Jeśli wystąpi problem z tworzeniem klastrów usługi HDInsight, może to oznaczać, że nie masz odpowiednich uprawnień do tego. Aby uzyskać więcej informacji, zobacz Wymagania dotyczące kontroli dostępu.

Tworzenie notesu Jupyter

Jupyter Notebook to interakcyjne środowisko notesu, które obsługuje różne języki programowania. Notes pozwala na interakcję z danymi, łączenie kodu z tekstem markdown i wykonywanie prostych wizualizacji.

  1. W przeglądarce internetowej przejdź do https://CLUSTERNAME.azurehdinsight.net/jupyterlokalizacji , gdzie CLUSTERNAME jest nazwą klastra. Jeśli zostanie wyświetlony monit, wprowadź poświadczenia logowania dla klastra.

  2. Aby utworzyć notes, wybierz pozycję Nowy>PySpark.

    Create a Jupyter Notebook to run interactive Spark SQL query.

    Zostanie utworzony i otwarty nowy notes o nazwie Untitled (Untitled.pynb).

Uruchamianie instrukcji Apache Spark SQL

SQL (Structured Query Language) to najczęściej używany język służący do definiowania danych i wykonywania zapytań na tych danych. Rozwiązanie Spark SQL stanowi rozszerzenie platformy Apache Spark służące do przetwarzania danych strukturalnych za pomocą dobrze znanej składni języka SQL.

  1. Sprawdź, czy jądro jest gotowe. Gotowość jądra jest sygnalizowana pustym okręgiem obok nazwy jądra w notesie. Pełne kółko oznacza, że jądro jest zajęte.

    Screenshot shows a Jupyter window with a PySpark indicator.

    Podczas pierwszego uruchamiania notesu jądro wykonuje pewne zadania w tle. Poczekaj, aż jądro będzie gotowe.

  2. Wklej następujący kod do pustej komórki, a następnie naciśnij klawisze SHIFT + ENTER, aby go uruchomić. Polecenie wyświetla listę tabel Hive w klastrze:

    %%sql
    SHOW TABLES
    

    Jeśli używasz notesu Jupyter z klastrem usługi HDInsight, uzyskasz ustawienie wstępne sqlContext , którego można użyć do uruchamiania zapytań programu Hive przy użyciu usługi Spark SQL. Wyrażenie %%sql informuje notes Jupyter o konieczności użycia ustawienia wstępnego sqlContext do uruchomienia zapytania programu Hive. Zapytanie pobiera pierwszych 10 wierszy z tabeli programu Hive (hivesampletable), która jest dostępna domyślnie na wszystkich klastrach usługi HDInsight. Uzyskanie wyników zajmuje około 30 sekund. Dane wyjściowe wyglądają następująco:

    Screenshot shows a Jupyter window for the notebook created in this quickstart. is quickstart." border="true":::

    Podczas każdego uruchomienia zapytania w programie Jupyter w tytule okna przeglądarki internetowej wyświetlany jest stan (Busy) (Zajęty) wraz z tytułem notesu. Widoczne jest także pełne kółko obok tekstu PySpark w prawym górnym rogu.

  3. Uruchom inne zapytanie, aby wyświetlić dane z tabeli hivesampletable.

    %%sql
    SELECT * FROM hivesampletable LIMIT 10
    

    Ekran zostanie odświeżony w celu wyświetlenia wyników zapytania.

    Hive query output in HDInsight. Insight" border="true":::

  4. W menu File (Plik) w notesie wybierz pozycję Close and Halt (Zamknij i zatrzymaj). Zamknięcie notesu spowoduje zwolnienie zasobów klastra.

Czyszczenie zasobów

Usługa HDInsight zapisuje dane w usłudze Azure Storage lub Azure Data Lake Storage, dzięki czemu można bezpiecznie usunąć klaster, gdy nie jest używany. Opłaty są również naliczane za klaster usługi HDInsight, nawet jeśli nie jest używany. Ponieważ opłaty za klaster są wielokrotnie większe niż opłaty za magazyn, warto usunąć klastry, gdy nie są używane. Jeśli planujesz natychmiastowe rozpoczęcie pracy z samouczkiem z listy Następne kroki, warto zachować klaster.

Przejdź z powrotem do witryny Azure Portal, a następnie wybierz pozycję Usuń.

Azure portal delete an HDInsight cluster. sight cluster" border="true":::

Dodatkowo możesz wybrać nazwę grupy zasobów, aby otworzyć stronę grupy zasobów, a następnie wybrać pozycję Usuń grupę zasobów. Usunięcie grupy zasobów powoduje usunięcie zarówno klastra usługi HDInsight, jak i domyślnego konta magazynu.

Następne kroki

W tym przewodniku Szybki start przedstawiono sposób tworzenia klastra Apache Spark w usłudze HDInsight i uruchamiania podstawowego zapytania Spark SQL. Przejdź do następnego samouczka, aby dowiedzieć się, jak używać klastra usługi HDInsight do uruchamiania interakcyjnych zapytań dotyczących przykładowych danych.