Veri varlıklarını içeri aktarma (önizleme)

ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)Python SDK azure-ai-ml v2 (geçerli)

Bu makalede, verileri dış kaynaklardan Azure Machine Learning platformuna aktarmayı öğreneceksiniz. Başarılı bir veri içeri aktarma işlemi, bu içeri aktarma sırasında sağlanan adla bir Azure Machine Learning veri varlığını otomatik olarak oluşturur ve kaydeder. Azure Machine Learning veri varlığı, web tarayıcısı yer işaretine (sık kullanılanlar) benzer. En sık kullanılan verilerinize işaret eden uzun depolama yollarını (URI) hatırlamanız gerekmez. Bunun yerine, bir veri varlığı oluşturabilir ve ardından bu varlığa kolay bir adla erişebilirsiniz.

Veri içeri aktarma, Azure Machine Learning eğitim işlerinde daha hızlı ve güvenilir veri erişimi için meta verilerle birlikte kaynak verilerin önbelleğini oluşturur. Veri önbelleği ağ ve bağlantı kısıtlamalarını önler. Önbelleğe alınan veriler yeniden üretilebilirliği destekleyecek şekilde oluşturulur. Bu, SQL Server kaynaklarından içeri aktarılan veriler için sürüm oluşturma özellikleri sağlar. Ayrıca, önbelleğe alınan veriler denetim görevleri için veri kökeni sağlar. Veri içeri aktarmada arka planda ADF (Azure Data Factory işlem hatları) kullanılır; bu da kullanıcıların ADF ile karmaşık etkileşimlerden kaçınabileceği anlamına gelir. Azure Machine Learning, uygun paralelleştirmeyi belirleyerek veri aktarımını iyileştirmek için arka planda ADF işlem kaynak havuzu boyutunun, işlem kaynağının sağlanmasının ve yok edilmesi işlemlerinin yönetimini de üstlenir.

Aktarılan veriler bölümlenmiş ve Azure depolamada parquet dosyaları olarak güvenli bir şekilde depolanır. Bu, eğitim sırasında daha hızlı işlemeye olanak tanır. ADF işlem maliyetleri yalnızca veri aktarımları için kullanılan süreyi içerir. Depolama maliyetleri yalnızca verileri önbelleğe almak için gereken süreyi içerir, çünkü önbelleğe alınan veriler dış kaynaktan içeri aktarılan verilerin bir kopyasıdır. Azure depolama bu dış kaynağı barındırıyor.

Önbelleğe alma özelliği ön işlem ve depolama maliyetlerini içerir. Ancak, eğitim sırasında dış kaynak verilerine doğrudan bağlantılarla karşılaştırıldığında yinelenen eğitim işlem maliyetlerini azalttığı için kendisi için ödeme yapabilir ve tasarruf edebilir. Verileri parquet dosyaları olarak önbelleğe alır ve bu da daha büyük veri kümeleri için bağlantı zaman aşımlarına karşı iş eğitimini daha hızlı ve güvenilir hale getirir. Bu da daha az yeniden çalıştırmaya ve daha az eğitim hatasına yol açar.

Amazon S3, Azure SQL ve Snowflake'den verileri içeri aktarabilirsiniz.

Önemli

Bu özellik şu anda genel önizlemededir. Bu önizleme sürümü hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yükleri için bu sürümü önermeyiz. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir.

Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri Ek Kullanım Koşulları.

Önkoşullar

Veri varlıkları oluşturmak ve bunlarla çalışmak için şunları yapmanız gerekir:

Not

Başarılı bir veri içeri aktarma işlemi için SDK için en son azure-ai-ml paketini (sürüm 1.15.0 veya üzeri) ve ml uzantısını (sürüm 2.15.1 veya üzeri) yüklediğinizi doğrulayın.

Daha eski bir SDK paketiniz veya CLI uzantınız varsa, lütfen eskisini kaldırın ve yenisini sekme bölümünde gösterilen kodla yükleyin. Burada gösterildiği gibi SDK ve CLI yönergelerini izleyin:

Kod sürümleri

az extension remove -n ml
az extension add -n ml --yes
az extension show -n ml #(the version value needs to be 2.15.1 or later)

Dış veritabanından mltable veri varlığı olarak içeri aktarma

Not

Dış veritabanlarında Snowflake, Azure SQL vb. biçimleri olabilir.

Aşağıdaki kod örnekleri dış veritabanlarından verileri içeri aktarabilir. İçeri connection aktarma eylemini işleyen, dış veritabanı veri kaynağı meta verilerini belirler. Bu örnekte kod, snowflake kaynağından verileri içeri aktarır. Bağlantı bir Snowflake kaynağına işaret eder. Küçük bir değişiklikle, bağlantı bir Azure SQL veritabanı kaynağına ve bir Azure SQL veritabanı kaynağına işaret edebilir. Dış veritabanı kaynağından içeri aktarılan varlık type şeklindedir mltable.

YAML Dosya <file-name>.ymloluşturma:

$schema: http://azureml/sdk-2-0/DataImport.json
# Supported connections include:
# Connection: azureml:<workspace_connection_name>
# Supported paths include:
# Datastore: azureml://datastores/<data_store_name>/paths/<my_path>/${{name}}


type: mltable
name: <name>
source:
  type: database
  query: <query>
  connection: <connection>
path: <path>

Ardından, CLI'da aşağıdaki komutu çalıştırın:

> az ml data import -f <file-name>.yml

Dış dosya sisteminden verileri klasör veri varlığı olarak içeri aktarma

Not

Amazon S3 veri kaynağı, dış dosya sistemi kaynağı olarak görev yapabilir.

connection Veri içeri aktarma eylemini işleyen, dış veri kaynağının yönlerini belirler. Bağlantı, hedef olarak bir Amazon S3 demeti tanımlar. Bağlantı geçerli path bir değer bekler. Dış dosya sistemi kaynağından içeri aktarılan varlık değerinin bir type değeri uri_foldervardır.

Sonraki kod örneği bir Amazon S3 kaynağından verileri içeri aktarır.

YAML Dosya <file-name>.ymloluşturma:

$schema: http://azureml/sdk-2-0/DataImport.json
# Supported connections include:
# Connection: azureml:<workspace_connection_name>
# Supported paths include:
# path: azureml://datastores/<data_store_name>/paths/<my_path>/${{name}}


type: uri_folder
name: <name>
source:
  type: file_system
  path: <path_on_source>
  connection: <connection>
path: <path>

Ardından, CLI'da şu komutu yürütür:

> az ml data import -f <file-name>.yml

Dış veri kaynaklarının içeri aktarma durumunu denetleme

Veri içeri aktarma eylemi zaman uyumsuz bir eylemdir. Uzun sürebilir. CLI veya SDK aracılığıyla bir içeri aktarma verisi eylemi gönderildikten sonra, Azure Machine Learning hizmetinin dış veri kaynağına bağlanması için birkaç dakika gerekebilir. Daha sonra hizmet, veri içeri aktarma işlemini başlatır ve veri önbelleğe alma ve kayıt işlemlerini işler. Veri içeri aktarma için gereken süre, kaynak veri kümesinin boyutuna da bağlıdır.

Sonraki örnek, gönderilen veri içeri aktarma etkinliğinin durumunu döndürür. Komut veya yöntem, veri gerçekleştirme durumunu belirlemek için giriş olarak "veri varlığı" adını kullanır.

> az ml data list-materialization-status --name <name>

Sonraki adımlar