Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Tip
Microsoft Fabric Data Warehouse ist ein relationales Enterprise-Warehouse auf einem Data Lake-Fundament mit zukunftsfähiger Architektur, integrierter KI und neuen Features. Wenn Sie mit Data Warehouse noch nicht vertraut sind, beginnen Sie mit Fabric Data Warehouse. Vorhandene dedizierte SQL-Pool-Workloads können auf Fabric aktualisieren, um neue Funktionen in den Bereichen Data Science, Echtzeitanalyse und Berichterstellung zu nutzen.
In dieser Schnellstartanleitung laden Sie Daten in Ihren dedizierten SQL-Pool mit der einfachen und flexiblen COPY-Anweisung für die Erfassung von Daten mit hohem Durchsatz. Die COPY-Anweisung ist das empfohlene Ladeprogramm, da sie es Ihnen ermöglicht, Daten nahtlos und flexibel zu laden, indem Sie Funktionen bereitstellen:
- Zulassen, dass Benutzer mit niedrigeren Rechten laden können, ohne strenge CONTROL-Berechtigungen für das Data Warehouse zu benötigen
- Verwenden Sie nur eine einzelne T-SQL-Anweisung, ohne zusätzliche Datenbankobjekte erstellen zu müssen
- Nutzen eines feineren Berechtigungsmodells ohne Verfügbarmachen von Speicherkontoschlüsseln mithilfe von Share Access Signatures (SAS)
- Geben Sie ein anderes Speicherkonto für den ERRORFILE-Speicherort (REJECTED_ROW_LOCATION) an.
- Anpassen der Standardwerte für jede Zielspalte und Angeben der Quelldatenfelder, die in bestimmte Zielspalten geladen werden sollen
- Angeben eines benutzerdefinierten Zeilenendpunkts für CSV-Dateien
- Zeichenfolgen, Feld- und Zeilentrennzeichen für CSV-Dateien maskieren
- Nutzen von SQL Server Datumsformaten für CSV-Dateien
- Platzhalter und mehrere Dateien im Speicherpfad angeben
Prerequisites
In dieser Schnellstartanleitung wird vorausgesetzt, dass Sie bereits über einen dedizierten SQL-Pool verfügen. Wenn kein dedizierter SQL-Pool erstellt wurde, verwenden Sie die Schnellstartanleitung zum Erstellen und Verbinden des Portals .
Einrichten der erforderlichen Berechtigungen
-- List the permissions for your user
select princ.name
, princ.type_desc
, perm.permission_name
, perm.state_desc
, perm.class_desc
, object_name(perm.major_id)
from sys.database_principals princ
left join
sys.database_permissions perm
on perm.grantee_principal_id = princ.principal_id
where name = '<yourusername>';
--Make sure your user has the permissions to CREATE tables in the [dbo] schema
GRANT CREATE TABLE TO <yourusername>;
GRANT ALTER ON SCHEMA::dbo TO <yourusername>;
--Make sure your user has ADMINISTER DATABASE BULK OPERATIONS permissions
GRANT ADMINISTER DATABASE BULK OPERATIONS TO <yourusername>
--Make sure your user has INSERT permissions on the target table
GRANT INSERT ON <yourtable> TO <yourusername>
Erstellen der Zieltabelle
In diesem Beispiel laden wir Daten aus dem New York-Taxi-Dataset. Wir laden eine Tabelle namens Trip, die Taxifahrten innerhalb eines jahres darstellt. Führen Sie folgendes Aus, um die Tabelle zu erstellen:
CREATE TABLE [dbo].[Trip]
(
[DateID] int NOT NULL,
[MedallionID] int NOT NULL,
[HackneyLicenseID] int NOT NULL,
[PickupTimeID] int NOT NULL,
[DropoffTimeID] int NOT NULL,
[PickupGeographyID] int NULL,
[DropoffGeographyID] int NULL,
[PickupLatitude] float NULL,
[PickupLongitude] float NULL,
[PickupLatLong] varchar(50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[DropoffLatitude] float NULL,
[DropoffLongitude] float NULL,
[DropoffLatLong] varchar(50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[PassengerCount] int NULL,
[TripDurationSeconds] int NULL,
[TripDistanceMiles] float NULL,
[PaymentType] varchar(50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
[FareAmount] money NULL,
[SurchargeAmount] money NULL,
[TaxAmount] money NULL,
[TipAmount] money NULL,
[TollsAmount] money NULL,
[TotalAmount] money NULL
)
WITH
(
DISTRIBUTION = ROUND_ROBIN,
CLUSTERED COLUMNSTORE INDEX
);
Ausführen der COPY-Anweisung
Führen Sie die folgende COPY-Anweisung aus, die Daten aus dem Azure BLOB-Speicherkonto in die Trip-Tabelle lädt.
COPY INTO [dbo].[Trip] FROM 'https://nytaxiblob.blob.core.windows.net/2013/Trip2013/'
WITH (
FIELDTERMINATOR='|',
ROWTERMINATOR='0x0A'
) OPTION (LABEL = 'COPY: dbo.trip');
Überwachen Sie die Last
Überprüfen Sie, ob ihre Last fortschritte macht, indem Sie regelmäßig die folgende Abfrage ausführen:
SELECT r.[request_id]
, r.[status]
, r.resource_class
, r.command
, sum(bytes_processed) AS bytes_processed
, sum(rows_processed) AS rows_processed
FROM sys.dm_pdw_exec_requests r
JOIN sys.dm_pdw_dms_workers w
ON r.[request_id] = w.request_id
WHERE [label] = 'COPY: dbo.trip' and session_id <> session_id() and type = 'WRITER'
GROUP BY r.[request_id]
, r.[status]
, r.resource_class
, r.command;
Nächste Schritte
- Bewährte Methoden zum Laden von Daten finden Sie unter "Bewährte Methoden zum Laden von Daten".
- Informationen zum Verwalten der Ressourcen für das Laden Ihrer Daten finden Sie unter Workload Isolation.