Datastore 클래스

Azure Machine Learning 스토리지 계정에 대한 스토리지 추상화를 나타냅니다.

데이터 저장소는 작업 영역에 연결되며 Azure Storage 서비스에 대한 연결 정보를 저장하는 데 사용되므로 이름으로 참조할 수 있으며, 스토리지 서비스에 연결하는 데 사용되는 연결 정보와 비밀을 기억할 필요가 없습니다.

데이터 저장소로 등록할 수 있는 지원되는 Azure Storage 서비스의 예는 다음과 같습니다.

  • Azure Blob 컨테이너

  • Azure 파일 공유

  • Azure 데이터 레이크

  • Azure Data Lake Gen2

  • Azure SQL Database

  • Azure Database for PostgreSQL

  • Databricks 파일 시스템

  • Azure Database for MySQL

이 클래스를 사용하여 데이터 저장소 등록, 나열, 가져오기, 제거를 비롯한 관리 작업을 수행합니다. 각 서비스에 대한 데이터 저장소는 이 클래스의 register* 메서드를 사용하여 만들어집니다. 데이터 저장소를 사용하여 데이터에 액세스하는 경우 해당 데이터에 액세스할 수 있는 권한이 있어야 하며, 이 권한은 데이터 저장소에 등록된 자격 증명에 따라 결정됩니다.

데이터 저장소 및 기계 학습에서 데이터 저장소를 사용하는 방법에 대한 자세한 내용은 다음 문서를 참조하세요.

이름으로 데이터 저장소를 가져옵니다. 이 호출은 데이터 저장소 서비스를 요청합니다.

상속
builtins.object
Datastore

생성자

Datastore(workspace, name=None)

매개 변수

workspace
Workspace
필수

작업 영역입니다.

name
str, <xref:optional>
기본값: None

데이터 저장소의 이름으로, 기본값은 기본 데이터 저장소를 가져오는 None으로 설정됩니다.

설명

학습과 같은 기계 학습 작업을 위해 데이터 저장소의 데이터와 상호 작용하려면 Azure Machine Learning 데이터 세트를 만듭니다. 데이터 세트는 테이블 형식 데이터를 pandas 또는 Spark 데이터 프레임에 로드하는 기능을 제공합니다. 또한 데이터 세트는 Azure Blob Storage, Azure Files, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2, Azure SQL Database 및 Azure Database for PostgreSQL에 있는 모든 형식의 파일을 다운로드하거나 탑재하는 기능을 제공합니다. 데이터 세트를 사용하여 학습시키는 방법을 알아보세요.

다음 예제에서는 Azure Blob 컨테이너에 연결된 데이터 저장소를 만드는 방법을 보여 줍니다.


   from azureml.exceptions import UserErrorException

   blob_datastore_name='MyBlobDatastore'
   account_name=os.getenv("BLOB_ACCOUNTNAME_62", "<my-account-name>") # Storage account name
   container_name=os.getenv("BLOB_CONTAINER_62", "<my-container-name>") # Name of Azure blob container
   account_key=os.getenv("BLOB_ACCOUNT_KEY_62", "<my-account-key>") # Storage account key

   try:
       blob_datastore = Datastore.get(ws, blob_datastore_name)
       print("Found Blob Datastore with name: %s" % blob_datastore_name)
   except UserErrorException:
       blob_datastore = Datastore.register_azure_blob_container(
           workspace=ws,
           datastore_name=blob_datastore_name,
           account_name=account_name, # Storage account name
           container_name=container_name, # Name of Azure blob container
           account_key=account_key) # Storage account key
       print("Registered blob datastore with name: %s" % blob_datastore_name)

   blob_data_ref = DataReference(
       datastore=blob_datastore,
       data_reference_name="blob_test_data",
       path_on_datastore="testdata")

전체 샘플은 https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-data-transfer.ipynb에서 사용할 수 있습니다.

메서드

get

이름으로 데이터 저장소를 가져옵니다. 이는 생성자를 호출하는 것과 같습니다.

get_default

작업 영역의 기본 데이터 저장소를 가져옵니다.

register_azure_blob_container

Azure Blob 컨테이너를 데이터 저장소에 등록합니다.

GA(자격 증명 기반) 및 ID 기반(미리 보기) 데이터 액세스가 지원됩니다. SAS 토큰 또는 스토리지 계정 키를 사용하기로 선택할 수 있습니다. 데이터 저장소와 함께 자격 증명을 저장하지 않으면 사용자의 AAD 토큰이 Notebook 또는 로컬 python 프로그램에서 사용됩니다. FileDataset.mount, FileDataset.download, FileDataset.to_path, TabularDataset.to_pandas_dataframe, TabularDataset.to_dask_dataframe, TabularDataset.to_spark_dataframe, TabularDataset.to_parquet_files, TabularDataset.to_csv_files 함수 중 하나가 직접 호출되는 경우 컴퓨팅 대상의 ID는 데이터 액세스 인증을 위해 Experiment.submit에 의해 제출된 작업에 사용됩니다. 여기를 참조하세요.

register_azure_data_lake

새 Azure Data Lake 데이터 저장소를 초기화합니다.

GA(자격 증명 기반) 및 ID 기반(미리 보기) 데이터 액세스가 지원됩니다. 자격 증명 기반 데이터 액세스를 위해 서비스 주체에 데이터 저장소를 등록할 수 있습니다. 데이터 저장소와 함께 자격 증명을 저장하지 않으면 사용자의 AAD 토큰이 Notebook 또는 로컬 python 프로그램에서 사용됩니다. FileDataset.mount, FileDataset.download, FileDataset.to_path, TabularDataset.to_pandas_dataframe, TabularDataset.to_dask_dataframe, TabularDataset.to_spark_dataframe, TabularDataset.to_parquet_files, TabularDataset.to_csv_files 함수 중 하나가 직접 호출되는 경우 컴퓨팅 대상의 ID는 데이터 액세스 인증을 위해 Experiment.submit에 의해 제출된 작업에 사용됩니다. 여기를 참조하세요.

Azure Data Lake Gen1을 데이터 저장소로 등록하는 방법의 예는 아래를 참조하세요.


   adlsgen1_datastore_name='adlsgen1datastore'

   store_name=os.getenv("ADL_STORENAME", "<my_datastore_name>") # the ADLS name
   subscription_id=os.getenv("ADL_SUBSCRIPTION", "<my_subscription_id>") # subscription id of the ADLS
   resource_group=os.getenv("ADL_RESOURCE_GROUP", "<my_resource_group>") # resource group of ADLS
   tenant_id=os.getenv("ADL_TENANT", "<my_tenant_id>") # tenant id of service principal
   client_id=os.getenv("ADL_CLIENTID", "<my_client_id>") # client id of service principal
   client_secret=os.getenv("ADL_CLIENT_SECRET", "<my_client_secret>") # the secret of service principal

   adls_datastore = Datastore.register_azure_data_lake(
       workspace=ws,
       datastore_name=aslsgen1_datastore_name,
       subscription_id=subscription_id, # subscription id of ADLS account
       resource_group=resource_group, # resource group of ADLS account
       store_name=store_name, # ADLS account name
       tenant_id=tenant_id, # tenant id of service principal
       client_id=client_id, # client id of service principal
       client_secret=client_secret) # the secret of service principal
register_azure_data_lake_gen2

새 Azure Data Lake Gen2 데이터 저장소를 초기화합니다.

GA(자격 증명 기반) 및 ID 기반(미리 보기) 데이터 액세스가 지원됩니다. 자격 증명 기반 데이터 액세스를 위해 서비스 주체에 데이터 저장소를 등록할 수 있습니다. 데이터 저장소와 함께 자격 증명을 저장하지 않으면 사용자의 AAD 토큰이 Notebook 또는 로컬 python 프로그램에서 사용됩니다. FileDataset.mount, FileDataset.download, FileDataset.to_path, TabularDataset.to_pandas_dataframe, TabularDataset.to_dask_dataframe, TabularDataset.to_spark_dataframe, TabularDataset.to_parquet_files, TabularDataset.to_csv_files 함수 중 하나가 직접 호출되는 경우 컴퓨팅 대상의 ID는 데이터 액세스 인증을 위해 Experiment.submit에 의해 제출된 작업에 사용됩니다. 여기를 참조하세요.

register_azure_file_share

Azure 파일 공유를 데이터 저장소에 등록합니다.

SAS 토큰 또는 스토리지 계정 키를 사용하도록 선택할 수 있습니다.

register_azure_my_sql

새 Azure MySQL 데이터 저장소를 초기화합니다.

MySQL 데이터 저장소는 DataReference를 입력으로 만들고 Azure Machine Learning 파이프라인의 DataTransferStep에 출력하는 데만 사용할 수 있습니다. 자세한 내용은 여기에서 찾을 수 있습니다.

Azure MySQL 데이터베이스를 데이터 저장소로 등록하는 방법의 예제는 아래를 참조하세요.

register_azure_postgre_sql

새 Azure PostgreSQL 데이터 저장소를 초기화합니다.

Azure PostgreSQL 데이터베이스를 데이터 저장소로 등록하는 방법의 예제는 아래를 참조하세요.

register_azure_sql_database

새 Azure SQL 데이터베이스 데이터 저장소를 초기화합니다.

GA(자격 증명 기반) 및 ID 기반(미리 보기) 데이터 액세스가 지원됩니다. 서비스 주체 또는 사용자 이름 + 암호를 사용하도록 선택할 수 있습니다. 데이터 저장소와 함께 자격 증명을 저장하지 않으면 사용자의 AAD 토큰이 Notebook 또는 로컬 python 프로그램에서 사용됩니다. FileDataset.mount, FileDataset.download, FileDataset.to_path, TabularDataset.to_pandas_dataframe, TabularDataset.to_dask_dataframe, TabularDataset.to_spark_dataframe, TabularDataset.to_parquet_files, TabularDataset.to_csv_files 함수 중 하나가 직접 호출되는 경우 컴퓨팅 대상의 ID는 데이터 액세스 인증을 위해 Experiment.submit에 의해 제출된 작업에 사용됩니다. 여기를 참조하세요.

Azure SQL 데이터베이스를 데이터 저장소로 등록하는 방법의 예제는 아래를 참조하세요.

register_dbfs

새 DBFS(Databricks 파일 시스템) 데이터 저장소를 초기화합니다.

DBFS 데이터 저장소는 Azure Machine Learning 파이프라인의 DatabricksStep에 대한 입력으로 DataReference를 만들고 출력으로 PipelineData를 만드는 데만 사용할 수 있습니다. 자세한 내용은 여기에서 찾을 수 있습니다.

register_hdfs

참고

이는 실험적인 메서드이며 언제든지 변경될 수도 있습니다. 자세한 내용은 https://aka.ms/azuremlexperimental을 참조하세요.

새 HDFS 데이터 저장소를 초기화합니다.

set_as_default

기본 데이터 저장소를 설정합니다.

unregister

데이터 저장소의 등록을 취소합니다. 기본 스토리지 서비스는 삭제되지 않습니다.

get

이름으로 데이터 저장소를 가져옵니다. 이는 생성자를 호출하는 것과 같습니다.

static get(workspace, datastore_name)

매개 변수

workspace
Workspace
필수

작업 영역입니다.

datastore_name
str, <xref:optional>
필수

데이터 저장소의 이름으로, 기본값은 기본 데이터 저장소를 가져오는 None으로 설정됩니다.

반환

해당 이름의 일치하는 데이터 저장소입니다.

반환 형식

get_default

작업 영역의 기본 데이터 저장소를 가져옵니다.

static get_default(workspace)

매개 변수

workspace
Workspace
필수

작업 영역입니다.

반환

작업 영역의 기본 데이터 저장소

반환 형식

register_azure_blob_container

Azure Blob 컨테이너를 데이터 저장소에 등록합니다.

GA(자격 증명 기반) 및 ID 기반(미리 보기) 데이터 액세스가 지원됩니다. SAS 토큰 또는 스토리지 계정 키를 사용하기로 선택할 수 있습니다. 데이터 저장소와 함께 자격 증명을 저장하지 않으면 사용자의 AAD 토큰이 Notebook 또는 로컬 python 프로그램에서 사용됩니다. FileDataset.mount, FileDataset.download, FileDataset.to_path, TabularDataset.to_pandas_dataframe, TabularDataset.to_dask_dataframe, TabularDataset.to_spark_dataframe, TabularDataset.to_parquet_files, TabularDataset.to_csv_files 함수 중 하나가 직접 호출되는 경우 컴퓨팅 대상의 ID는 데이터 액세스 인증을 위해 Experiment.submit에 의해 제출된 작업에 사용됩니다. 여기를 참조하세요.

static register_azure_blob_container(workspace, datastore_name, container_name, account_name, sas_token=None, account_key=None, protocol=None, endpoint=None, overwrite=False, create_if_not_exists=False, skip_validation=False, blob_cache_timeout=None, grant_workspace_access=False, subscription_id=None, resource_group=None)

매개 변수

workspace
Workspace
필수

작업 영역입니다.

datastore_name
str
필수

대/소문자를 구분하지 않는 데이터 저장소의 이름은 영숫자 및 _만 포함할 수 있습니다.

container_name
str
필수

Azure Blob 컨테이너의 이름입니다.

account_name
str
필수

스토리지 계정 이름입니다.

sas_token
str, <xref:optional>
기본값: None

계정 SAS 토큰이며 기본값은 None입니다. 데이터 읽기의 경우 컨테이너 & 개체에 대한 최소 목록 & 읽기 권한이 필요하며 데이터 쓰기의 경우 쓰기 & 추가 권한이 추가로 필요합니다.

account_key
str, <xref:optional>
기본값: None

스토리지 계정의 액세스 키로, 기본값은 None입니다.

protocol
str, <xref:optional>
기본값: None

Blob 컨테이너에 연결하는 데 사용할 프로토콜입니다. None인 경우 기본값은 https입니다.

endpoint
str, <xref:optional>
기본값: None

스토리지 계정의 엔드포인트입니다. None이면 기본값은 core.windows.net입니다.

overwrite
bool, <xref:optional>
기본값: False

기존 데이터 저장소를 덮어씁니다. 데이터 저장소가 없으면 데이터 저장소가 만들어지며 기본값은 False입니다.

create_if_not_exists
bool, <xref:optional>
기본값: False

Blob 컨테이너가 없으면 만듭니다. 기본값은 False입니다.

skip_validation
bool, <xref:optional>
기본값: False

스토리지 키의 유효성 검사를 건너뜁니다. 기본값은 False입니다.

blob_cache_timeout
int, <xref:optional>
기본값: None

이 Blob이 탑재되면 캐시 시간 제한을 이 시간(초)으로 설정합니다. None이면 기본적으로 시간 제한이 없습니다(즉, 읽을 때 작업 기간 동안 Blob이 캐시됨).

grant_workspace_access
bool, <xref:optional>
기본값: False

기본값은 False입니다. Machine Learning Studio에서 가상 네트워크 뒤의 데이터에 액세스하려면 True로 설정합니다. 이렇게 하면 Machine Learning Studio의 데이터 액세스에서 인증을 위해 작업 영역 관리 ID를 사용하고 작업 영역 관리 ID를 스토리지의 읽기 권한자로 추가합니다. 옵트인하려면 스토리지의 소유자 또는 사용자 액세스 관리자여야 합니다. 필요한 권한이 없는 경우 관리자에게 구성하도록 요청합니다. 'https://docs.microsoft.com/azure/machine-learning/how-to-enable-studio-virtual-network'에서 자세한 내용을 알아보세요.

subscription_id
str, <xref:optional>
기본값: None

스토리지 계정의 구독 ID로, 기본값은 None입니다.

resource_group
str, <xref:optional>
기본값: None

스토리지 계정의 리소스 그룹으로, 기본값은 None입니다.

반환

Blob 데이터 저장소입니다.

반환 형식

설명

작업 영역 지역과 다른 지역의 스토리지를 연결하면 대기 시간이 증가하고 추가 네트워크 사용 비용이 발생할 수 있습니다.

register_azure_data_lake

새 Azure Data Lake 데이터 저장소를 초기화합니다.

GA(자격 증명 기반) 및 ID 기반(미리 보기) 데이터 액세스가 지원됩니다. 자격 증명 기반 데이터 액세스를 위해 서비스 주체에 데이터 저장소를 등록할 수 있습니다. 데이터 저장소와 함께 자격 증명을 저장하지 않으면 사용자의 AAD 토큰이 Notebook 또는 로컬 python 프로그램에서 사용됩니다. FileDataset.mount, FileDataset.download, FileDataset.to_path, TabularDataset.to_pandas_dataframe, TabularDataset.to_dask_dataframe, TabularDataset.to_spark_dataframe, TabularDataset.to_parquet_files, TabularDataset.to_csv_files 함수 중 하나가 직접 호출되는 경우 컴퓨팅 대상의 ID는 데이터 액세스 인증을 위해 Experiment.submit에 의해 제출된 작업에 사용됩니다. 여기를 참조하세요.

Azure Data Lake Gen1을 데이터 저장소로 등록하는 방법의 예는 아래를 참조하세요.


   adlsgen1_datastore_name='adlsgen1datastore'

   store_name=os.getenv("ADL_STORENAME", "<my_datastore_name>") # the ADLS name
   subscription_id=os.getenv("ADL_SUBSCRIPTION", "<my_subscription_id>") # subscription id of the ADLS
   resource_group=os.getenv("ADL_RESOURCE_GROUP", "<my_resource_group>") # resource group of ADLS
   tenant_id=os.getenv("ADL_TENANT", "<my_tenant_id>") # tenant id of service principal
   client_id=os.getenv("ADL_CLIENTID", "<my_client_id>") # client id of service principal
   client_secret=os.getenv("ADL_CLIENT_SECRET", "<my_client_secret>") # the secret of service principal

   adls_datastore = Datastore.register_azure_data_lake(
       workspace=ws,
       datastore_name=aslsgen1_datastore_name,
       subscription_id=subscription_id, # subscription id of ADLS account
       resource_group=resource_group, # resource group of ADLS account
       store_name=store_name, # ADLS account name
       tenant_id=tenant_id, # tenant id of service principal
       client_id=client_id, # client id of service principal
       client_secret=client_secret) # the secret of service principal
static register_azure_data_lake(workspace, datastore_name, store_name, tenant_id=None, client_id=None, client_secret=None, resource_url=None, authority_url=None, subscription_id=None, resource_group=None, overwrite=False, grant_workspace_access=False)

매개 변수

workspace
Workspace
필수

이 데이터 저장소가 속한 작업 영역입니다.

datastore_name
str
필수

데이터 저장소 이름입니다.

store_name
str
필수

ADLS 저장소 이름입니다.

tenant_id
str, <xref:optional>
기본값: None

데이터에 액세스하는 데 사용되는 서비스 주체의 디렉터리 ID/테넌트 ID입니다.

client_id
str, <xref:optional>
기본값: None

데이터에 액세스하는 데 사용되는 서비스 주체의 클라이언트 ID/애플리케이션 ID입니다.

client_secret
str, <xref:optional>
기본값: None

데이터에 액세스하는 데 사용되는 서비스 주체의 클라이언트 암호입니다.

resource_url
str, <xref:optional>
기본값: None

Data Lake 저장소에서 수행할 작업을 결정하는 리소스 URL로, None인 경우 기본값은 파일 시스템 작업을 수행할 수 있도록 하는 https://datalake.azure.net/입니다.

authority_url
str, <xref:optional>
기본값: None

사용자를 인증하는 데 사용되는 기관 URL로, 기본값은 https://login.microsoftonline.com입니다.

subscription_id
str, <xref:optional>
기본값: None

ADLS 저장소가 속한 구독의 ID입니다.

resource_group
str, <xref:optional>
기본값: None

ADLS 저장소가 속한 리소스 그룹입니다.

overwrite
bool, <xref:optional>
기본값: False

기존 데이터 저장소를 덮어쓸지 여부를 나타냅니다. 데이터 저장소가 없으면 데이터 저장소를 만듭니다. 기본값은 False입니다.

grant_workspace_access
bool, <xref:optional>
기본값: False

기본값은 False입니다. Machine Learning Studio에서 가상 네트워크 뒤의 데이터에 액세스하려면 True로 설정합니다. 이렇게 하면 Machine Learning Studio의 데이터 액세스에서 인증을 위해 작업 영역 관리 ID를 사용하고 작업 영역 관리 ID를 스토리지의 읽기 권한자로 추가합니다. 옵트인하려면 스토리지의 소유자 또는 사용자 액세스 관리자여야 합니다. 필요한 권한이 없는 경우 관리자에게 구성하도록 요청합니다. 'https://docs.microsoft.com/azure/machine-learning/how-to-enable-studio-virtual-network'에서 자세한 내용을 알아보세요.

반환

Azure Data Lake 데이터 저장소를 반환합니다.

반환 형식

설명

작업 영역 지역과 다른 지역의 스토리지를 연결하면 대기 시간이 증가하고 추가 네트워크 사용 비용이 발생할 수 있습니다.

참고

Azure Data Lake 데이터 저장소는 Azure Machine Learning 파이프라인을 사용하여 데이터 전송 및 U-Sql 작업 실행을 지원합니다.

지원되는 모든 컴퓨팅에서 다운로드하거나 탑재할 수 있는 Azure Machine Learning 데이터 세트의 데이터 원본으로 사용할 수도 있습니다.

register_azure_data_lake_gen2

새 Azure Data Lake Gen2 데이터 저장소를 초기화합니다.

GA(자격 증명 기반) 및 ID 기반(미리 보기) 데이터 액세스가 지원됩니다. 자격 증명 기반 데이터 액세스를 위해 서비스 주체에 데이터 저장소를 등록할 수 있습니다. 데이터 저장소와 함께 자격 증명을 저장하지 않으면 사용자의 AAD 토큰이 Notebook 또는 로컬 python 프로그램에서 사용됩니다. FileDataset.mount, FileDataset.download, FileDataset.to_path, TabularDataset.to_pandas_dataframe, TabularDataset.to_dask_dataframe, TabularDataset.to_spark_dataframe, TabularDataset.to_parquet_files, TabularDataset.to_csv_files 함수 중 하나가 직접 호출되는 경우 컴퓨팅 대상의 ID는 데이터 액세스 인증을 위해 Experiment.submit에 의해 제출된 작업에 사용됩니다. 여기를 참조하세요.

static register_azure_data_lake_gen2(workspace, datastore_name, filesystem, account_name, tenant_id=None, client_id=None, client_secret=None, resource_url=None, authority_url=None, protocol=None, endpoint=None, overwrite=False, subscription_id=None, resource_group=None, grant_workspace_access=False)

매개 변수

workspace
Workspace
필수

이 데이터 저장소가 속한 작업 영역입니다.

datastore_name
str
필수

데이터 저장소 이름입니다.

filesystem
str
필수

Data Lake Gen2 파일 시스템의 이름입니다.

account_name
str
필수

스토리지 계정 이름입니다.

tenant_id
str, <xref:optional>
기본값: None

서비스 주체의 디렉터리 ID/테넌트 ID입니다.

client_id
str, <xref:optional>
기본값: None

서비스 주체의 클라이언트 ID/애플리케이션 ID입니다.

client_secret
str, <xref:optional>
기본값: None

서비스 주체의 비밀입니다.

resource_url
str, <xref:optional>
기본값: None

데이터 레이크 저장소에서 수행할 작업을 결정하는 리소스 URL은 파일 시스템 작업을 수행할 수 있도록 하는 https://storage.azure.com/으로 기본 설정됩니다.

authority_url
str, <xref:optional>
기본값: None

사용자를 인증하는 데 사용되는 기관 URL로, 기본값은 https://login.microsoftonline.com입니다.

protocol
str, <xref:optional>
기본값: None

Blob 컨테이너에 연결하는 데 사용할 프로토콜입니다. None인 경우 기본값은 https입니다.

endpoint
str, <xref:optional>
기본값: None

스토리지 계정의 엔드포인트입니다. None이면 기본값은 core.windows.net입니다.

overwrite
bool, <xref:optional>
기본값: False

기존 데이터 저장소를 덮어쓸지 여부를 나타냅니다. 데이터 저장소가 없으면 데이터 저장소를 만듭니다. 기본값은 False입니다.

subscription_id
str, <xref:optional>
기본값: None

ADLS 저장소가 속한 구독의 ID입니다.

resource_group
str, <xref:optional>
기본값: None

ADLS 저장소가 속한 리소스 그룹입니다.

grant_workspace_access
bool, <xref:optional>
기본값: False

기본값은 False입니다. Machine Learning Studio에서 가상 네트워크 뒤의 데이터에 액세스하려면 True로 설정합니다. 이렇게 하면 Machine Learning Studio의 데이터 액세스에서 인증을 위해 작업 영역 관리 ID를 사용하고 작업 영역 관리 ID를 스토리지의 읽기 권한자로 추가합니다. 옵트인하려면 스토리지의 소유자 또는 사용자 액세스 관리자여야 합니다. 필요한 권한이 없는 경우 관리자에게 구성하도록 요청합니다. 'https://docs.microsoft.com/azure/machine-learning/how-to-enable-studio-virtual-network'에서 자세한 내용을 알아보세요.

반환

Azure Data Lake Gen2 데이터 저장소를 반환합니다.

반환 형식

설명

작업 영역 지역과 다른 지역의 스토리지를 연결하면 대기 시간이 증가하고 추가 네트워크 사용 비용이 발생할 수 있습니다.

register_azure_file_share

Azure 파일 공유를 데이터 저장소에 등록합니다.

SAS 토큰 또는 스토리지 계정 키를 사용하도록 선택할 수 있습니다.

static register_azure_file_share(workspace, datastore_name, file_share_name, account_name, sas_token=None, account_key=None, protocol=None, endpoint=None, overwrite=False, create_if_not_exists=False, skip_validation=False)

매개 변수

workspace
Workspace
필수

이 데이터 저장소가 속한 작업 영역입니다.

datastore_name
str
필수

대/소문자를 구분하지 않는 데이터 저장소의 이름은 영숫자 및 _만 포함할 수 있습니다.

file_share_name
str
필수

Azure 파일 컨테이너의 이름입니다.

account_name
str
필수

스토리지 계정 이름입니다.

sas_token
str, <xref:optional>
기본값: None

계정 SAS 토큰이며 기본값은 None입니다. 데이터 읽기의 경우 컨테이너 & 개체에 대한 최소 목록 & 읽기 권한이 필요하며 데이터 쓰기의 경우 쓰기 & 추가 권한이 추가로 필요합니다.

account_key
str, <xref:optional>
기본값: None

스토리지 계정의 액세스 키로, 기본값은 None입니다.

protocol
str, <xref:optional>
기본값: None

파일 공유에 연결하는 데 사용할 프로토콜입니다. None인 경우 기본값은 https입니다.

endpoint
str, <xref:optional>
기본값: None

파일 공유의 엔드포인트입니다. None이면 기본값은 core.windows.net입니다.

overwrite
bool, <xref:optional>
기본값: False

기존 데이터 저장소를 덮어쓸지 여부를 나타냅니다. 데이터 저장소가 없으면 데이터 저장소를 만듭니다. 기본값은 False입니다.

create_if_not_exists
bool, <xref:optional>
기본값: False

파일 공유가 없는 경우 파일 공유를 만들지 여부를 나타냅니다. 기본값은 False입니다.

skip_validation
bool, <xref:optional>
기본값: False

스토리지 키의 유효성 검사를 건너뛸지 여부를 나타냅니다. 기본값은 False입니다.

반환

파일 데이터 저장소입니다.

반환 형식

설명

작업 영역 지역과 다른 지역의 스토리지를 연결하면 대기 시간이 증가하고 추가 네트워크 사용 비용이 발생할 수 있습니다.

register_azure_my_sql

새 Azure MySQL 데이터 저장소를 초기화합니다.

MySQL 데이터 저장소는 DataReference를 입력으로 만들고 Azure Machine Learning 파이프라인의 DataTransferStep에 출력하는 데만 사용할 수 있습니다. 자세한 내용은 여기에서 찾을 수 있습니다.

Azure MySQL 데이터베이스를 데이터 저장소로 등록하는 방법의 예제는 아래를 참조하세요.

static register_azure_my_sql(workspace, datastore_name, server_name, database_name, user_id, user_password, port_number=None, endpoint=None, overwrite=False, **kwargs)

매개 변수

workspace
Workspace
필수

이 데이터 저장소가 속한 작업 영역입니다.

datastore_name
str
필수

데이터 저장소 이름입니다.

server_name
str
필수

MySQL 서버 이름입니다.

database_name
str
필수

MySQL 데이터베이스 이름입니다.

user_id
str
필수

MySQL 서버의 사용자 ID입니다.

user_password
str
필수

MySQL 서버의 사용자 암호입니다.

port_number
str
기본값: None

MySQL 서버의 포트 번호입니다.

endpoint
str, <xref:optional>
기본값: None

MySQL 서버의 엔드포인트입니다. None이면 기본적으로 mysql.database.azure.com입니다.

overwrite
bool, <xref:optional>
기본값: False

기존 데이터 저장소를 덮어쓸지 여부를 나타냅니다. 데이터 저장소가 없으면 데이터 저장소를 만듭니다. 기본값은 False입니다.

반환

MySQL 데이터베이스 데이터 저장소를 반환합니다.

반환 형식

설명

작업 영역 지역과 다른 지역의 스토리지를 연결하면 대기 시간이 증가하고 추가 네트워크 사용 비용이 발생할 수 있습니다.


   mysql_datastore_name="mysqldatastore"
   server_name=os.getenv("MYSQL_SERVERNAME", "<my_server_name>") # FQDN name of the MySQL server
   database_name=os.getenv("MYSQL_DATBASENAME", "<my_database_name>") # Name of the MySQL database
   user_id=os.getenv("MYSQL_USERID", "<my_user_id>") # The User ID of the MySQL server
   user_password=os.getenv("MYSQL_USERPW", "<my_user_password>") # The user password of the MySQL server.

   mysql_datastore = Datastore.register_azure_my_sql(
       workspace=ws,
       datastore_name=mysql_datastore_name,
       server_name=server_name,
       database_name=database_name,
       user_id=user_id,
       user_password=user_password)

register_azure_postgre_sql

새 Azure PostgreSQL 데이터 저장소를 초기화합니다.

Azure PostgreSQL 데이터베이스를 데이터 저장소로 등록하는 방법의 예제는 아래를 참조하세요.

static register_azure_postgre_sql(workspace, datastore_name, server_name, database_name, user_id, user_password, port_number=None, endpoint=None, overwrite=False, enforce_ssl=True, **kwargs)

매개 변수

workspace
Workspace
필수

이 데이터 저장소가 속한 작업 영역입니다.

datastore_name
str
필수

데이터 저장소 이름입니다.

server_name
str
필수

PostgreSQL 서버 이름입니다.

database_name
str
필수

PostgreSQL 데이터베이스 이름입니다.

user_id
str
필수

PostgreSQL 서버의 사용자 ID입니다.

user_password
str
필수

PostgreSQL 서버의 사용자 암호입니다.

port_number
str
기본값: None

PostgreSQL 서버의 포트 번호입니다.

endpoint
str, <xref:optional>
기본값: None

PostgreSQL 서버의 엔드포인트입니다. None이면 기본적으로 postgres.database.azure.com입니다.

overwrite
bool, <xref:optional>
기본값: False

기존 데이터 저장소를 덮어쓸지 여부를 나타냅니다. 데이터 저장소가 없으면 데이터 저장소를 만듭니다. 기본값은 False입니다.

enforce_ssl
bool
기본값: True

PostgreSQL 서버의 SSL 요구 사항을 나타냅니다. 기본값은 True입니다.

반환

PostgreSQL 데이터베이스 데이터 저장소를 반환합니다.

반환 형식

설명

작업 영역 지역과 다른 지역의 스토리지를 연결하면 대기 시간이 증가하고 추가 네트워크 사용 비용이 발생할 수 있습니다.


   psql_datastore_name="postgresqldatastore"
   server_name=os.getenv("PSQL_SERVERNAME", "<my_server_name>") # FQDN name of the PostgreSQL server
   database_name=os.getenv("PSQL_DATBASENAME", "<my_database_name>") # Name of the PostgreSQL database
   user_id=os.getenv("PSQL_USERID", "<my_user_id>") # The database user id
   user_password=os.getenv("PSQL_USERPW", "<my_user_password>") # The database user password

   psql_datastore = Datastore.register_azure_postgre_sql(
       workspace=ws,
       datastore_name=psql_datastore_name,
       server_name=server_name,
       database_name=database_name,
       user_id=user_id,
       user_password=user_password)

register_azure_sql_database

새 Azure SQL 데이터베이스 데이터 저장소를 초기화합니다.

GA(자격 증명 기반) 및 ID 기반(미리 보기) 데이터 액세스가 지원됩니다. 서비스 주체 또는 사용자 이름 + 암호를 사용하도록 선택할 수 있습니다. 데이터 저장소와 함께 자격 증명을 저장하지 않으면 사용자의 AAD 토큰이 Notebook 또는 로컬 python 프로그램에서 사용됩니다. FileDataset.mount, FileDataset.download, FileDataset.to_path, TabularDataset.to_pandas_dataframe, TabularDataset.to_dask_dataframe, TabularDataset.to_spark_dataframe, TabularDataset.to_parquet_files, TabularDataset.to_csv_files 함수 중 하나가 직접 호출되는 경우 컴퓨팅 대상의 ID는 데이터 액세스 인증을 위해 Experiment.submit에 의해 제출된 작업에 사용됩니다. 여기를 참조하세요.

Azure SQL 데이터베이스를 데이터 저장소로 등록하는 방법의 예제는 아래를 참조하세요.

static register_azure_sql_database(workspace, datastore_name, server_name, database_name, tenant_id=None, client_id=None, client_secret=None, resource_url=None, authority_url=None, endpoint=None, overwrite=False, username=None, password=None, subscription_id=None, resource_group=None, grant_workspace_access=False, **kwargs)

매개 변수

workspace
Workspace
필수

이 데이터 저장소가 속한 작업 영역입니다.

datastore_name
str
필수

데이터 저장소 이름입니다.

server_name
str
필수

SQL 서버 이름입니다. "sample.database.windows.net"과 같은 정규화된 도메인 이름의 경우 server_name 값은 "sample"이어야 하며 엔드포인트 값은 "database.windows.net"이어야 합니다.

database_name
str
필수

SQL 데이터베이스 이름입니다.

tenant_id
str
기본값: None

서비스 주체의 디렉터리 ID/테넌트 ID입니다.

client_id
str
기본값: None

서비스 주체의 클라이언트 ID/애플리케이션 ID입니다.

client_secret
str
기본값: None

서비스 주체의 비밀입니다.

resource_url
str, <xref:optional>
기본값: None

SQL 데이터베이스 저장소에서 수행할 작업을 결정하는 리소스 URL로, None인 경우 기본값은 https://database.windows.net/입니다.

authority_url
str, <xref:optional>
기본값: None

사용자를 인증하는 데 사용되는 기관 URL로, 기본값은 https://login.microsoftonline.com입니다.

endpoint
str, <xref:optional>
기본값: None

SQL 서버의 엔드포인트입니다. None이면 기본적으로 database.windows.net입니다.

overwrite
bool, <xref:optional>
기본값: False

기존 데이터 저장소를 덮어쓸지 여부를 나타냅니다. 데이터 저장소가 없으면 데이터 저장소를 만듭니다. 기본값은 False입니다.

username
str
기본값: None

데이터베이스에 액세스하기 위한 데이터베이스 사용자의 사용자 이름입니다.

password
str
기본값: None

데이터베이스에 액세스하기 위한 데이터베이스 사용자의 암호입니다.

skip_validation
bool, <xref:optional>
필수

SQL 데이터베이스에 대한 연결의 유효성 검사를 건너뛸지 여부를 나타냅니다. 기본값은 False입니다.

subscription_id
str, <xref:optional>
기본값: None

ADLS 저장소가 속한 구독의 ID입니다.

resource_group
str, <xref:optional>
기본값: None

ADLS 저장소가 속한 리소스 그룹입니다.

grant_workspace_access
bool, <xref:optional>
기본값: False

기본값은 False입니다. Machine Learning Studio에서 가상 네트워크 뒤의 데이터에 액세스하려면 True로 설정합니다. 이렇게 하면 Machine Learning Studio의 데이터 액세스에서 인증을 위해 작업 영역 관리 ID를 사용하고 작업 영역 관리 ID를 스토리지의 읽기 권한자로 추가합니다. 옵트인하려면 스토리지의 소유자 또는 사용자 액세스 관리자여야 합니다. 필요한 권한이 없는 경우 관리자에게 구성하도록 요청합니다. 'https://docs.microsoft.com/azure/machine-learning/how-to-enable-studio-virtual-network'에서 자세한 내용을 알아보세요.

반환

SQL 데이터베이스 데이터 저장소를 반환합니다.

반환 형식

설명

작업 영역 지역과 다른 지역의 스토리지를 연결하면 대기 시간이 증가하고 추가 네트워크 사용 비용이 발생할 수 있습니다.


   sql_datastore_name="azuresqldatastore"
   server_name=os.getenv("SQL_SERVERNAME", "<my_server_name>") # Name of the Azure SQL server
   database_name=os.getenv("SQL_DATABASENAME", "<my_database_name>") # Name of the Azure SQL database
   username=os.getenv("SQL_USER_NAME", "<my_sql_user_name>") # The username of the database user.
   password=os.getenv("SQL_USER_PASSWORD", "<my_sql_user_password>") # The password of the database user.

   sql_datastore = Datastore.register_azure_sql_database(
       workspace=ws,
       datastore_name=sql_datastore_name,
       server_name=server_name,  # name should not contain fully qualified domain endpoint
       database_name=database_name,
       username=username,
       password=password,
       endpoint='database.windows.net')

register_dbfs

새 DBFS(Databricks 파일 시스템) 데이터 저장소를 초기화합니다.

DBFS 데이터 저장소는 Azure Machine Learning 파이프라인의 DatabricksStep에 대한 입력으로 DataReference를 만들고 출력으로 PipelineData를 만드는 데만 사용할 수 있습니다. 자세한 내용은 여기에서 찾을 수 있습니다.

static register_dbfs(workspace, datastore_name)

매개 변수

workspace
Workspace
필수

이 데이터 저장소가 속한 작업 영역입니다.

datastore_name
str
필수

데이터 저장소 이름입니다.

반환

DBFS 데이터 저장소를 반환합니다.

반환 형식

설명

작업 영역 지역과 다른 지역의 스토리지를 연결하면 대기 시간이 증가하고 추가 네트워크 사용 비용이 발생할 수 있습니다.

register_hdfs

참고

이는 실험적인 메서드이며 언제든지 변경될 수도 있습니다. 자세한 내용은 https://aka.ms/azuremlexperimental을 참조하세요.

새 HDFS 데이터 저장소를 초기화합니다.

static register_hdfs(workspace, datastore_name, protocol, namenode_address, hdfs_server_certificate, kerberos_realm, kerberos_kdc_address, kerberos_principal, kerberos_keytab=None, kerberos_password=None, overwrite=False)

매개 변수

workspace
Workspace
필수

이 데이터 저장소가 속한 작업 영역

datastore_name
str
필수

데이터 저장소 이름

protocol
str 또는 <xref:_restclient.models.enum>
필수

HDFS 클러스터와 통신할 때 사용할 프로토콜입니다. http 또는 https. 가능한 값은 'http', 'https'입니다.

namenode_address
str
필수

HDFS 이름 노드의 IP 주소 또는 DNS 호스트 이름입니다. 필요에 따라 포트를 포함합니다.

hdfs_server_certificate
str, <xref:optional>
필수

자체 서명된 인증서와 함께 TLS를 사용하는 경우 HDFS 이름 노드의 TLS 서명 인증서 경로입니다.

kerberos_realm
str
필수

Kerberos 영역입니다.

kerberos_kdc_address
str
필수

Kerberos KDC의 IP 주소 또는 DNS 호스트 이름입니다.

kerberos_principal
str
필수

인증 및 권한 부여에 사용할 Kerberos 보안 주체입니다.

kerberos_keytab
str, <xref:optional>
필수

Kerberos 보안 주체에 해당하는 키를 포함하는 keytab 파일의 경로입니다. 이 경로 또는 암호를 제공합니다.

kerberos_password
str, <xref:optional>
필수

Kerberos 보안 주체에 해당하는 암호입니다. 이 암호 또는 keytab 파일에 대한 경로를 제공합니다.

overwrite
bool, <xref:optional>
필수

기존 데이터 저장소를 덮어씁니다. 데이터 저장소가 없으면 데이터 저장소를 만듭니다. 기본값은 False입니다.

set_as_default

기본 데이터 저장소를 설정합니다.

set_as_default()

매개 변수

datastore_name
str
필수

데이터 저장소의 이름입니다.

unregister

데이터 저장소의 등록을 취소합니다. 기본 스토리지 서비스는 삭제되지 않습니다.

unregister()