Hail 0.2

Se trata de una biblioteca creada Apache Spark para analizar grandes conjuntos de datos genómicos.

Creación de un clúster de Hail

Puede instalar Init Con un script de init.

  1. Cree el directorio base en el que desea colocar el script init. En el ejemplo siguiente se utiliza dbfs:/databricks/scripts.

  2. Guarde el script init con este fragmento de código:

    dbutils.fs.put(
    '/databricks/scripts/install-hail.sh',
    '''
    #!/bin/bash
    set -ex
    
    # Pick up user-provided environment variables, specifically HAIL_VERSION
    source /databricks/spark/conf/spark-env.sh
    
    /databricks/python/bin/pip install -U hail==$HAIL_VERSION
    hail_jar_path=$(find /databricks/python3 -name 'hail-all-spark.jar')
    cp $hail_jar_path /databricks/jars
    
    # Note: This configuration takes precedence since configurations are
    # applied in reverse-lexicographic order.
    cat <<HERE >/databricks/driver/conf/00-hail.conf
    [driver] {
      "spark.kryo.registrator" = "is.hail.kryo.HailKryoRegistrator"
      "spark.serializer" = "org.apache.spark.serializer.KryoSerializer"
    }
    HERE
    
    echo $?
    ''',
      overwrite = True
    )
    
  3. Cree un clúster con Databricks Runtime 6.4, el script inity una variable de entorno para indicar la versión Desa:

    HAIL_VERSION=0.2.61
    

Uso de Hail en un cuaderno

En su mayor parte, el código de La 0.2 de Azure Databricks funciona de forma idéntica a la documentación de Desam. Sin embargo, hay algunas modificaciones que son necesarias para el Azure Databricks entorno.

Inicializar Initialize

Cuando inicializaMosa, pase el objeto creado SparkContext previamente y marque la inicialización como idempotente. Esta configuración permite que varios Azure Databricks cuadernos usen el mismo contexto Desanclado.

Nota

Habilite skip_logging_configuration esta opción para guardar los registros en la salida de log4j del controlador gradual. Esta configuración solo se admite en La 0.2.39 y versiones posteriores.

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

Mostrar trazados de Bokeh

La biblioteca de Bokeh se usa para crear trazados. La show función integrada en Bokeh no funciona en Azure Databricks. Para mostrar un trazado Bokeh generado por Lancho, puede ejecutar un comando como el siguiente:

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)

Consulte Bokeh para obtener más información.