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.
Esto se aplica a:✅ almacén en Microsoft Fabric
El almacenamiento en Microsoft Fabric proporciona herramientas integradas de ingesta de datos. Use estas herramientas para ingerir datos en almacenes a escala mediante experiencias sin código o enriquecidas con código.
Elección de una herramienta de ingesta de datos
Elija una opción de ingesta de datos en función de los criterios siguientes:
- Use la instrucción COPY (Transact-SQL) para las operaciones de ingesta de datos enriquecidos con código. Proporciona el mayor rendimiento de ingesta de datos. Úselo cuando necesite agregar la ingesta de datos como parte de la lógica de Transact-SQL.
- Para empezar, consulte Ingesta de datos mediante la instrucción COPY.
- Warehouse también admite la instrucción tradicional
BULK INSERT, que es un sinónimo deCOPY INTOcon las opciones de carga clásicas. - La instrucción
COPYen Warehouse admite orígenes de datos de cuentas de almacenamiento de Azure y carpetas de OneLake lakehouse.
- Usa canalizaciones para flujos de trabajo de ingesta de datos robustos sin código o de bajo código que se ejecuten repetidamente, en un horario o que impliquen grandes volúmenes de datos.
- Para empezar, consulte Ingesta de datos en el almacenamiento mediante canalizaciones.
- Mediante el uso de canalizaciones, puede organizar flujos de trabajo sólidos para obtener una experiencia completa de extracción, transformación y carga (ETL). Esta experiencia incluye actividades para ayudar a preparar el entorno de destino, ejecutar instrucciones de Transact-SQL personalizadas, realizar búsquedas o copiar datos de un origen a un destino.
- Use flujos de datos para una experiencia sin código que permita transformaciones personalizadas para generar datos antes de la ingesta.
- Para empezar, consulte Ingesta de datos mediante un flujo de datos.
- Estas transformaciones incluyen (pero no se limitan a) cambiar los tipos de datos, agregar o quitar columnas, o bien usar funciones para generar columnas calculadas.
- Utiliza la ingesta de T-SQL para experiencias ricas en código, para crear tablas nuevas o actualizar las existentes con datos fuente dentro del mismo espacio de trabajo o almacenamiento externo.
- Para empezar, consulte Ingesta de datos en el almacenamiento mediante Transact-SQL.
- Use características de Transact-SQL como
INSERT...SELECT,SELECT INTOoCREATE TABLE AS SELECT (CTAS)para leer datos de tablas que hacen referencia a otros almacenes, almacenes de lago o bases de datos reflejadas dentro del mismo área de trabajo. También puede usar estas características para leer datos de la función /OPENROWSETque hace referencia a archivos de cuentas de almacenamiento de Azure externas. - También puede escribir consultas entre diferentes bases de datos entre almacenes diferentes del área de trabajo de Fabric.
Orígenes y formatos de datos admitidos
La ingesta de datos para Warehouse en Microsoft Fabric admite muchos formatos de datos y orígenes. Cada opción que se describe en este artículo incluye su propia lista de tipos de conectores de datos y formatos de datos admitidos.
Para la ingesta de T-SQL, los orígenes de datos de tabla deben estar dentro del mismo área de trabajo de Microsoft Fabric y los orígenes de datos de archivos deben estar en Azure Data Lake o Azure Blob Storage. Puede consultar datos mediante la nomenclatura de tres partes o la OPENROWSET función para los datos de origen. Los orígenes de datos de tabla pueden hacer referencia a conjuntos de datos de Delta Lake, mientras que OPENROWSET pueden hacer referencia a archivos Parquet, CSV o JSONL en Azure Data Lake o Azure Blob Storage.
Por ejemplo, supongamos que un área de trabajo tiene dos almacenes, denominados Inventory y Sales. Una consulta como la siguiente crea una nueva tabla en el Inventory almacén con el contenido de una tabla en el Inventory almacén unido a una tabla en el Sales almacén y con archivos externos que contienen información del cliente:
CREATE TABLE Inventory.dbo.RegionalSalesOrders
AS
SELECT
s.SalesOrders,
i.ProductName,
c.CustomerName
FROM Sales.dbo.SalesOrders s
JOIN Inventory.dbo.Products i
ON s.ProductID = i.ProductID
JOIN OPENROWSET( BULK 'abfss://<container>@<storage>.dfs.core.windows.net/<customer-file>.csv' ) AS c
ON s.CustomerID = c.CustomerID
WHERE s.Region = 'West region';
Note
La lectura de datos con OPENROWSET puede ser más lenta que consultar datos de una tabla. Si planea acceder repetidamente a los mismos datos externos, considere la posibilidad de ingerirlos en una tabla dedicada para mejorar el rendimiento y la eficacia de las consultas.
La instrucción COPY (Transact-SQL) admite actualmente los formatos de archivo CSV, JSONL y PARQUET. Para orígenes de datos, actualmente se admiten Azure Data Lake Storage (ADLS) Gen2 y Azure Blob Storage.
Las canalizaciones y los flujos de datos admiten una amplia variedad de orígenes de datos y formatos de datos. Para más información, consulte Canalizaciones y flujos de datos.
procedimientos recomendados
El comando COPY de Warehouse en Microsoft Fabric proporciona una interfaz sencilla, flexible y rápida para la ingesta de datos de alto rendimiento para cargas de trabajo de SQL. En la versión actual, solo admite la carga de datos desde cuentas de almacenamiento externas.
También puede usar el lenguaje T-SQL para crear una nueva tabla y, a continuación, insertarla y, a continuación, actualizar y eliminar filas de datos. Puede insertar datos desde cualquier base de datos dentro del área de trabajo de Microsoft Fabric mediante consultas entre bases de datos. Si desea importar datos de una instancia de Lakehouse a un almacén, puede hacerlo con una consulta interbase de datos. Por ejemplo:
INSERT INTO MyWarehouseTable
SELECT * FROM MyLakehouse.dbo.MyLakehouseTable;
- Evite la ingesta de datos mediante instrucciones singleton
INSERT, ya que este enfoque provoca un rendimiento deficiente en las consultas y actualizaciones. Si usa instrucciones singletonINSERTpara la ingesta de datos consecutivamente, cree una nueva tabla utilizando los patrones deCREATE TABLE AS SELECT (CTAS)oINSERT...SELECT, quite la tabla original y, luego, recree su tabla a partir de la que ha creado usandoCREATE TABLE AS SELECT (CTAS).- Eliminar su tabla existente impacta su modelo semántico, incluidas las medidas personalizadas o cualquier personalización que haya realizado.
- Al trabajar con datos externos en archivos, se recomienda que los archivos sean de, al menos, 4 MB de tamaño.
- Para archivos .csv comprimidos de gran tamaño, considere la posibilidad de dividirlos en varios archivos.
- Azure Data Lake Storage (ADLS) Gen2 ofrece un mejor rendimiento que Azure Blob Storage (heredado). Considere la posibilidad de usar una cuenta de ADLS Gen2 siempre que sea posible.
- En el caso de las canalizaciones que se ejecuten con frecuencia, considere la posibilidad de aislar la cuenta de Azure Storage de otros servicios que podrían acceder a los mismos archivos al mismo tiempo.
- Las transacciones explícitas permiten agrupar varios cambios de datos para que solo sean visibles al leer una o varias tablas cuando la transacción se confirme por completo. También tiene la capacidad de revertir la transacción si se produjese un error en alguno de los cambios.
- Si una instrucción SELECT está dentro de una transacción y fue precedida por inserciones de datos, las estadísticas generadas automáticamente pueden ser inexactas después de un rollback. Las estadísticas inexactas pueden dar lugar a planes de consulta no optimizados y tiempos de ejecución. Si revierte una transacción con SELECT después de una instrucción INSERT grande, actualice las estadísticas de las columnas mencionadas en su instrucción SELECT.
Note
Independientemente de cómo se ingrese la información en los almacenes de datos, la tarea de ingesta de datos optimiza los archivos Parquet que genera mediante la optimización de escritura V-Order. V-Order optimiza los archivos Parquet para permitir lecturas ultrarrápidas en los motores de procesamiento de Microsoft Fabric, como Power BI, SQL, Spark y otros. Las consultas de almacenamiento en general se benefician de tiempos de lectura más rápidos para las consultas con esta optimización, a la vez que garantizan que los archivos parquet sean 100% compatibles con su especificación de código abierto. No deshabilite V-Order, ya que podría afectar al rendimiento de lectura. Para obtener más información sobre el V-Order, consulte Descripción y administración de V-Order para el almacén.
Preguntas más frecuentes sobre la ingesta de datos para Fabric Data Warehouse
¿Cuál es el procedimiento para dividir archivos a la hora de cargar archivos .csv comprimidos con el comando COPY?
Considere la posibilidad de dividir archivos CSV grandes, especialmente cuando el número de archivos es pequeño, pero mantenga los archivos como mínimo de 4 MB cada uno para mejorar el rendimiento.
¿Cuál es el procedimiento para dividir archivos a la hora de cargar archivos Parquet con el comando COPY?
Considere dividir archivos Parquet grandes, especialmente cuando el número de archivos es pequeño.
¿Hay alguna limitación en el número o el tamaño de los archivos?
No hay limitaciones en el número o el tamaño de los archivos. Sin embargo, para obtener el mejor rendimiento, use archivos que tienen al menos 4 MB.
¿Qué método de autenticación usa el comando COPY si no se especifica una credencial?
De forma predeterminada, COPY INTO usa el Microsoft Entra ID del usuario en ejecución.