You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/synapse-analytics/sql-data-warehouse/load-data-from-azure-blob-storage-using-copy.md
+34-65Lines changed: 34 additions & 65 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,13 +4,13 @@ description: Tutorial uses Azure portal and SQL Server Management Studio to load
4
4
author: joannapea
5
5
ms.author: joanpo
6
6
ms.reviewer: wiassaf
7
-
ms.date: 11/23/2020
7
+
ms.date: 08/20/2024
8
8
ms.service: azure-synapse-analytics
9
9
ms.subservice: sql-dw
10
10
ms.topic: conceptual
11
-
ms.custom: azure-synapse
11
+
ms.custom:
12
+
- azure-synapse
12
13
---
13
-
14
14
# Tutorial: Load the New York Taxicab dataset
15
15
16
16
This tutorial uses the [COPY statement](/sql/t-sql/statements/copy-into-transact-sql?view=azure-sqldw-latest&preserve-view=true) to load New York Taxicab dataset from an Azure Blob Storage account. The tutorial uses the [Azure portal](https://portal.azure.com) and [SQL Server Management Studio (SSMS)](/sql/ssms/download-sql-server-management-studio-ssms?toc=/azure/synapse-analytics/sql-data-warehouse/toc.json&bc=/azure/synapse-analytics/sql-data-warehouse/breadcrumb/toc.json&view=azure-sqldw-latest&preserve-view=true) to:
@@ -28,72 +28,62 @@ If you don't have an Azure subscription, [create a free Azure account](https://a
28
28
29
29
Before you begin this tutorial, download and install the newest version of [SQL Server Management Studio (SSMS)](/sql/ssms/download-sql-server-management-studio-ssms?toc=/azure/synapse-analytics/sql-data-warehouse/toc.json&bc=/azure/synapse-analytics/sql-data-warehouse/breadcrumb/toc.json&view=azure-sqldw-latest&preserve-view=true).
30
30
31
-
This tutorial assumes you have already created a SQL dedicated pool from the following [tutorial](./create-data-warehouse-portal.md#connect-to-the-server-as-server-admin).
31
+
This tutorial assumes you have already [created a SQL dedicated pool](./create-data-warehouse-portal.md#connect-to-the-server-as-server-admin).
32
32
33
33
## Create a user for loading data
34
34
35
35
The server admin account is meant to perform management operations, and is not suited for running queries on user data. Loading data is a memory-intensive operation. Memory maximums are defined according to the [data warehouse units](what-is-a-data-warehouse-unit-dwu-cdwu.md) and [resource class](resource-classes-for-workload-management.md) configured.
36
36
37
37
It's best to create a login and user that is dedicated for loading data. Then add the loading user to a [resource class](resource-classes-for-workload-management.md) that enables an appropriate maximum memory allocation.
38
38
39
-
Connect as the server admin so you can create logins and users. Use these steps to create a login and user called **LoaderRC20**. Then assign the user to the **staticrc20** resource class.
40
-
41
-
1. In SSMS, right-select **master** to show a drop-down menu, and choose **New Query**. A new query window opens.
39
+
Connect as the server admin so you can create logins and users. Use these steps to create a login and user called `LoaderRC20`. Then assign the user to the `staticrc20` resource class.
42
40
43
-

41
+
1. In SSMS, right-select `master` to show a dropdown menu, and choose **New Query**. A new query window opens.
44
42
45
-
2. In the query window, enter these T-SQL commands to create a login and user named LoaderRC20, substituting your own password for 'a123STRONGpassword!'.
43
+
1. In the query window, enter these T-SQL commands to create a login and user named `LoaderRC20`, substituting your own strong password.
46
44
47
45
```sql
48
-
CREATE LOGIN LoaderRC20 WITH PASSWORD ='a123STRONGpassword!';
46
+
CREATE LOGIN LoaderRC20 WITH PASSWORD ='<strong password here>';
49
47
CREATEUSERLoaderRC20 FOR LOGIN LoaderRC20;
50
48
```
51
49
52
-
3. Select**Execute**.
50
+
1. Select**Execute**.
53
51
54
-
4. Right-click **mySampleDataWarehouse**, and choose **New Query**. A new query Window opens.
52
+
1. Right-click **mySampleDataWarehouse**, and choose **New Query**. A new query Window opens.
55
53
56
-

57
-
58
-
5. Enter the following T-SQL commands to create a database user named LoaderRC20 for the LoaderRC20 login. The second line grants the new user CONTROL permissions on the new data warehouse. These permissions are similar to making the user the owner of the database. The third line adds the new user as a member of the staticrc20 [resource class](resource-classes-for-workload-management.md).
54
+
1. Enter the following T-SQL commands to create a database user named `LoaderRC20` for the `LoaderRC20` login. The second line grants the new user CONTROL permissions on the new data warehouse. These permissions are similar to making the user the owner of the database. The third line adds the new user as a member of the `staticrc20` [resource class](resource-classes-for-workload-management.md).
59
55
60
56
```sql
61
57
CREATE USER LoaderRC20 FOR LOGIN LoaderRC20;
62
58
GRANT CONTROL ON DATABASE::[mySampleDataWarehouse] to LoaderRC20;
63
59
EXEC sp_addrolemember 'staticrc20', 'LoaderRC20';
64
60
```
65
61
66
-
6. Select**Execute**.
62
+
1. Select**Execute**.
67
63
68
64
## Connect to the server as the loading user
69
65
70
-
The first step toward loading data is to login as LoaderRC20.
71
-
72
-
1. In Object Explorer, select the **Connect** drop down menu andselect**Database Engine**. The **Connect to Server** dialog box appears.
66
+
The first step toward loading data is to login as`LoaderRC20`.
73
67
74
-

68
+
1. In Object Explorer, select the **Connect** dropdown menu andselect**Database Engine**. The **Connect to Server** dialog box appears.
75
69
76
-
2. Enter the fully qualified server name, and enter **LoaderRC20**as the Login. Enter your password for LoaderRC20.
70
+
1. Enter the fully qualified server name, and enter `LoaderRC20`as the Login. Enter your password for LoaderRC20.
77
71
78
-
3. Select**Connect**.
72
+
1. Select**Connect**.
79
73
80
-
4. When your connection is ready, you will see two server connections in Object Explorer. One connection as ServerAdmin and one connection as LoaderRC20.
81
-
82
-

74
+
1. When your connection is ready, you'll see two server connections in Object Explorer. One connection as ServerAdmin and one connection as LoaderRC20.
83
75
84
76
## Create tables for the sample data
85
77
86
-
You are ready to begin the process of loading data into your new data warehouse. This part of the tutorial shows you how to use the COPY statement to load the New York City taxi cab dataset from an Azure Storage blob. For future reference, to learn how to get your data to Azure Blob Storage or to load it directly from your source, see the [loading overview](design-elt-data-loading.md).
78
+
You're ready to begin the process of loading data into your new data warehouse. This part of the tutorial shows you how to use the COPY statement to load the New York City taxi cab dataset from an Azure Storage blob. For future reference, to learn how to get your data to Azure Blob Storage or to load it directly from your source, see the [loading overview](design-elt-data-loading.md).
87
79
88
80
Run the following SQL scripts and specify information about the data you wish to load. This information includes where the data is located, the format of the contents of the data, and the table definition for the data.
89
81
90
-
1. In the previous section, you logged into your data warehouse as LoaderRC20. In SSMS, right-click your LoaderRC20 connection andselect**New Query**. A new query window appears.
1. In the previous section, you logged into your data warehouse as`LoaderRC20`. In SSMS, right-click your LoaderRC20 connection andselect**New Query**. A new query window appears.
93
83
94
-
2. Compare your query window to the previous image. Verify your new query window is running as LoaderRC20 and performing queries on your MySampleDataWarehouse database. Use this query window to perform all of the loading steps.
84
+
1. Compare your query window to the previous image. Verify your new query window is running as`LoaderRC20`and performing queries on your `MySampleDataWarehouse` database. Use this query window to perform all of the loading steps.
95
85
96
-
7. Run the following T-SQL statements to create the tables:
86
+
1. Run the following T-SQL statements to create the tables:
97
87
98
88
```sql
99
89
CREATE TABLE [dbo].[Date]
@@ -327,7 +317,7 @@ This section uses the [COPY statement to load](/sql/t-sql/statements/copy-into-t
2. View your data as it loads. You're loading several GBs of data and compressing it into highly performant clustered columnstore indexes. Run the following query that uses a dynamic management views (DMVs) to show the status of the load.
320
+
1. View your data as it loads. You're loading several GBs of data and compressing it into highly performant clustered columnstore indexes. Run the following query that uses a dynamic management views (DMVs) to show the status of the load.
331
321
332
322
```sql
333
323
SELECT r.[request_id]
@@ -353,59 +343,38 @@ This section uses the [COPY statement to load](/sql/t-sql/statements/copy-into-t
353
343
, r.command;
354
344
```
355
345
356
-
3. View all system queries.
346
+
1. View all system queries.
357
347
358
348
```sql
359
349
SELECT * FROM sys.dm_pdw_exec_requests;
360
350
```
361
351
362
-
4. Enjoy seeing your data nicely loaded into your data warehouse.
352
+
1. Enjoy your data nicely loaded into your data warehouse.
You are being charged for compute resources and data that you loaded into your data warehouse. These are billed separately.
369
358
370
-
* If you want to keep the data in storage, you can pause compute when you aren't using the data warehouse. By pausing compute you will only be charge for data storage and you can resume the compute whenever you are ready to work with the data.
371
-
* If you want to remove future charges, you can delete the data warehouse.
359
+
- If you want to keep the data in storage, you can pause compute when you aren't using the data warehouse. By pausing compute, you will only be charge for data storage and you can resume the compute whenever you're ready to work with the data.
360
+
- If you want to remove future charges, you can delete the data warehouse.
372
361
373
362
Follow these steps to clean up resources as you desire.
374
363
375
-
1. Log in to the [Azure portal](https://portal.azure.com), select your data warehouse.
376
-
377
-

364
+
1. Sign in to the [Azure portal](https://portal.azure.com), and select your data warehouse.
378
365
379
-
2. To pause compute, select the **Pause** button. When the data warehouse is paused, you will see a **Start** button. To resume compute, select**Start**.
366
+
1. To pause compute, select the **Pause** button. When the data warehouse is paused, you see a **Start** button. To resume compute, select **Start**.
380
367
381
-
3. To remove the data warehouse so you won't be charged for compute or storage, select **Delete**.
382
-
383
-
4. To remove the server you created, select **mynewserver-20180430.database.windows.net** in the previous image, and then select **Delete**. Be careful with this as deleting the server will delete all databases assigned to the server.
384
-
385
-
5. To remove the resource group, select **myResourceGroup**, and then select **Delete resource group**.
386
-
387
-
## Next steps
388
-
389
-
In this tutorial, you learned how to create a data warehouse and create a user for loading data. You used the simple [COPY statement](/sql/t-sql/statements/copy-into-transact-sql?view=azure-sqldw-latest&preserve-view=true#examples) to load data into your data warehouse.
390
-
391
-
You did these things:
392
-
> [!div class="checklist"]
393
-
>
394
-
> * Created a data warehouse in the Azure portal
395
-
> * Set up a server-level firewall rule in the Azure portal
396
-
> * Connected to the data warehouse with SSMS
397
-
> * Created a user designated for loading data
398
-
> * Created the tables for the sample data
399
-
> * Used the COPY T-SQL statement to load data into your data warehouse
400
-
> * Viewed the progress of data as it is loading
368
+
1. To remove the data warehouse so you won't be charged for compute or storage, select**Delete**.
401
369
402
-
Advance to the development overview to learn how to migrate an existing database to Azure Synapse Analytics:
370
+
1. To remove the server you created, select**mynewserver-20180430.database.windows.net**in the previous image, and then select**Delete**. Be careful with this as deleting the server deletes all databases assigned to the server.
403
371
404
-
> [!div class="nextstepaction"]
405
-
> [Design decisions to migrate an existing database to Azure Synapse Analytics](sql-data-warehouse-overview-develop.md)
372
+
1. To remove the resource group, select**myResourceGroup**, and then select**Delete resource group**.
406
373
407
-
For more loading examples and references, view the following documentation:
0 commit comments