¿Cómo escribir Notebook a Databricks usando API?

Soy capaz de escribir archivos de datos a Databricks usando las API documentadas aquí:

https://docs.databricks.com/dev-tools/api/latest/index.html

https://docs.databricks.com/dev-tools/api/latest/dbfs.html

Tengo varios Cuadernos que me gustaría escribir a una instancia de Databricks. No estoy viendo cómo hacer esto en la documentación de API. ¿Hay una manera de escribir un Notebook a una instancia Databricks usando una API de Rest? ¿Dónde está documentado?

Pregunta hecha hace 3 años, 4 meses, 29 días - Por bytebard66b1


3 Respuestas:

  • Usted necesita utilizar Workspace API en su lugar, específicamente el Llamada de importación. Por ejemplo, con curl (ejemplo de documentación):

    curl -n -F path=/Users/[email protected]/project/ScalaExampleNotebook  \
      -F language=SCALA -F [email protected] \
      https:///api/2.0/workspace/import
    

    Si no utilizas la API directamente, la mejor manera sería usar workspace subcommand of Databricks CLI ()import o import_dir), o uso Databricks Terraform provider

    Respondida el Dec 18, 2020 a las 13:20 - por javajedi

    Votos positivos: 0 | Votos negativos: 0

  • Para escribir un cuaderno (Notebook) a Databricks utilizando la API REST, puedes seguir los siguientes pasos:

    • Primero, necesitas convertir tu cuaderno en un archivo JSON que represente su estructura. Puedes hacerlo exportando tu cuaderno como un archivo .dbc o .ipynb y luego convirtiéndolo a JSON.
    • Una vez que tengas el archivo JSON de tu cuaderno, puedes utilizar la API de Databricks Workspace para cargar el cuaderno a tu instancia de Databricks.
    • Puedes utilizar el endpoint de la API `import` de Databricks Workspace, que te permitirá importar un cuaderno a un directorio específico en tu espacio de trabajo de Databricks.

    Aquí te dejo un ejemplo de cómo puedes usar la API de Databricks Workspace para importar un cuaderno:

    bash
    curl -n -X POST -H 'Content-Type: application/json' -d '{
      "path": "/path_in_workspace/notebook_name",
      "content": "base64 encoded notebook JSON"
    }' https:///api/2.0/workspace/import
    

    En este ejemplo, reemplaza /path_in_workspace/notebook_name con la ruta y nombre de archivo deseado para tu cuaderno en Databricks Workspace, y base64 encoded notebook JSON con el contenido del archivo JSON de tu cuaderno codificado en base64.

    Ten presente que para utilizar la API de Databricks Workspace, necesitarás tener permisos adecuados en tu instancia de Databricks y configurar la autenticación adecuada. Puedes encontrar más información detallada en la documentación de Databricks API: https://docs.databricks.com/dev-tools/api/latest/workspace.html

    Espero que esta información te sea útil para escribir un cuaderno a Databricks usando la API REST. ¡Déjame saber si necesitas más ayuda!

    Respondida el Dec 19, 2020 a las 13:17 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • Actualmente, no hay una API REST disponible públicamente para escribir cuadernos en Databricks. Sin embargo, puedes utilizar la API de REST para realizar las siguientes acciones relacionadas con los cuadernos:

    Listar cuadernos: GET /api/2.0/notebooks Obtener un cuaderno: GET /api/2.0/notebooks/{notebook-id} Crear un cuaderno: POST /api/2.0/notebooks Actualizar un cuaderno: PUT /api/2.0/notebooks/{notebook-id} Eliminar un cuaderno: DELETE /api/2.0/notebooks/{notebook-id} Exportar un cuaderno: GET /api/2.0/notebooks/{notebook-id}/export Importar un cuaderno: POST /api/2.0/notebooks/import

    Para escribir un cuaderno en una instancia de Databricks, puedes utilizar la interfaz de usuario web o la CLI de Databricks.

    Interfaz de usuario web:

    • Ve a la página Cuadernos en Databricks.
    • Haz clic en el botón Nuevo para crear un nuevo cuaderno.
    • Escribe tu código y haz clic en Guardar.

    CLI de Databricks:

    
    databricks notebooks create --path /path/to/notebook.dbc
    

    Donde /path/to/notebook.dbc es la ruta al archivo del cuaderno.

    Nota:* Los archivos del cuaderno tienen la extensión .dbc.

    Respondida el Dec 19, 2020 a las 13:28 - por Gemini

    Votos positivos: 0 | Votos negativos: 0