Sdílet prostřednictvím


Použití externích balíčků s poznámkovými bloky Jupyter v clusterech Apache Spark ve službě HDInsight

Zjistěte, jak nakonfigurovat poznámkový blok Jupyter v clusteru Apache Spark ve službě HDInsight tak, aby používal externí balíčky Apache maven, které nejsou součástí balíčku Apache Maven .

V úložišti Maven můžete vyhledat úplný seznam dostupných balíčků. Můžete také získat seznam dostupných balíčků z jiných zdrojů. Úplný seznam balíčků, které přispěli komunitou, je například k dispozici ve Spark Packages.

V tomto článku se dozvíte, jak používat balíček spark-csv s poznámkovým blokem Jupyter.

Požadavky

Použití externích balíčků s poznámkovými bloky Jupyter

  1. Přejděte na https://CLUSTERNAME.azurehdinsight.net/jupyter místo, kde CLUSTERNAME je název clusteru Spark.

  2. Vytvořte nový poznámkový blok. Vyberte Nový a pak vyberte Spark.

    Create a new Spark Jupyter Notebook.

  3. Nový poznámkový blok se vytvoří a otevře s názvem Untitled.pynb. Vyberte název poznámkového bloku v horní části a zadejte popisný název.

    Provide a name for the notebook.

  4. Pomocí magie nakonfigurujete %%configure poznámkový blok tak, aby používal externí balíček. V poznámkovýchbloch %%configure Tím se zajistí, že je jádro nakonfigurované tak, aby používalo balíček před spuštěním relace.

    Důležité

    Pokud zapomenete nakonfigurovat jádro v první buňce, můžete použít %%configure parametr, -f ale tím se relace restartuje a veškerý průběh se ztratí.

    Verze HDInsightu Příkaz
    Pro HDInsight 3.5 a HDInsight 3.6 %%configure
    { "conf": {"spark.jars.packages": "com.databricks:spark-csv_2.11:1.5.0" }}
    Pro HDInsight 3.3 a HDInsight 3.4 %%configure
    { "packages":["com.databricks:spark-csv_2.10:1.4.0"] }
  5. Výše uvedený fragment kódu očekává souřadnice Mavenu pro externí balíček v centrálním úložišti Maven. V tomto fragmentu kódu com.databricks:spark-csv_2.11:1.5.0 je souřadnice Mavenu pro balíček spark-csv . Tady je postup, jak sestavíte souřadnice balíčku.

    a. Vyhledejte balíček v úložišti Maven. Pro účely tohoto článku používáme spark-csv.

    b. Z úložiště shromážděte hodnoty GroupId, ArtifactId a Version. Ujistěte se, že hodnoty, které shromáždíte, odpovídají vašemu clusteru. V tomto případě používáme balíček Scala 2.11 a Spark 1.5.0, ale možná budete muset vybrat různé verze pro příslušnou verzi Scala nebo Spark ve vašem clusteru. Verzi Scala ve vašem clusteru můžete zjistit spuštěním scala.util.Properties.versionString jádra Spark Jupyter nebo odesláním Sparku. Verzi Sparku ve vašem clusteru můžete zjistit spuštěním sc.version v poznámkových blocích Jupyter.

    Use external packages with Jupyter Notebook.

    c. Zřetězení tří hodnot oddělených dvojtečkam (:).

    com.databricks:spark-csv_2.11:1.5.0
    
  6. Spusťte buňku kódu pomocí %%configure magie. Tím nakonfigurujete základní relaci Livy tak, aby používala zadaný balíček. V následujících buňkách poznámkového bloku teď můžete balíček použít, jak je znázorněno níže.

    val df = spark.read.format("com.databricks.spark.csv").
    option("header", "true").
    option("inferSchema", "true").
    load("wasb:///HdiSamples/HdiSamples/SensorSampleData/hvac/HVAC.csv")
    

    Pro HDInsight 3.4 a níže byste měli použít následující fragment kódu.

    val df = sqlContext.read.format("com.databricks.spark.csv").
    option("header", "true").
    option("inferSchema", "true").
    load("wasb:///HdiSamples/HdiSamples/SensorSampleData/hvac/HVAC.csv")
    
  7. Potom můžete spustit fragmenty kódu, jak je znázorněno níže, a zobrazit data z datového rámce, který jste vytvořili v předchozím kroku.

    df.show()
    
    df.select("Time").count()
    

Viz také

Scénáře

Vytvoření a spouštění aplikací

Nástroje a rozšíření

Řízení zdrojů