Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este tutorial se ingieren datos en almacenes de lago de datos de Fabric en formato Delta Lake. Definimos algunos términos importantes aquí:
Almacén de lago de datos: es una colección de archivos, carpetas y tablas que representan una base de datos sobre un lago de datos. El motor de Spark y el motor de SQL usan recursos lakehouse para el procesamiento de macrodatos. Cuando se usan tablas con formato Delta de código abierto, ese procesamiento incluye funcionalidades mejoradas de transacciones ACID.
Delta Lake: Delta Lake es una capa de almacenamiento de código abierto que aporta transacciones ACID, administración escalable de metadatos y procesamiento de datos por lotes y streaming a Apache Spark. Como formato de tabla de datos, Delta Lake extiende archivos de datos Parquet con un registro de transacciones basado en archivos para transacciones ACID y control de metadatos escalables.
Los conjuntos de datos abiertos de Azure son conjuntos de datos públicos mantenidos que agregan características específicas del escenario a las soluciones de aprendizaje automático. Esto conduce a modelos más precisos. Los conjuntos de datos abiertos son recursos en la nube que residen en Microsoft Azure Storage. Apache Spark, API REST, Data Factory y otras herramientas pueden acceder a Open Datasets.
En este tutorial, usará Apache Spark para:
- Lee datos de contenedores de Azure Open Datasets.
- Escribir datos en una tabla delta de Fabric Lakehouse.
Prerrequisitos
Obtenga una suscripción a Microsoft Fabric. También puede registrarse para obtener una evaluación gratuita de Microsoft Fabric.
Inicie sesión en Microsoft Fabric.
Use el conmutador de experiencia en la parte inferior izquierda de la página principal para cambiar a Fabric.
- Agregue una instancia de Lakehousea este cuaderno. En este tutorial, descargará datos de un blob público y, a continuación, almacenará los datos en el recurso lakehouse.
Sigue el progreso en un cuaderno
El cuaderno 1-ingest-data.ipynb acompaña a este tutorial.
A fin de abrir el cuaderno complementario para este tutorial, siga las instrucciones de Preparación del sistema para los tutoriales de ciencia de datos, para importar el cuaderno al área de trabajo.
Si prefiere copiar y pegar el código de esta página, puede crear un cuaderno nuevo.
Asegúrese de adjuntar una instancia de lakehouse al cuaderno antes de empezar a ejecutar código.
Datos de abandono bancario
El conjunto de datos contiene información de estado de abandono para 10.000 clientes. También incluye atributos que podrían influir en la renovación, por ejemplo:
- Puntuación de crédito
- Ubicación geográfica (Alemania, Francia, España)
- Género (masculino, femenino)
- Edad
- Antigüedad (el número de años que el cliente era un cliente en ese banco)
- Saldo de la cuenta
- Salario estimado
- Número de productos que un cliente compró a través del banco
- Estado de la tarjeta de crédito (si un cliente tiene o no una tarjeta de crédito)
- Estado de miembro activo (si el cliente tiene o no un estado de cliente bancario activo)
El conjunto de datos también incluye estas columnas:
- número de fila
- id. de cliente
- apellidos del cliente
Estas columnas no deben influir en la decisión de un cliente de abandonar el banco.
El cierre de la cuenta bancaria de un cliente define la pérdida de ese cliente. La columna del conjunto de datos exited
hace referencia al abandono del cliente. Hay poco contexto sobre estos atributos disponibles, por lo que debe continuar sin información en segundo plano sobre el conjunto de datos. Nuestro objetivo es comprender cómo contribuyen estos atributos al exited
estado.
Filas del conjunto de datos de muestra
"CustomerID" | "Apellido" | Puntuación de crédito | "Geografía" | "Género" | "Edad" | Titularidad | Equilibrio | "NumOfProducts" | "HasCrCard" | "IsActiveMember" | Salario Estimado | "Exited" |
---|---|---|---|---|---|---|---|---|---|---|---|---|
15634602 | Hargrave | 619 | Francia | Femenino | 42 | 2 | 0.00 | 1 | 1 | 1 | 101348.88 | 1 |
15647311 | Hill | 608 | España | Femenino | 41 | 1 | 83807.86 | 1 | 0 | 1 | 112542.58 | 0 |
Descarga del conjunto de datos y carga en lakehouse
Sugerencia
Al definir los parámetros siguientes, puede usar fácilmente este cuaderno con diferentes conjuntos de datos:
IS_CUSTOM_DATA = False # if TRUE, dataset has to be uploaded manually
DATA_ROOT = "/lakehouse/default"
DATA_FOLDER = "Files/churn" # folder with data files
DATA_FILE = "churn.csv" # data file name
El siguiente fragmento de código descarga una versión disponible públicamente del conjunto de datos y, a continuación, almacena ese recurso en una instancia de Fabric Lakehouse:
Importante
Asegúrese de Agregar un almacén de lago de datos al cuaderno antes de ejecutarlo. Si no lo hace, se producirá un error.
import os, requests
if not IS_CUSTOM_DATA:
# Download demo data files into lakehouse if not exist
remote_url = "https://synapseaisolutionsa.blob.core.windows.net/public/bankcustomerchurn"
file_list = [DATA_FILE]
download_path = f"{DATA_ROOT}/{DATA_FOLDER}/raw"
if not os.path.exists("/lakehouse/default"):
raise FileNotFoundError(
"Default lakehouse not found, please add a lakehouse and restart the session."
)
os.makedirs(download_path, exist_ok=True)
for fname in file_list:
if not os.path.exists(f"{download_path}/{fname}"):
r = requests.get(f"{remote_url}/{fname}", timeout=30)
with open(f"{download_path}/{fname}", "wb") as f:
f.write(r.content)
print("Downloaded demo data files into lakehouse.")
Contenido relacionado
Usará los datos que acaba de ingerir: