> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kameleoon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Configuración de Databricks

> Configure un service principal de Databricks, un personal access token y permisos de esquema para conectar su SQL warehouse de Databricks con Kameleoon.

<Note>
  Las integraciones con data warehouses están disponibles como complemento premium para nuestros módulos Web Experimentation y Feature Experimentation. Para obtener más información, póngase en contacto con su Customer Success Manager.
</Note>

Este artículo explica cómo configurar una conexión con su SQL warehouse de Databricks. Contiene varios pasos de configuración que deben realizarse en su cuenta de Databricks. Recomendamos que estos pasos los realice el administrador de su cuenta de Databricks.

Con la integración de Databricks, puede simplificar la recuperación de datos para campañas segmentadas y experiencias de usuario personalizadas.

**Ventajas clave:**

* Permite una recopilación de datos precisa, mejorando la segmentación de audiencias para campañas personalizadas adaptadas a las necesidades específicas de la audiencia.
* Impulsa las métricas de objetivos para mejorar el seguimiento del rendimiento en tiempo real.

## Consideraciones

Tenga en cuenta lo siguiente al usar esta integración:

* **Volumen de datos:** Tenga en cuenta el volumen de datos con el que planea interactuar, ya que puede afectar al rendimiento de las consultas y a los costes.
* **Complejidad de las consultas:** Las consultas complejas pueden requerir más tiempo y recursos para ejecutarse. Optimice sus consultas para mayor eficiencia.
* **Privacidad de los datos:** Asegúrese de cumplir con las normativas de privacidad de datos al manejar datos de usuario dentro de su warehouse.
* **Control de acceso:** Implemente los controles de acceso adecuados para limitar quién puede configurar y utilizar la integración dentro de su organización.
* **Esquema de datos:** Mantenga un esquema de datos claro y coherente para facilitar la recuperación y el análisis de los datos.
* **Monitorización:** Supervise regularmente el uso de su data warehouse para gestionar eficazmente los costes y el rendimiento.
* **Documentación:** Mantenga la documentación de consultas, configuraciones y procesos de integración para facilitar la colaboración y la resolución de problemas.

## Requisitos previos

Para configurar esta integración, necesita la siguiente información:

* Personal access token (PAT) de Databricks.
* Acceso adecuado para crear esquemas de Databricks y conceder acceso.

### Configuración

#### 1. Crear un personal access token (PAT)

Kameleoon se autenticará en su SQL warehouse de Databricks con un personal access token. Debería crear un [service principal](https://docs.databricks.com/aws/en/admin/users-groups/service-principals) de Databricks y, a continuación, crear un PAT para esa cuenta de servicio.

Una vez creado un service principal, puede generar un PAT con la CLI de Databricks, utilizando el "Application Id" del Service Principal que puede encontrar en la página de gestión de Service Principal de la interfaz de usuario de Databricks.

```shell theme={null}
databricks token-management create-obo-token {Service Principal Application Id} --lifetime-seconds 7776000 --comment "Token for Kameleoon service principal"
```

#### 2. Crear el esquema kameleoon\_configuration

##### Cuando se utiliza Databricks como fuente

Cree un esquema dedicado para la configuración de polling de Kameleoon dentro del catalog que contiene los datos que Kameleoon consultará. Este esquema debe llamarse `kameleoon_configuration`. También debe conceder acceso de lectura y escritura al Service Principal que Kameleoon utilizará. Aquí tiene algunos comandos de ejemplo:

```sql theme={null}
CREATE SCHEMA my_catalog.kameleoon_configuration;
```

```sql theme={null}
GRANT CREATE TABLE ON SCHEMA my_catalog.kameleoon_configuration TO `{Service Principal Application Id}`;
```

```sql theme={null}
GRANT SELECT ON SCHEMA my_catalog.kameleoon_configuration TO `{Service Principal Application Id}`;
```

**Cuando se utiliza Databricks como destino:**

```sql theme={null}
CREATE SCHEMA my_catalog.kameleoon_configuration;
```

```sql theme={null}
GRANT CREATE TABLE ON SCHEMA my_catalog.kameleoon_events TO `{Service Principal Application Id}`;
```

Como en los comandos anteriores, deberá sustituir `{Service Principal Application Id}` por el application id de su service principal.

<Note>
  El prefijo `my_catalog` puede omitirse cuando se ejecutan consultas directamente en el catalog necesario.
</Note>

#### 3. Conceder acceso de lectura a sus datos

Kameleoon debe tener acceso a las tablas de las que desea leer o en las que escribir. Esto puede lograrse con comandos como:

**Utilizando Databricks como fuente:**

```sql theme={null}
GRANT SELECT ON my_catalog.user_data.user_account_table TO `{Service Principal Application Id}`; // will grant read rights on a specific table
```

```sql theme={null}
GRANT SELECT ON SCHEMA my_catalog.user_data TO `{Service Principal Application Id}`; // will grant read rights on all tables within a schema
```

**Utilizando Databricks como destino:**

```sql theme={null}
GRANT INSERT ON SCHEMA my_catalog.kameleoon_events TO `{Service Principal Application Id}`; // will grant write rights on all tables within a schema
```

Nota: el prefijo `my_catalog` puede omitirse cuando se ejecutan consultas directamente en el catalog necesario.

#### 4. Autorizar las IPs de Kameleoon (Opcional)

Si implementa [listas de acceso de IP](https://docs.databricks.com/aws/en/security/network/front-end/ip-access-list), póngase en contacto con su account manager de Kameleoon para que pueda proporcionarle la lista de IPs de Kameleoon que debe autorizar.
