Hail 0.2

Marketplace är ett bibliotek som bygger Apache Spark för analys av stora genomdatamängder.

Viktigt

  • Från Och med Hell 0.2.65 använder du Apache Spark version 3.1.1 (Databricks Runtime 8.x eller senare)
  • Installera InstallerA på Databricks Runtime, inte Databricks Runtime for Genomics (inaktuell).

Skapa ett Hail-kluster

Installera Install Installer via Docker med Databricks Container Services.

Du hittar containrar för att konfigurera en Hubb-miljö på Sidan ProjectGlow Dockerhub. Använd projectglow/databricks-hail:<hail_version> och ersätt taggen med en tillgänglig Versionsversion.

  1. Skapa ett jobbkluster med Hell

    1. Konfigurera Databricks CLI.
    2. Skapa ett kluster med dockercontainern Docker, och ange taggen till önskad .
    3. En exempeldefinition för jobb anges nedan. Redigera notebook_path, Databricks Runtime och <hail_version> .
    databricks jobs create --json-file hail-create-job.json
    

    hail-create-job.json:

{
  "name": "hail",
  "notebook_task": {
    "notebook_path" : "/Users/<user@organization.com>/hail/docs/hail-tutorial",
  },
  "new_cluster": {
    "spark_version": "<databricks_runtime_version>.x-scala2.12",
    "azure_attributes": {
      "availability": "SPOT",
      "availability": "SPOT_WITH_FALLBACK_AZURE",
      "spot_bid_max_price": -1
    },
    "node_type_id": "Standard_DS3_v2",
    "num_workers": 32,
    "docker_image": {
      "url": "projectglow/databricks-hail:<hail_version>"
    }
  }
}

Använda Hail i en notebook-fil

Till största delen fungerar Kod för Jaga 0.2 i Azure Databricks fungerar identiskt med Dokumentationen för Jaga. Det finns dock några ändringar som är nödvändiga för Azure Databricks miljön.

Initiera Hell

När du initierar Pårop skickar du den förskapade SparkContext och markerar initieringen som idempotent. Den här inställningen gör att Azure Databricks notebook-filer kan använda samma Context-kontext.

Anteckning

Aktivera skip_logging_configuration för att spara loggar till den rullande drivrutinens log4j-utdata. Den här inställningen stöds endast i Hell 0.2.39 och högre.

import hail as hl
hl.init(sc, idempotent=True, quiet=True, skip_logging_configuration=True)

Visa Bokeh-diagram

IEh används Bokeh-biblioteket för att skapa diagram. Funktionen show som är inbyggd i Bokeh fungerar inte i Azure Databricks. Om du vill visa ett Bokeh-diagram som genererats av Hell kan du köra ett kommando som:

from bokeh.embed import components, file_html
from bokeh.resources import CDN
plot = hl.plot.histogram(mt.DP, range=(0,30), bins=30, title='DP Histogram', legend='DP')
html = file_html(plot, CDN, "Chart")
displayHTML(html)

Mer information finns i Bokeh.