Compartir a través de


Uso del conector de Databricks para conectarse a otra área de trabajo de Databricks

En este artículo se proporcionan ejemplos de sintaxis del uso del conector de Databricks para conectarse a otra área de trabajo de Databricks. Este conector aprovecha el controlador JDBC de Databricks, que se incluye en Databricks Runtime 13.3 LTS y versiones posteriores.

Importante

Para la mayoría de las operaciones de uso compartido de datos, Databricks recomienda Delta Sharing. Consulte ¿Qué es delta sharing?. También puede preferir la federación de Lakehouse para administrar consultas en datos de otras áreas de trabajo de Databricks. Consulte ¿Qué es la Lakehouse Federation?.

Conexión a otra área de trabajo de Databricks

El conector de Databricks Spark permite conectarse a los recursos de proceso configurados en otro área de trabajo de Databricks y devolver resultados al área de trabajo de Azure Databricks actual. Debe tener acceso a la capacidad de cómputo activa en ambas áreas de trabajo para que las consultas tengan éxito.

El controlador JDBC está registrado para jdbc:databricks:// las direcciones URL. Debe configurar y usar un token de acceso personal que le conceda permisos en los recursos del área de trabajo a los que se accede de forma remota. Consulte la API de administración de tokens.

Nota:

Si tiene una biblioteca JDBC de Databricks asociada al clúster, la versión de biblioteca adjunta al clúster se usa en lugar de la versión incluida en Databricks Runtime.

Lee datos de otra área de trabajo de Databricks.

Puede especificar el formato databricks para usar el conector de Spark de Databricks al leer datos, como en el ejemplo siguiente:

df = (spark.read
  .format("databricks")
  .option("host", "adb-<workspace-id>.<random-number>.azuredatabricks.net")
  .option("httpPath", "/sql/1.0/warehouses/<warehouse-id>")
  .option("personalAccessToken", "<auth-token>")
  .option("dbtable", "<table-name>")
  .load()
)

Creación de una tabla externa en otro área de trabajo de Databricks

Puede registrar una tabla externa en un área de trabajo de Azure Databricks vinculada a un área de trabajo de Databricks independiente.

En el ejemplo siguiente se muestra esta sintaxis mediante la secret función para obtener las credenciales almacenadas con secretos de Databricks:

Nota:

Para obtener más información sobre los secretos de Databricks, consulte función secret.

CREATE TABLE databricks_external_table
USING databricks
OPTIONS (
  host 'adb-<workspace-id>.<random-number>.azuredatabricks.net',
  httpPath '/sql/1.0/warehouses/<warehouse-id>',
  personalAccessToken secret('<scope>', '<token>'),
  dbtable '<table-name>'
);