Creación de un metastore de Unity Catalog
En este artículo se muestra cómo crear un metastore de Unity Catalog y vincularlo a áreas de trabajo.
Importante
En el caso de las áreas de trabajo habilitadas para Unity Catalog automáticamente, las instrucciones de este artículo no son necesarias. Databricks comenzó a habilitar nuevas áreas de trabajo para Unity Catalog automáticamente el 9 de noviembre de 2023, mediante un proceso de implementación gradual entre cuentas. Debe seguir las instrucciones de este artículo solo si tiene un área de trabajo y aún no tiene un metastore en la región del área de trabajo. Para determinar si ya existe un metastore en su región, consulte Habilitación automática de Unity Catalog.
Un metastore es el contenedor de nivel superior de los datos de Unity Catalog. Los metastores de Unity Catalog registran metadatos sobre objetos protegibles (como tablas, volúmenes, ubicaciones externas y recursos compartidos) y los permisos que rigen el acceso a ellos. En cada metastore, se expone un espacio de nombres de tres niveles (catalog
.schema
.table
) que sirve de ayuda a la hora de organizar los datos. Debe tener un metastore para cada región en la que opera su organización. Para trabajar con Unity Catalog, los usuarios deben estar en un área de trabajo que esté asociada a un metastore de su región.
Para crear un metastore, haga lo siguiente:
En la cuenta de Azure, cree opcionalmente una ubicación de almacenamiento para el almacenamiento en el nivel de metastore de las tablas y volúmenes administrados.
Para obtener información que le ayude a decidir si necesita almacenamiento de nivel de metastore, consulte (Opcional) Creación de almacenamiento de nivel de metastore y Los datos están separados físicamente en el almacenamiento.
En la cuenta de Azure, cree una identidad administrada de Azure o una entidad de servicio que proporcione acceso a esa ubicación de almacenamiento.
En Azure Databricks, cree el metastore, asocie la ubicación de almacenamiento y asigne áreas de trabajo al metastore.
Nota:
Además de los enfoques descritos de este artículo, también puede crear un metastore mediante el proveedor Terraform de Databricks y, en concreto, el recurso databricks_metastore. Para permitir que Unity Catalog acceda al metastore, use databricks_metastore_data_access. Para vincular áreas de trabajo a un metastore, use databricks_metastore_assignment.
Antes de empezar
Antes de empezar, debe familiarizarse con los conceptos básicos de Unity Catalog, incluidos los metastores y el almacenamiento administrado. Consulte ¿Qué es Unity Catalog?
También debe confirmar que cumple los siguientes requisitos para todos los pasos de configuración:
Debe ser administrador de la cuenta de Azure Databricks.
El primer administrador de cuentas de Azure Databricks debe ser un administrador global de Microsoft Entra ID en el momento en que inicie sesión por primera vez en la consola de la cuenta de Azure Databricks. Tras el primer inicio de sesión, ese usuario se convierte en administrador de cuentas de Azure Databricks y ya no necesita el rol de administrador global de Microsoft Entra ID para acceder a la cuenta de Azure Databricks. El primer administrador de la cuenta puede asignar usuarios del inquilino de Microsoft Entra ID como administradores de cuenta adicionales (que a su vez pueden asignar más administradores de cuentas). Los administradores de cuentas adicionales no requieren roles específicos en Microsoft Entra ID.
Las áreas de trabajo que adjunte al metastore deben estar en el plan Premium de Azure Databricks.
Si desea configurar el almacenamiento raíz de nivel de metastore, debe tener permiso para crear lo siguiente en el inquilino de Azure:
- Una cuenta de almacenamiento que se va a utilizar con Azure Data Lake Storage Gen2. Consulte Creación de una cuenta de almacenamiento para su uso con Azure Data Lake Storage Gen2 habilitado.
- Un nuevo recurso que va a contener una identidad administrada asignada por el sistema. Esto requiere que sea colaborador o propietario de un grupo de recursos en cualquiera de las suscripciones del inquilino.
Paso 1 (Opcional): Creación de un contenedor de almacenamiento para el almacenamiento administrado en el nivel de metastore
En este paso, que es opcional, creará una cuenta de almacenamiento y un contenedor para almacenar datos administrados de tablas y volúmenes en el nivel de metastore. Para determinar si necesita almacenamiento de nivel de metastore, consulte (Opcional) Creación de almacenamiento de nivel demetastore.
Cree una cuenta de almacenamiento para Azure Data Lake Storage Gen2.
Esta cuenta de almacenamiento contendrá las tablas y volúmenes administrados de Unity Catalog. Debe ser una cuenta de Azure Data Lake Storage Gen2 en la misma región que las áreas de trabajo de Azure Databricks. Consulte Creación de una cuenta de almacenamiento para su uso con Azure Data Lake Storage Gen2 habilitado.
Cree un contenedor de almacenamiento que contenga los datos administrados de tablas y volúmenes en el nivel de metastore.
Solo puede crear una tienda de metadatos por región. Debe usar la misma región para el metastore y el contenedor de almacenamiento.
Administración de paneles con las API del área de trabajo: Azure Databricks Consulte Especificar una ubicación de almacenamiento administrada en Unity Catalog.
Anote el URI de ADLSv2 del contenedor, que tiene el formato siguiente:
abfss://<container-name>@<storage-account-name>.dfs.core.windows.net/<metastore-name>
Durante los siguientes pasos, reemplace el elemento
<storage-container>
con el siguiente URI.
Paso 2 (Opcional): Creación de una identidad administrada para acceder a la ubicación de almacenamiento administrada
En este paso, que solo es necesario si completó el paso 1, creará un conector de acceso de Azure Databricks que contiene una identidad administrada y le dará acceso al contenedor de almacenamiento.
Siga las instrucciones que se indican en Uso de identidades administradas de Azure en Unity Catalog para acceder al almacenamiento.
Nota:
Puede usar una identidad administrada de Azure o una entidad de servicio como identidad de autorización de acceso al contenedor de almacenamiento del metastore. Databricks recomienda encarecidamente el uso de identidades administradas, ya que estas no requieren que mantenga credenciales ni rote secretos, y le permiten conectarse a una cuenta de Azure Data Lake Storage Gen2 protegida por un firewall de almacenamiento. Si desea usar una entidad de servicio, consulte Creación de un almacenamiento administrado de Unity Catalog mediante una entidad de servicio (heredada).
Paso 3: Creación del metastore y asociación de un área de trabajo
Cada región de Azure Databricks requiere su propio metastore de Unity Catalog.
Debe crear un metastore para cada región donde opere su organización. Cada una de estos metastores regionales puede vincularse con cualquier número de áreas de trabajo de la misma región. Cada área de trabajo vinculada tendrá la misma vista de los datos del metastore y el control de acceso a datos se puede administrar para todas las áreas de trabajo a la vez. Puede acceder a los datos de varios metastores mediante el protocolo Delta Sharing.
Si decide crear un almacenamiento de nivel de metastore, el metastore usará el contenedor de almacenamiento y la identidad administrada de Azure que creó en los pasos anteriores.
Para crear un metastore:
Si decide crear almacenamiento de nivel de metastore, asegúrese de que tiene la ruta de acceso al contenedor de almacenamiento y el identificador de recurso del conector de acceso de Azure Databricks que creó en la tarea anterior.
Inicie sesión en el área de trabajo como administrador de la cuenta.
Haga clic en su nombre de usuario en la barra superior del área de trabajo de Azure Databricks y seleccione Administrar cuenta.
Inicie sesión en la consola de la cuenta de Azure Databricks.
Haga clic en Catálogo.
Haga clic en Crear metastore.
Escriba lo siguiente:
Nombre para el metastore.
Región en la que se implementará el metastore.
Debe estar en la misma región que las áreas de trabajo que desea usar para acceder a los datos. Si decide crear un contenedor de almacenamiento para el almacenamiento de nivel de metastore, esa región también debe ser la misma.
(Opcional) Ruta de acceso de ADLS Gen 2: escriba la ruta de acceso al contenedor de almacenamiento que va a usar como almacenamiento raíz para el metastore.
El prefijo
abfss://
se agrega de manera automática.(Opcional) Id. del conector de acceso: escriba el id. de recurso del conector de acceso de Azure Databricks con el siguiente formato:
/subscriptions/12f34567-8ace-9c10-111c-aea8eba12345c/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>
Haga clic en Crear.
Cuando se le solicite, seleccione áreas de trabajo para vincularlas al metastore.
Para más información, consulte Habilitación de un área de trabajo para Unity Catalog.
Transfiera el rol de administrador de metastore a un grupo.
El usuario que crea un metastore es su propietario, que también se denomina administrador de metastore. El administrador de metastore puede crear objetos de nivel superior en el metastore, como catálogos, y puede administrar el acceso a las tablas y a otros objetos. Databricks recomienda reasignar el rol de administrador de metastore a un grupo. Consulte Asignación de un administrador de metastore.
Habilite la administración de Azure Databricks de cargas en volúmenes administrados.
Azure Databricks emplea el uso compartido de recursos entre orígenes (CORS) para cargar datos en volúmenes administrados de Unity Catalog. Consulte Configuración de la cuenta de almacenamiento del catálogo de Unity para CORS.