Sdílet prostřednictvím


Kurz: Vytvoření definice úlohy Apache Sparku v Synapse Studio

Tento kurz ukazuje, jak pomocí Synapse Studio vytvořit definice úloh Apache Sparku a pak je odeslat do bezserverového fondu Apache Sparku.

Tento kurz se zabývá následujícími úkony:

  • Vytvoření definice úlohy Apache Spark pro PySpark (Python)
  • Vytvoření definice úlohy Apache Sparku pro Spark (Scala)
  • Vytvoření definice úlohy Apache Spark pro .NET Spark (C#/F#)
  • Vytvoření definice úlohy importem souboru JSON
  • Export definičního souboru úlohy Apache Sparku do místního prostředí
  • Odeslání definice úlohy Apache Sparku jako dávkové úlohy
  • Přidání definice úlohy Apache Sparku do kanálu

Požadavky

Než začnete s tímto kurzem, ujistěte se, že splňujete následující požadavky:

  • Pracovní prostor Azure Synapse Analytics. Pokyny najdete v tématu Vytvoření pracovního prostoru služby Azure Synapse Analytics.
  • Bezserverový fond Apache Sparku.
  • Účet úložiště ADLS Gen2. Musíte být přispěvatelem dat v objektech blob služby Storage systému souborů ADLS Gen2, se kterým chcete pracovat. Pokud nejste, musíte oprávnění přidat ručně.
  • Pokud nechcete použít výchozí úložiště pracovního prostoru, propojte požadovaný účet úložiště ADLS Gen2 v Synapse Studio.

Vytvoření definice úlohy Apache Spark pro PySpark (Python)

V této části vytvoříte definici úlohy Apache Spark pro PySpark (Python).

  1. Otevřete Synapse Studio.

  2. Můžete přejít do části Ukázkové soubory pro vytváření definic úloh Apache Sparkua stáhnout si ukázkové soubory pro python.zip, pak rozbalit komprimovaný balíček a extrahovat wordcount.py a shakespeare.txt soubory.

    ukázkové soubory

  3. Vyberte Propojená> data ->Azure Data Lake Storage Gen2 a nahrajte wordcount.py a shakespeare.txt do systému souborů ADLS Gen2.

    nahrání souboru Pythonu

  4. Vyberte Centrum pro vývoj , vyberte ikonu + a výběrem definice úlohy Spark vytvořte novou definici úlohy Spark.

    vytvoření nové definice pro Python

  5. V hlavním okně definice úlohy Apache Spark v rozevíracím seznamu Jazyk vyberte PySpark (Python ).

    Výběr pythonu

  6. Vyplňte informace o definici úlohy Apache Spark.

    Vlastnost Popis
    Název definice úlohy Zadejte název definice úlohy Apache Sparku. Tento název lze kdykoli aktualizovat, dokud nebude publikován.
    Ukázka: job definition sample
    Hlavní definiční soubor Hlavní soubor použitý pro úlohu. Vyberte soubor PY z úložiště. Výběrem možnosti Nahrát soubor můžete soubor nahrát do účtu úložiště.
    Ukázka: abfss://…/path/to/wordcount.py
    Argumenty příkazového řádku Volitelné argumenty úlohy.
    Ukázka: abfss://…/path/to/shakespeare.txtabfss://…/path/to/result
    Poznámka: Dva argumenty pro definici ukázkové úlohy jsou oddělené mezerou.
    Referenční soubory Další soubory použité pro referenci v hlavním definičním souboru. Výběrem možnosti Nahrát soubor můžete soubor nahrát do účtu úložiště.
    Fond Sparku Úloha se odešle do vybraného fondu Apache Sparku.
    Verze Sparku Verze Apache Sparku, ve které je fond Apache Sparku spuštěný.
    Exekutory Počet exekutorů, které se mají zadat v zadaném fondu Apache Sparku pro danou úlohu
    Velikost exekutoru Počet jader a paměti, které se mají použít pro exekutory zadané v zadaném fondu Apache Sparku pro danou úlohu
    Velikost ovladače Počet jader a paměti, které se mají použít pro ovladač v zadaném fondu Apache Sparku pro úlohu
    Konfigurace Apache Sparku Konfigurace můžete přizpůsobit přidáním vlastností níže. Pokud vlastnost nepřidáte, použije Azure Synapse výchozí hodnotu, pokud je k dispozici.

    Nastavení hodnoty definice úlohy Spark pro Python

  7. Vyberte Publikovat a uložte definici úlohy Apache Sparku.

    publikování definice py

Vytvoření definice úlohy Apache Spark pro Apache Spark (Scala)

V této části vytvoříte definici úlohy Apache Spark pro Apache Spark (Scala).

  1. Otevřete Azure Synapse Studio.

  2. Můžete přejít do části Ukázkové soubory pro vytváření definic úloh Apache Sparkua stáhnout si ukázkové soubory pro scala.zip, pak rozbalit komprimovaný balíček a extrahovat soubory wordcount.jar a shakespeare.txt .

    Ukázkové soubory scala

  3. Vyberte Propojená> data ->Azure Data Lake Storage Gen2 a nahrajte soubor wordcount.jar a shakespeare.txt do systému souborů ADLS Gen2.

    příprava struktury scala

  4. Vyberte Centrum pro vývoj , vyberte ikonu + a výběrem definice úlohy Spark vytvořte novou definici úlohy Spark. (Ukázková image je stejná jako krok 4 v tématu Vytvoření definice úlohy Apache Spark (Python) pro PySpark.)

  5. V hlavním okně definice úlohy Apache Spark v rozevíracím seznamu Jazyk vyberte Spark(Scala ).

    výběr scala

  6. Vyplňte informace o definici úlohy Apache Spark. Ukázkové informace můžete zkopírovat.

    Vlastnost Popis
    Název definice úlohy Zadejte název definice úlohy Apache Sparku. Tento název lze kdykoli aktualizovat, dokud nebude publikován.
    Ukázka: scala
    Hlavní definiční soubor Hlavní soubor použitý pro úlohu. Vyberte soubor JAR z úložiště. Výběrem možnosti Nahrát soubor můžete soubor nahrát do účtu úložiště.
    Ukázka: abfss://…/path/to/wordcount.jar
    Název hlavní třídy Plně kvalifikovaný identifikátor nebo hlavní třída, která je v hlavním definičním souboru.
    Ukázka: WordCount
    Argumenty příkazového řádku Volitelné argumenty úlohy.
    Ukázka: abfss://…/path/to/shakespeare.txtabfss://…/path/to/result
    Poznámka: Dva argumenty pro definici ukázkové úlohy jsou oddělené mezerou.
    Referenční soubory Další soubory použité pro referenci v hlavním definičním souboru. Výběrem možnosti Nahrát soubor můžete soubor nahrát do účtu úložiště.
    Fond Sparku Úloha se odešle do vybraného fondu Apache Sparku.
    Verze Sparku Verze Apache Sparku, ve které je fond Apache Sparku spuštěný.
    Exekutory Počet exekutorů, které se mají zadat v zadaném fondu Apache Sparku pro danou úlohu
    Velikost exekutoru Počet jader a paměti, které se mají použít pro exekutory zadané v zadaném fondu Apache Sparku pro danou úlohu
    Velikost ovladače Počet jader a paměti, které se mají použít pro ovladač v zadaném fondu Apache Sparku pro úlohu
    Konfigurace Apache Sparku Konfigurace můžete přizpůsobit přidáním vlastností níže. Pokud vlastnost nepřidáte, použije Azure Synapse výchozí hodnotu, pokud je k dispozici.

    Nastavení hodnoty definice úlohy Sparku pro scala

  7. Vyberte Publikovat a uložte definici úlohy Apache Sparku.

    publikování definice scala

Vytvoření definice úlohy Apache Spark pro .NET Spark(C#/F#)

V této části vytvoříte definici úlohy Apache Spark pro .NET Spark(C#/F#).

  1. Otevřete Azure Synapse Studio.

  2. Můžete přejít do části Ukázkové soubory pro vytváření definic úloh Apache Sparkua stáhnout si ukázkové soubory pro dotnet.zip, pak rozbalit komprimovaný balíček a extrahovat wordcount.zip a shakespeare.txt soubory.

    Ukázka dotnet

  3. Vyberte Propojená> data ->Azure Data Lake Storage Gen2 a nahrajte wordcount.zip a shakespeare.txt do systému souborů ADLS Gen2.

    příprava struktury dotnet

  4. Vyberte Centrum pro vývoj , vyberte ikonu + a výběrem definice úlohy Spark vytvořte novou definici úlohy Spark. (Ukázková image je stejná jako krok 4 v tématu Vytvoření definice úlohy Apache Spark (Python) pro PySpark.)

  5. V rozevíracím seznamu Jazyk v hlavním okně Definice úlohy Apache Spark vyberte .NET Spark(C#/F#).

    výběr dotnet

  6. Vyplňte informace o definici úlohy Apache Spark. Ukázkové informace můžete zkopírovat.

    Vlastnost Popis
    Název definice úlohy Zadejte název definice úlohy Apache Sparku. Tento název lze kdykoli aktualizovat, dokud nebude publikován.
    Ukázka: dotnet
    Hlavní definiční soubor Hlavní soubor použitý pro úlohu. Vyberte soubor ZIP, který obsahuje aplikaci .NET pro Apache Spark (tj. hlavní spustitelný soubor, knihovny DLL obsahující uživatelem definované funkce a další požadované soubory) z vašeho úložiště. Výběrem možnosti Nahrát soubor můžete soubor nahrát do účtu úložiště.
    Ukázka: abfss://…/path/to/wordcount.zip
    Hlavní spustitelný soubor Hlavní spustitelný soubor v souboru ZIP hlavní definice.
    Ukázka: WordCount
    Argumenty příkazového řádku Volitelné argumenty úlohy.
    Ukázka: abfss://…/path/to/shakespeare.txtabfss://…/path/to/result
    Poznámka: Dva argumenty pro definici ukázkové úlohy jsou oddělené mezerou.
    Referenční soubory Další soubory, které pracovní uzly potřebují ke spuštění aplikace .NET pro Apache Spark, které nejsou součástí souboru ZIP hlavní definice (tj. závislé soubory JAR, další knihovny DLL funkcí definované uživatelem a další konfigurační soubory). Výběrem možnosti Nahrát soubor můžete soubor nahrát do účtu úložiště.
    Fond Sparku Úloha se odešle do vybraného fondu Apache Sparku.
    Verze Sparku Verze Apache Sparku, ve které je fond Apache Sparku spuštěný.
    Exekutory Počet exekutorů, které se mají zadat v zadaném fondu Apache Sparku pro danou úlohu
    Velikost exekutoru Počet jader a paměti, které se mají použít pro exekutory zadané v zadaném fondu Apache Sparku pro danou úlohu
    Velikost ovladače Počet jader a paměti, které se mají použít pro ovladač v zadaném fondu Apache Sparku pro úlohu
    Konfigurace Apache Sparku Konfigurace můžete přizpůsobit přidáním vlastností níže. Pokud vlastnost nepřidáte, použije Azure Synapse výchozí hodnotu, pokud je k dispozici.

    Nastavení hodnoty definice úlohy Sparku pro dotnet

  7. Vyberte Publikovat a uložte definici úlohy Apache Sparku.

    publikování definice dotnet

Poznámka

V případě konfigurace Apache Sparku platí, že pokud definice úlohy Apache Spark v konfiguraci Apache Sparku nedělá nic zvláštního, použije se při spuštění úlohy výchozí konfigurace.

Vytvoření definice úlohy Apache Spark importem souboru JSON

Do pracovního prostoru Azure Synapse můžete importovat existující místní soubor JSON z nabídky Akce (...) v Průzkumníku definic úloh Apache Spark a vytvořit tak novou definici úlohy Apache Spark.

vytvoření definice importu

Definice úlohy Sparku je plně kompatibilní s rozhraním Livy API. Do místního souboru JSON můžete přidat další parametry pro další vlastnosti Livy (Livy Docs – REST API (apache.org). Můžete také zadat parametry související s konfigurací Sparku ve vlastnosti config, jak je znázorněno níže. Potom můžete importovat soubor JSON zpět a vytvořit novou definici úlohy Apache Sparku pro vaši dávkovou úlohu. Příklad JSON pro import definice Sparku:

   {
  "targetBigDataPool": {
    "referenceName": "socdemolarge",
    "type": "BigDataPoolReference"
  },
  "requiredSparkVersion": "2.3",
  "language": "scala",
  "jobProperties": {
    "name": "robinSparkDefinitiontest",
    "file": "adl://socdemo-c14.azuredatalakestore.net/users/robinyao/wordcount.jar",
    "className": "WordCount",
    "args": [
      "adl://socdemo-c14.azuredatalakestore.net/users/robinyao/shakespeare.txt"
    ],
    "jars": [],
    "files": [],
    "conf": {
      "spark.dynamicAllocation.enabled": "false",
      "spark.dynamicAllocation.minExecutors": "2",
      "spark.dynamicAllocation.maxExecutors": "2"
    },
    "numExecutors": 2,
    "executorCores": 8,
    "executorMemory": "24g",
    "driverCores": 8,
    "driverMemory": "24g"
  }
}

další vlastnosti livy

Export existujícího definičního souboru úlohy Apache Sparku

Existující definiční soubory úloh Apache Sparku můžete exportovat do místního prostředí z nabídky Akce (...) Průzkumník souborů. Soubor JSON můžete dále aktualizovat o další vlastnosti Livy a v případě potřeby ho importovat zpět a vytvořit novou definici úlohy.

vytvořit definici exportu

vytvoření definice exportu 2

Odeslání definice úlohy Apache Sparku jako dávkové úlohy

Po vytvoření definice úlohy Apache Spark ji můžete odeslat do fondu Apache Sparku. Ujistěte se, že jste přispěvatelem dat v objektech blob služby Storage systému souborů ADLS Gen2, se kterým chcete pracovat. Pokud nejste, musíte oprávnění přidat ručně.

Scénář 1: Odeslání definice úlohy Apache Sparku

  1. Otevřete okno definice úlohy Apache Sparku tak, že ho vyberete.

    Otevření definice úlohy Sparku k odeslání

  2. Výběrem tlačítka Odeslat odešlete projekt do vybraného fondu Apache Sparku. Výběrem karty Adresa URL monitorování Sparku zobrazíte LogQuery aplikace Apache Spark.

    Výběrem tlačítka odeslat odešlete definici úlohy Sparku.

    Dialogové okno Odeslání Sparku

Scénář 2: Zobrazení průběhu spuštění úlohy Apache Sparku

  1. Vyberte Monitorovat a pak vyberte možnost Aplikace Apache Spark . Můžete najít odeslanou aplikaci Apache Spark.

    Zobrazení aplikace Spark

  2. Pak vyberte aplikaci Apache Spark a zobrazí se okno úlohy SparkJobDefinition . Průběh provádění úlohy si můžete prohlédnout tady.

    Zobrazení aplikace Spark LogQuery

Scénář 3: Kontrola výstupního souboru

  1. Vyberte Data ->Linked ->Azure Data Lake Storage Gen2 (hozhaobdbj), otevřete složku výsledků vytvořenou dříve, můžete přejít do složky výsledků a zkontrolovat, jestli je výstup vygenerován.

    Zobrazit výstupní soubor

Přidání definice úlohy Apache Sparku do kanálu

V této části přidáte definici úlohy Apache Sparku do kanálu.

  1. Otevřete existující definici úlohy Apache Sparku.

  2. Vyberte ikonu v pravém horním rohu definice úlohy Apache Sparku, zvolte Existující kanál nebo Nový kanál. Další informace najdete na stránce Kanál.

    přidat do kanálu1

    přidat do kanálu2

Další kroky

Dále můžete použít Azure Synapse Studio k vytváření datových sad Power BI a správě dat Power BI. Další informace najdete v článku Propojení pracovního prostoru Power BI s pracovním prostorem Synapse .