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/machine-learning/concept-data.md
+47-42Lines changed: 47 additions & 42 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,29 +9,62 @@ ms.topic: conceptual
9
9
ms.reviewer: franksolomon
10
10
author: samuel100
11
11
ms.author: samkemp
12
-
ms.date: 01/23/2023
12
+
ms.date: 07/13/2023
13
13
ms.custom: data4ml, event-tier1-build-2022
14
14
#Customer intent: As an experienced Python developer, I need secure access to my data in my Azure storage solutions, and I need to use that data to accomplish my machine learning tasks.
15
15
---
16
16
17
17
# Data concepts in Azure Machine Learning
18
18
19
+
With Azure Machine Learning, you can import data from a local machine or an existing cloud-based storage resource. This article describes key Azure Machine Learning data concepts.
19
20
20
-
With Azure Machine Learning, you can bring data from a local machine or an existing cloud-based storage. In this article, you'll learn the main Azure Machine Learning data concepts.
21
+
## Datastore
22
+
23
+
An Azure Machine Learning datastore serves as a *reference* to an *existing* Azure storage account. An Azure Machine Learning datastore offers these benefits:
24
+
25
+
- A common, easy-to-use API that interacts with different storage types (Blob/Files/ADLS).
26
+
- Easier discovery of useful datastores in team operations.
27
+
- For credential-based access (service principal/SAS/key), Azure Machine Learning datastore secures connection information. This way, you won't need to place that information in your scripts.
28
+
29
+
When you create a datastore with an existing Azure storage account, you can choose between two different authentication methods:
30
+
31
+
-**Credential-based** - authenticate data access with a service principal, shared access signature (SAS) token, or account key. Users with *Reader* workspace access can access the credentials.
32
+
-**Identity-based** - use your Azure Active Directory identity or managed identity to authenticate data access.
33
+
34
+
The following table summarizes the Azure cloud-based storage services that an Azure Machine Learning datastore can create. Additionally, the table summarizes the authentication types that can access those services:
35
+
36
+
Supported storage service | Credential-based authentication | Identity-based authentication
37
+
|---|:----:|:---:|
38
+
Azure Blob Container| ✓ | ✓|
39
+
Azure File Share| ✓ | |
40
+
Azure Data Lake Gen1 | ✓ | ✓|
41
+
Azure Data Lake Gen2| ✓ | ✓|
42
+
43
+
See [Create datastores](how-to-datastore.md) for more information about datastores.
44
+
45
+
## Data types
46
+
47
+
A URI (storage location) can reference a file, a folder, or a data table. A machine learning job input and output definition requires one of the following three data types:
48
+
49
+
|Type |V2 API |V1 API |Canonical Scenarios | V2/V1 API Difference
|**File**<br>Reference a single file |`uri_file`|`FileDataset`| Read/write a single file - the file can have any format. | A type new to V2 APIs. In V1 APIs, files always mapped to a folder on the compute target filesystem; this mapping required an `os.path.join`. In V2 APIs, the single file is mapped. This way, you can refer to that location in your code. |
52
+
|**Folder**<br> Reference a single folder |`uri_folder`|`FileDataset`| You must read/write a folder of parquet/CSV files into Pandas/Spark.<br><br>Deep-learning with images, text, audio, video files located in a folder. | In V1 APIs, `FileDataset` had an associated engine that could take a file sample from a folder. In V2 APIs, a Folder is a simple mapping to the compute target filesystem. |
53
+
|**Table**<br> Reference a data table |`mltable`|`TabularDataset`| You have a complex schema subject to frequent changes, or you need a subset of large tabular data.<br><br>AutoML with Tables. | In V1 APIs, the Azure Machine Learning back-end stored the data materialization blueprint. As a result, `TabularDataset` only worked if you had an Azure Machine Learning workspace. `mltable` stores the data materialization blueprint in *your* storage. This storage location means you can use it *disconnected to AzureML* - for example, locally and on-premises. In V2 APIs, you'll find it easier to transition from local to remote jobs. See [Working with tables in Azure Machine Learning](how-to-mltable.md) for more information. |
21
54
22
55
## URI
23
56
A Uniform Resource Identifier (URI) represents a storage location on your local computer, Azure storage, or a publicly available http(s) location. These examples show URIs for different storage options:
| Azure Data Lake (gen1) |`adl://<accountname>.azuredatalakestore.net/<folder1>/<folder2>`|
33
66
34
-
An Azure Machine Learning job maps URIs to the compute target filesystem. This mapping means that in a command that consumes or produces a URI, that URI works like a file or a folder. A URI uses **identity-based authentication** to connect to storage services, with either your Azure Active Directory ID (default), or Managed Identity. Azure Machine Learning [Datastore](#datastore) URIs can apply either identity-based authentication, or **credential-based** (for example, Service Principal, SAS token, account key) without exposure of secrets.
67
+
An Azure Machine Learning job maps URIs to the compute target filesystem. This mapping means that in a command that consumes or produces a URI, that URI works like a file or a folder. A URI uses **identity-based authentication** to connect to storage services, with either your Azure Active Directory ID (default), or Managed Identity. Azure Machine Learning [Datastore](#datastore) URIs can apply either identity-based authentication, or **credential-based** (for example, Service Principal, SAS token, account key), without exposure of secrets.
35
68
36
69
A URI can serve as either *input* or an *output* to an Azure Machine Learning job, and it can map to the compute target filesystem with one of four different *mode* options:
Read[Access data in a job](how-to-read-write-data-v2.md) for more information.
83
+
See[Access data in a job](how-to-read-write-data-v2.md) for more information.
51
84
52
-
## Data types
53
-
54
-
A URI (storage location) can reference a file, a folder, or a data table. A machine learning job input and output definition requires one of the following three data types:
85
+
## Data runtime capability
86
+
Azure Machine Learning uses its own *data runtime* for one of three purposes:
55
87
56
-
|Type |V2 API |V1 API |Canonical Scenarios | V2/V1 API Difference
|**File**<br>Reference a single file |`uri_file`|`FileDataset`| Read/write a single file - the file can have any format. | A type new to V2 APIs. In V1 APIs, files always mapped to a folder on the compute target filesystem; this mapping required an `os.path.join`. In V2 APIs, the single file is mapped. This way, you can refer to that location in your code. |
59
-
|**Folder**<br> Reference a single folder |`uri_folder`|`FileDataset`| You must read/write a folder of parquet/CSV files into Pandas/Spark.<br><br>Deep-learning with images, text, audio, video files located in a folder. | In V1 APIs, `FileDataset` had an associated engine that could take a file sample from a folder. In V2 APIs, a Folder is a simple mapping to the compute target filesystem. |
60
-
|**Table**<br> Reference a data table |`mltable`|`TabularDataset`| You have a complex schema subject to frequent changes, or you need a subset of large tabular data.<br><br>AutoML with Tables. | In V1 APIs, the Azure Machine Learning back-end stored the data materialization blueprint. As a result, `TabularDataset` only worked if you had an Azure Machine Learning workspace. `mltable` stores the data materialization blueprint in *your* storage. This storage location means you can use it *disconnected to AzureML* - for example, local, on-premises. In V2 APIs, you'll find it easier to transition from local to remote jobs. Read [Working with tables in Azure Machine Learning](how-to-mltable.md) for more information. |
88
+
- for mounts/uploads/downloads
89
+
- to map storage URIs to the compute target filesystem
90
+
- to materialize tabular data into pandas/spark with Azure Machine Learning tables (`mltable`)
61
91
62
-
## Data runtime capability
63
-
Azure Machine Learning uses its own *data runtime* for mounts/uploads/downloads, to map storage URIs to the compute target filesystem, or to materialize tabular data into pandas/spark with Azure Machine Learning tables (`mltable`). The Azure Machine Learning data runtime is designed for machine learning task *high speed and high efficiency*. Its key benefits include:
92
+
The Azure Machine Learning data runtime is designed for *high speed and high efficiency* of machine learning tasks. It offers these key benefits:
64
93
65
94
> [!div class="checklist"]
66
95
> -[Rust](https://www.rust-lang.org/) language architecture. The Rust language is known for high speed and high memory efficiency.
@@ -69,42 +98,18 @@ Azure Machine Learning uses its own *data runtime* for mounts/uploads/downloads,
69
98
> - Data pre-fetches operate as background task on the CPU(s), to enhance utilization of the GPU(s) in deep-learning operations.
70
99
> - Seamless authentication to cloud storage.
71
100
72
-
## Datastore
73
-
74
-
An Azure Machine Learning datastore serves as a *reference* to an *existing* Azure storage account. The benefits of Azure Machine Learning datastore creation and use include:
75
-
76
-
1. A common, easy-to-use API that interacts with different storage types (Blob/Files/ADLS).
77
-
1. Easier discovery of useful datastores in team operations.
78
-
1. For credential-based access (service principal/SAS/key), Azure Machine Learning datastore secures connection information. This way, you won't need to place that information in your scripts.
79
-
80
-
When you create a datastore with an existing Azure storage account, you can choose between two different authentication methods:
81
-
82
-
-**Credential-based** - authenticate data access with a service principal, shared access signature (SAS) token, or account key. Users with *Reader* workspace access can access the credentials.
83
-
-**Identity-based** - use your Azure Active Directory identity or managed identity to authenticate data access.
84
-
85
-
The following table summarizes the Azure cloud-based storage services that an Azure Machine Learning datastore can create. Additionally, the table summarizes the authentication types that can access those services:
86
-
87
-
Supported storage service | Credential-based authentication | Identity-based authentication
88
-
|---|:----:|:---:|
89
-
Azure Blob Container| ✓ | ✓|
90
-
Azure File Share| ✓ | |
91
-
Azure Data Lake Gen1 | ✓ | ✓|
92
-
Azure Data Lake Gen2| ✓ | ✓|
93
-
94
-
Read [Create datastores](how-to-datastore.md) for more information about datastores.
95
-
96
101
## Data asset
97
102
98
103
An Azure Machine Learning data asset resembles web browser bookmarks (favorites). Instead of remembering long storage paths (URIs) that point to your most frequently used data, you can create a data asset, and then access that asset with a friendly name.
99
104
100
105
Data asset creation also creates a *reference* to the data source location, along with a copy of its metadata. Because the data remains in its existing location, you incur no extra storage cost, and you don't risk data source integrity. You can create Data assets from Azure Machine Learning datastores, Azure Storage, public URLs, or local files.
101
106
102
-
Read[Create data assets](how-to-create-data-assets.md) for more information about data assets.
107
+
See[Create data assets](how-to-create-data-assets.md) for more information about data assets.
103
108
104
109
## Next steps
105
110
111
+
-[Access data in a job](how-to-read-write-data-v2.md)
106
112
-[Install and set up the CLI (v2)](how-to-configure-cli.md#install-and-set-up-the-cli-v2)
0 commit comments