Inicio rápido: Ejecución de un trabajo de Spark en Azure Databricks Workspace con Azure Portal

En este inicio rápido usará Azure Portal para crear un área de trabajo de Azure Databricks con un clúster de Apache Spark. Ejecutará un trabajo en el clúster y usará gráficos personalizados para generar informes en tiempo real a partir de datos de seguridad de Seattle.

Prerrequisitos

  • Una suscripción a Azure: cree una cuenta gratuita. Este tutorial no puede llevarse a cabo mediante una suscripción de evaluación gratuita de Azure. Si tiene una cuenta gratuita, vaya a su perfil y cambiar la suscripción a pago por uso. Para más información consulte el sitio de cuentas gratuitas de Azure. Después, quite el límite de gasto y solicite un aumento de la cuota para las vCPU de su región. Cuando crea su área de trabajo de Azure Databricks, puede seleccionar el plan de tarifa de la Trial (Premium - 14-Days Free DBUs) para que el área de trabajo acceda a las DBU Premium de Azure Databricks gratis durante 14 días.

  • Inicie sesión en Azure Portal.

Nota

Si desea crear un área de trabajo de Azure Databricks en la nube comercial de Azure que contenga certificaciones de cumplimiento del gobierno de EE. UU. como FedRAMP High, póngase en contacto con su representante de Microsoft o de Databricks para acceder a esta experiencia.

Creación de un área de trabajo de Azure Databricks

En esta sección, se crea un área de trabajo de Azure Databricks mediante Azure Portal o la CLI de Azure.

  1. En la Azure Portal, seleccione Crear un recursoAnalyticsAzure Databricks.

    Databricks en Azure Portal

  2. En Azure Databricks Service, proporcione los valores para crear un área de trabajo de Databricks.

    Creación de un área Azure Databricks creaciónde un área Azure Databricks

    Proporcione los valores siguientes:

    Propiedad Descripción
    Workspace name (Nombre del área de trabajo) Proporcione un nombre para el área de trabajo de Databricks
    Suscripción En el cuadro desplegable, seleccione la suscripción de Azure.
    Grupos de recursos Especifique si desea crear un nuevo grupo de recursos o utilizar uno existente. Un grupo de recursos es un contenedor que almacena los recursos relacionados con una solución de Azure. Para más información, consulte Información general del grupo de recursos de Azure.
    Ubicación Seleccione Oeste de EE. UU. 2. Para otras regiones disponibles, consulte Productos disponibles por región.
    Plan de tarifa Elija entre Estándar, Premium o Evaluación gratuita. Para más información sobre estos planes, consulte la página de precios de Databricks.
  3. Seleccione Revisar y crear y, a continuación, Crear. Se tarda unos minutos en crear el área de trabajo. Durante la creación del área de trabajo, puede ver el estado de implementación en Notificaciones. Una vez finalizado este proceso, la cuenta de usuario se agrega automáticamente como usuario administrador al área de trabajo.

    Icono de implementación de Databricks Icono

    Cuando se produce un error en una implementación del área de trabajo, esta todavía se crea en un estado de error. Elimine el área de trabajo con errores y cree una nueva que resuelva los errores de implementación. Al eliminar el área de trabajo con errores, también se eliminan el grupo de recursos administrados y los recursos implementados correctamente.

Creación de un clúster de Spark en Databricks

Nota

Para usar una cuenta gratuita para crear el clúster de Azure Databricks, antes de crear el clúster, vaya a su perfil y cambie su suscripción a pago por uso. Para más información consulte el sitio de cuentas gratuitas de Azure.

  1. En Azure Portal, vaya al área de trabajo de Databricks que ha creado y, después, haga clic en Launch Workspace (Iniciar área de trabajo).

  2. Se le redirigirá al portal de Azure Databricks. En el portal, haga clic en Nuevo clúster.

    Databricks en Azure

  3. En la página Nuevo clúster, proporcione los valores para crear un clúster.

    Creación de un clúster de Databricks Spark en Azure Creaciónde un clúster de

    Acepte los demás valores predeterminados, salvo los siguientes:

    • Escriba un nombre para el clúster.

    • Para este artículo, cree un clúster con el runtime (5.X, 6.X, 7.X).

    • Asegúrese de activar la casilla Finalizar después de __ minutos de inactividad. Proporcione una duración (en minutos) para terminar el clúster, si este no se usa.

      Seleccione Create cluster (Crear clúster). Una vez que el clúster se está ejecutando, puede asociarle notebooks y ejecutar trabajos de Spark.

Para obtener más información sobre la creación de clústeres, consulte Create a Spark cluster in Azure Databricks (Creación de un clúster de Spark en Azure Databricks).

Ejecución de un trabajo de Spark SQL

Realice las tareas siguientes para crear un cuaderno en Databricks, configúrelo para leer los datos desde una instancia de Azure Open Datasets y, luego, ejecute un trabajo de Spark SQL sobre los datos.

  1. En el panel izquierdo, seleccione Azure Databricks. En Common Tasks (Tareas comunes), seleccione New Notebook (Nuevo cuaderno).

    Creación de un cuaderno:

  2. En el cuadro de diálogo Create Notebook (Crear cuaderno), seleccione Python como lenguaje y seleccione el clúster de Spark que creó anteriormente.

    Especificación de los detalles delcuaderno Creación de un cuaderno en

    Seleccione Crear.

  3. En este paso, creará un DataFrame de Spark con los datos de seguridad de Seattle de Azure Open Datasets y usará SQL para consultar los datos.

    El siguiente comando establece la información de acceso de almacenamiento de Azure. Pegue este código de PySpark en la primera celda y use Mayús + Intro para ejecutarlo.

    blob_account_name = "azureopendatastorage"
    blob_container_name = "citydatacontainer"
    blob_relative_path = "Safety/Release/city=Seattle"
    blob_sas_token = r"?st=2019-02-26T02%3A34%3A32Z&se=2119-02-27T02%3A34%3A00Z&sp=rl&sv=2018-03-28&sr=c&sig=XlJVWA7fMXCSxCKqJm8psMOh0W4h7cSYO28coRqF2fs%3D"
    

    El comando siguiente permite que Spark lea desde Blob Storage de forma remota. Pegue este código de PySpark en la siguiente celda y use Mayús + Intro para ejecutarlo.

    wasbs_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path)
    spark.conf.set('fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name), blob_sas_token)
    print('Remote blob path: ' + wasbs_path)
    

    El siguiente comando crea un DataFrame. Pegue este código de PySpark en la siguiente celda y use Mayús + Intro para ejecutarlo.

    df = spark.read.parquet(wasbs_path)
    print('Register the DataFrame as a SQL temporary view: source')
    df.createOrReplaceTempView('source')
    
  4. Ejecute una instrucción SQL para devolver las 10 primeras filas de datos de la vista temporal llamada source. Pegue este código de PySpark en la siguiente celda y use Mayús + Intro para ejecutarlo.

    print('Displaying top 10 rows: ')
    display(spark.sql('SELECT * FROM source LIMIT 10'))
    
  5. Verá un resultado tabular como se muestra en la siguiente captura de pantalla (solo se ven algunas columnas):

    Datos de ejemplo Datos

  6. Ahora, creará una representación visual de estos datos para mostrar cuántos eventos de seguridad se generan mediante Citizens Connect App y City Worker App en lugar de otros orígenes. En la parte inferior de la salida tabular, haga clic en el icono Bar chart (Gráfico de barras) y, luego, en Plot Options (Opciones de trazado).

    Crear gráfico de barras

  7. En Personalizar trazado, arrastre y coloque los valores como se muestra en la captura de pantalla.

    Personalización del gráfico circular

    • Establezca Keys (Claves) en source.

    • Establezca Valores en \id.

    • Establezca Agregación en COUNT (recuento).

    • Establezca Display type (Tipo de visualización) en Pie chart (Gráfico de barras).

      Haga clic en Aplicar.

Limpieza de recursos

Cuando haya terminado el artículo, puede finalizar el clúster. Para ello, desde el área de trabajo de Azure Databricks, en el panel izquierdo, seleccione Clusters (Clústeres). En el clúster que desea finalizar, mueva el cursor sobre el botón de puntos suspensivos en la columna Actions (Acciones) y seleccione el icono Terminate (Finalizar).

Detener un clúster de Databricks

Si no finaliza manualmente el clúster, este se detendrá automáticamente si seleccionó la casilla Terminate after __ minutes of inactivity (Finalizar después de __ minutos de inactividad) al crear el clúster. En tal caso, el clúster se detiene automáticamente si ha estado inactivo durante el tiempo especificado.

Pasos siguientes

En este artículo, creó un clúster de Spark en Azure Databricks y ejecutó un trabajo de Spark mediante datos de Azure Open Datasets. También puede mirar Spark data sources (Orígenes de datos de Spark) para aprender a importar datos desde otros orígenes de datos en Azure Databricks. Vaya al siguiente artículo para aprender cómo realizar una operación ETL (extraer, transformar y cargar datos) mediante Azure Databricks.