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 předinstalovány v clusteru.

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ů. Například úplný seznam balíčků, které byly přispěny komunitou, je 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, kde CLUSTERNAME představuje název vašeho clusteru Spark.

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

    Vytvořte nový poznámkový blok Jupyter Sparku.

  3. Nový poznámkový blok se vytvoří a otevře s názvem Untitled.pynb. Vyberte název poznámkového bloku nahoře a zadejte přívětivý název.

    Zadejte název poznámkového bloku.

  4. Pomocí magie nakonfigurujete %%configure poznámkový blok tak, aby používal externí balíček. V poznámkových blocích, které používají externí balíky, se ujistěte, že zavoláte %%configure kouzlo v první buňce kódu. 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 spolu s parametrem -f, ale tím se relace restartuje a veškerý průběh bude ztracen.

    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 na jádře Spark Jupyter nebo na Spark submit. Verzi Sparku ve vašem clusteru můžete zjistit spuštěním sc.version v poznámkových blocích Jupyter.

    Používejte externí balíčky s poznámkovým blokem Jupyter.

    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 relaci Livy, aby používala balíček, který jste poskytli. 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ů