Z tego artykułu dowiesz się, jak zaimportować dane do platformy Azure Machine Learning ze źródeł zewnętrznych. Pomyślne importowanie danych automatycznie tworzy i rejestruje zasób danych usługi Azure Machine Learning o nazwie podanej podczas tego importu. Zasób danych usługi Azure Machine Learning przypomina zakładkę przeglądarki internetowej (ulubione). Nie musisz pamiętać długich ścieżek magazynu (URI), które wskazują na najczęściej używane dane. Zamiast tego możesz utworzyć zasób danych, a następnie uzyskać dostęp do tego zasobu za pomocą przyjaznej nazwy.
Import danych tworzy pamięć podręczną danych źródłowych wraz z metadanymi w celu szybszego i niezawodnego dostępu do danych w zadaniach szkoleniowych usługi Azure Machine Learning. Pamięć podręczna danych pozwala uniknąć ograniczeń sieci i połączeń. Buforowane dane są wersjonowane w celu zapewnienia powtarzalności. Zapewnia to możliwości przechowywania wersji danych importowanych ze źródeł programu SQL Server. Ponadto buforowane dane zapewniają pochodzenie danych do zadań inspekcji. Importowanie danych używa potoków usługi ADF (Azure Data Factory) w tle, co oznacza, że użytkownicy mogą uniknąć złożonych interakcji z usługą ADF. W tle usługa Azure Machine Learning obsługuje również zarządzanie rozmiarem puli zasobów obliczeniowych usługi ADF, aprowizacją zasobów obliczeniowych i usuwaniem, aby zoptymalizować transfer danych, określając właściwą równoległość.
Przesyłane dane są partycjonowane i bezpiecznie przechowywane jako pliki parquet w usłudze Azure Storage. Umożliwia to szybsze przetwarzanie podczas trenowania. Koszty obliczeń usługi ADF obejmują tylko czas używany do transferów danych. Koszty magazynu obejmują tylko czas potrzebny do buforowania danych, ponieważ buforowane dane są kopią danych importowanych ze źródła zewnętrznego. Usługa Azure Storage hostuje to źródło zewnętrzne.
Funkcja buforowania obejmuje koszty obliczeń i magazynu z góry. Jednak płaci za siebie i może zaoszczędzić pieniądze, ponieważ zmniejsza cykliczne koszty obliczeń szkoleniowych, w porównaniu z bezpośrednimi połączeniami z danymi źródła zewnętrznego podczas trenowania. Buforuje dane jako pliki parquet, co sprawia, że trenowanie zadań jest szybsze i bardziej niezawodne w przypadku przekroczenia limitu czasu połączenia w przypadku większych zestawów danych. Prowadzi to do mniejszej liczby ponownych uruchomień i mniejszej liczby niepowodzeń trenowania.
Dane można importować z usług Amazon S3, Azure SQL i Snowflake.
Ważne
Ta funkcja jest obecnie w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie zalecamy korzystania z niej w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą być nieobsługiwane lub ograniczone.
Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.
Wymagania wstępne
Aby utworzyć zasoby danych i pracować z nimi, potrzebne są następujące elementy:
Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto. Wypróbuj bezpłatną lub płatną wersję usługi Azure Machine Learning.
Obszar roboczy usługi Azure Machine Learning. Tworzenie zasobów obszaru roboczego.
W przypadku pomyślnego importowania danych sprawdź, czy zainstalowano najnowszy pakiet azure-ai-ml (wersja 1.15.0 lub nowsza) dla zestawu SDK oraz rozszerzenie ml (wersja 2.15.1 lub nowsza).
Jeśli masz starszy pakiet zestawu SDK lub rozszerzenie interfejsu wiersza polecenia, usuń stary i zainstaluj nowy przy użyciu kodu pokazanego w sekcji tabulacji. Postępuj zgodnie z instrukcjami dotyczącymi zestawu SDK i interfejsu wiersza polecenia, jak pokazano poniżej:
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)
pip install azure-ai-ml
pip show azure-ai-ml #(the version value needs to be 1.15.0 or later)
Niedostępne.
Importowanie z zewnętrznej bazy danych jako zasobu danych mltable
Uwaga
Zewnętrzne bazy danych mogą mieć formaty Snowflake, Azure SQL itp.
Poniższe przykłady kodu mogą importować dane z zewnętrznych baz danych. Element connection obsługujący akcję importowania określa metadane zewnętrznego źródła danych bazy danych. W tym przykładzie kod importuje dane z zasobu Snowflake. Połączenie wskazuje źródło Snowflake. W przypadku niewielkiej modyfikacji połączenie może wskazywać źródło bazy danych Azure SQL Database i źródło bazy danych Azure SQL Database. Zaimportowany zasób type z zewnętrznego źródła bazy danych to mltable.
W obszarze Zasoby w obszarze nawigacji po lewej stronie wybierz pozycję Dane. Następnie wybierz kartę Importowanie danych. Następnie wybierz pozycję Utwórz, jak pokazano na tym zrzucie ekranu:
Na ekranie Źródło danych wybierz pozycję Snowflake, a następnie wybierz pozycję Dalej, jak pokazano na poniższym zrzucie ekranu:
Na ekranie Typ danych wypełnij wartości. Wartość typu jest domyślnie ustawiona na Tabela (mltable).. Następnie wybierz pozycję Dalej, jak pokazano na tym zrzucie ekranu:
Na ekranie Tworzenie importu danych wypełnij wartości, a następnie wybierz pozycję Dalej, jak pokazano na poniższym zrzucie ekranu:
Wypełnij wartości na ekranie Wybieranie magazynu danych do danych wyjściowych, a następnie wybierz pozycję Dalej, jak pokazano na tym zrzucie ekranu. Magazyn danych zarządzany przez obszar roboczy jest domyślnie wybierany. Ścieżka jest automatycznie przypisywana przez system po wybraniu zarządzanego magazynu danych. W przypadku wybrania obszaru roboczego zarządzanego magazynu danych zostanie wyświetlona lista rozwijana Automatycznego usuwania . Oferuje on domyślnie przedział czasu usuwania danych 30 dni i sposób zarządzania zaimportowanymi zasobami danych wyjaśnia, jak zmienić tę wartość.
Uwaga
Aby wybrać własny magazyn danych, wybierz pozycję Inne magazyny danych. W takim przypadku należy wybrać ścieżkę lokalizacji pamięci podręcznej danych.
Możesz dodać harmonogram. Wybierz pozycję Dodaj harmonogram , jak pokazano na tym zrzucie ekranu:
Zostanie otwarty nowy panel, w którym można zdefiniować harmonogram cyklu lub harmonogram Cron . Ten zrzut ekranu przedstawia panel harmonogramu cyklu :
Nazwa: unikatowy identyfikator harmonogramu w obszarze roboczym.
Opis: opis harmonogramu.
Wyzwalacz: wzorzec cyklu harmonogramu, który zawiera następujące właściwości.
Strefa czasowa: obliczenie czasu wyzwalacza jest oparte na tej strefie czasowej; (UTC) Uniwersalny czas koordynowany domyślnie.
Wyrażenie cyklowe lub Cron: wybierz pozycję cykl, aby określić wzorzec cykliczny. W obszarze Cykl można określić częstotliwość cyklu — według minut, godzin, dni, tygodni lub miesięcy.
Początek: harmonogram najpierw staje się aktywny w tej dacie. Domyślnie data utworzenia tego harmonogramu.
Koniec: harmonogram stanie się nieaktywny po tej dacie. Domyślnie jest to NONE, co oznacza, że harmonogram będzie zawsze aktywny do momentu ręcznego jego wyłączenia.
Tagi: wybrane tagi harmonogramu.
Uwaga
Początek określa datę i godzinę rozpoczęcia ze strefą czasową harmonogramu. Jeśli godzina rozpoczęcia zostanie pominięta, czas rozpoczęcia jest równy czasowi tworzenia harmonogramu. W ciągu ostatniego czasu rozpoczęcia pierwsze zadanie jest uruchamiane w następnym obliczonym czasie wykonywania.
Następny zrzut ekranu przedstawia ostatni ekran tego procesu. Przejrzyj wybrane opcje i wybierz pozycję Utwórz. Na tym ekranie i innych ekranach w tym procesie wybierz pozycję Wstecz, aby przejść do wcześniejszych ekranów, aby zmienić wybrane wartości.
Ten zrzut ekranu przedstawia panel harmonogramu Cron :
Nazwa: unikatowy identyfikator harmonogramu w obszarze roboczym.
Opis: opis harmonogramu.
Wyzwalacz: wzorzec cyklu harmonogramu, który zawiera następujące właściwości.
Strefa czasowa: obliczenie czasu wyzwalacza jest oparte na tej strefie czasowej; (UTC) Uniwersalny czas koordynowany domyślnie.
Wyrażenie cyklowe lub Cron: wybierz wyrażenie cron, aby określić szczegóły cronu.
(Wymagane)expression Używa standardowego wyrażenia crontab w celu wyrażenia harmonogramu cyklicznego. Pojedyncze wyrażenie składa się z pięciu pól rozdzielanych spacjami:
MINUTES HOURS DAYS MONTHS DAYS-OF-WEEK
Pojedyncza symbol wieloznaczny (*), która obejmuje wszystkie wartości pola. Wartość *, w dniach oznacza wszystkie dni miesiąca (które różnią się w zależności od miesiąca i roku).
W expression: "15 16 * * 1" powyższym przykładzie oznacza 16:15 w każdy poniedziałek.
W następnej tabeli wymieniono prawidłowe wartości dla każdego pola:
Pole
Zakres
Komentarz
MINUTES
0-59
-
HOURS
0-23
-
DAYS
-
Nieobsługiwane. Wartość jest ignorowana i traktowana jako *.
MONTHS
-
Nieobsługiwane. Wartość jest ignorowana i traktowana jako *.
DAYS-OF-WEEK
0-6
Zero (0) oznacza niedzielę. Nazwy dni również zostały zaakceptowane.
Aby uzyskać więcej informacji na temat wyrażeń crontab, odwiedź witrynę typu wiki Crontab Expression w witrynie GitHub.
Ważne
DAYS i MONTH nie są obsługiwane. Jeśli przekażesz jedną z tych wartości, zostanie ona zignorowana i traktowana jako *.
Początek: harmonogram najpierw staje się aktywny w tej dacie. Domyślnie data utworzenia tego harmonogramu.
Koniec: harmonogram stanie się nieaktywny po tej dacie. Domyślnie jest to NONE, co oznacza, że harmonogram będzie zawsze aktywny do momentu ręcznego jego wyłączenia.
Tagi: wybrane tagi harmonogramu.
Uwaga
Początek określa datę i godzinę rozpoczęcia ze strefą czasową harmonogramu. Jeśli godzina rozpoczęcia zostanie pominięta, czas rozpoczęcia jest równy czasowi tworzenia harmonogramu. W ciągu ostatniego czasu rozpoczęcia pierwsze zadanie jest uruchamiane w następnym obliczonym czasie wykonywania.
Następny zrzut ekranu przedstawia ostatni ekran tego procesu. Przejrzyj wybrane opcje i wybierz pozycję Utwórz. Na tym ekranie i innych ekranach w tym procesie wybierz pozycję Wstecz, aby przejść do wcześniejszych ekranów, aby zmienić wybrane wartości.
Importowanie danych z zewnętrznego systemu plików jako zasobu danych folderu
Uwaga
Zasób danych amazon S3 może służyć jako zewnętrzny zasób systemu plików.
Element connection obsługujący akcję importowania danych określa aspekty zewnętrznego źródła danych. Połączenie definiuje zasobnik Amazon S3 jako docelowy. Połączenie oczekuje prawidłowej path wartości. Wartość zasobu zaimportowana ze źródła zewnętrznego systemu plików ma type wartość uri_folder.
Następny przykładowy kod importuje dane z zasobu amazon S3.
W obszarze Zasoby w obszarze nawigacji po lewej stronie wybierz pozycję Dane. Następnie wybierz kartę Importowanie danych. Następnie wybierz pozycję Utwórz, jak pokazano na tym zrzucie ekranu:
Na ekranie Źródło danych wybierz pozycję S3, a następnie wybierz pozycję Dalej, jak pokazano na poniższym zrzucie ekranu:
Na ekranie Typ danych wypełnij wartości. Wartość typu jest domyślnie ustawiona na Folder (uri_folder). Następnie wybierz pozycję Dalej, jak pokazano na tym zrzucie ekranu:
Na ekranie Tworzenie importu danych wypełnij wartości, a następnie wybierz pozycję Dalej, jak pokazano na poniższym zrzucie ekranu:
Wypełnij wartości na ekranie Wybieranie magazynu danych do danych wyjściowych, a następnie wybierz pozycję Dalej, jak pokazano na tym zrzucie ekranu. Zarządzany magazyn danych obszaru roboczego jest domyślnie wybierany. Ścieżka jest automatycznie przypisywana przez system po wybraniu zarządzanego magazynu danych. W przypadku wybrania obszaru roboczego zarządzanego magazynu danych zostanie wyświetlona lista rozwijana Automatycznego usuwania . Oferuje on domyślnie przedział czasu usuwania danych 30 dni i sposób zarządzania zaimportowanymi zasobami danych wyjaśnia, jak zmienić tę wartość.
Możesz dodać harmonogram. Wybierz pozycję Dodaj harmonogram , jak pokazano na tym zrzucie ekranu:
Zostanie otwarty nowy panel, w którym można zdefiniować harmonogram cyklu lub harmonogram Cron . Ten zrzut ekranu przedstawia panel harmonogramu cyklu :
Nazwa: unikatowy identyfikator harmonogramu w obszarze roboczym.
Opis: opis harmonogramu.
Wyzwalacz: wzorzec cyklu harmonogramu, który zawiera następujące właściwości.
Strefa czasowa: obliczenie czasu wyzwalacza jest oparte na tej strefie czasowej; (UTC) Uniwersalny czas koordynowany domyślnie.
Wyrażenie cyklowe lub Cron: wybierz pozycję cykl, aby określić wzorzec cykliczny. W obszarze Cykl można określić częstotliwość cyklu — według minut, godzin, dni, tygodni lub miesięcy.
Początek: harmonogram najpierw staje się aktywny w tej dacie. Domyślnie data utworzenia tego harmonogramu.
Koniec: harmonogram stanie się nieaktywny po tej dacie. Domyślnie jest to NONE, co oznacza, że harmonogram będzie zawsze aktywny do momentu ręcznego jego wyłączenia.
Tagi: wybrane tagi harmonogramu.
Uwaga
Początek określa datę i godzinę rozpoczęcia ze strefą czasową harmonogramu. Jeśli godzina rozpoczęcia zostanie pominięta, czas rozpoczęcia jest równy czasowi tworzenia harmonogramu. W ciągu ostatniego czasu rozpoczęcia pierwsze zadanie jest uruchamiane w następnym obliczonym czasie wykonywania.
Jak pokazano na następnym zrzucie ekranu, przejrzyj wybrane opcje na ostatnim ekranie tego procesu i wybierz pozycję Utwórz. Na tym ekranie i innych ekranach w tym procesie wybierz pozycję Wstecz, aby przejść do wcześniejszych ekranów, jeśli chcesz zmienić wybrane wartości.
Następny zrzut ekranu przedstawia ostatni ekran tego procesu. Przejrzyj wybrane opcje i wybierz pozycję Utwórz. Na tym ekranie i innych ekranach w tym procesie wybierz pozycję Wstecz, aby przejść do wcześniejszych ekranów, aby zmienić wybrane wartości.
Ten zrzut ekranu przedstawia panel harmonogramu Cron :
Nazwa: unikatowy identyfikator harmonogramu w obszarze roboczym.
Opis: opis harmonogramu.
Wyzwalacz: wzorzec cyklu harmonogramu, który zawiera następujące właściwości.
Strefa czasowa: obliczenie czasu wyzwalacza jest oparte na tej strefie czasowej; (UTC) Uniwersalny czas koordynowany domyślnie.
Wyrażenie cyklowe lub Cron: wybierz wyrażenie cron, aby określić szczegóły cronu.
(Wymagane)expression Używa standardowego wyrażenia crontab w celu wyrażenia harmonogramu cyklicznego. Pojedyncze wyrażenie składa się z pięciu pól rozdzielanych spacjami:
MINUTES HOURS DAYS MONTHS DAYS-OF-WEEK
Pojedyncza symbol wieloznaczny (*), która obejmuje wszystkie wartości pola. Wartość *, w dniach oznacza wszystkie dni miesiąca (które różnią się w zależności od miesiąca i roku).
W expression: "15 16 * * 1" powyższym przykładzie oznacza 16:15 w każdy poniedziałek.
W następnej tabeli wymieniono prawidłowe wartości dla każdego pola:
Pole
Zakres
Komentarz
MINUTES
0-59
-
HOURS
0-23
-
DAYS
-
Nieobsługiwane. Wartość jest ignorowana i traktowana jako *.
MONTHS
-
Nieobsługiwane. Wartość jest ignorowana i traktowana jako *.
DAYS-OF-WEEK
0-6
Zero (0) oznacza niedzielę. Nazwy dni również zostały zaakceptowane.
Aby uzyskać więcej informacji na temat wyrażeń crontab, odwiedź witrynę typu wiki Crontab Expression w witrynie GitHub.
Ważne
DAYS i MONTH nie są obsługiwane. Jeśli przekażesz jedną z tych wartości, zostanie ona zignorowana i traktowana jako *.
Początek: harmonogram najpierw staje się aktywny w tej dacie. Domyślnie data utworzenia tego harmonogramu.
Koniec: harmonogram stanie się nieaktywny po tej dacie. Domyślnie jest to NONE, co oznacza, że harmonogram będzie zawsze aktywny do momentu ręcznego jego wyłączenia.
Tagi: wybrane tagi harmonogramu.
Uwaga
Początek określa datę i godzinę rozpoczęcia ze strefą czasową harmonogramu. Jeśli godzina rozpoczęcia zostanie pominięta, czas rozpoczęcia jest równy czasowi tworzenia harmonogramu. W ciągu ostatniego czasu rozpoczęcia pierwsze zadanie jest uruchamiane w następnym obliczonym czasie wykonywania.
Następny zrzut ekranu przedstawia ostatni ekran tego procesu. Przejrzyj wybrane opcje i wybierz pozycję Utwórz. Na tym ekranie i innych ekranach w tym procesie wybierz pozycję Wstecz, aby przejść do wcześniejszych ekranów, aby zmienić wybrane wartości.
Sprawdzanie stanu importu zewnętrznych źródeł danych
Akcja importowania danych jest akcją asynchroniczną. Może to potrwać długo. Po przesłaniu akcji importowania danych za pośrednictwem interfejsu wiersza polecenia lub zestawu SDK usługa Azure Machine Learning może wymagać kilku minut, aby nawiązać połączenie z zewnętrznym źródłem danych. Następnie usługa uruchomi importowanie danych i obsłuży buforowanie i rejestrację danych. Czas potrzebny do zaimportowania danych zależy również od rozmiaru zestawu danych źródłowych.
W następnym przykładzie jest zwracany stan przesłanego działania importowania danych. Polecenie lub metoda używa nazwy "zasobu danych" jako danych wejściowych w celu określenia stanu materializacji danych.