Dowiedz się, jak rozwiązywać problemy z błędami środowiska uruchomieniowego U-SQL z powodu zmian środowiska uruchomieniowego

Ważne

Usługa Azure Data Lake Analytics została wycofana 29 lutego 2024 r. Dowiedz się więcej z tym ogłoszeniem.

W przypadku analizy danych organizacja może używać Azure Synapse Analytics lub Microsoft Fabric.

Środowisko uruchomieniowe usługi Azure Data Lake U-SQL, w tym kompilator, optymalizator i menedżer zadań, to właśnie przetwarza kod U-SQL.

Wybieranie wersji środowiska uruchomieniowego U-SQL

Podczas przesyłania zadań U-SQL z programu Visual Studio zestaw ADL SDK lub portal usługi Azure Data Lake Analytics zadanie będzie używać aktualnie dostępnego środowiska uruchomieniowego domyślnego. Nowe wersje środowiska uruchomieniowego U-SQL są regularnie wydawane i obejmują zarówno drobne aktualizacje, jak i poprawki zabezpieczeń.

Możesz również wybrać niestandardową wersję środowiska uruchomieniowego; ponieważ chcesz wypróbować nową aktualizację, musisz pozostać w starszej wersji środowiska uruchomieniowego lub podano poprawkę dla zgłoszonego problemu, w którym nie można czekać na regularną nową aktualizację.

Przestroga

Wybranie środowiska uruchomieniowego, które różni się od domyślnego, może przerwać zadania U-SQL. Użyj tych innych wersji tylko do testowania.

W rzadkich przypadkach pomoc techniczna firmy Microsoft może przypiąć inną wersję środowiska uruchomieniowego jako domyślną dla konta. Upewnij się, że przywracasz ten numer PIN tak szybko, jak to możliwe. Jeśli pozostaniesz przypięty do tej wersji, wygaśnie ona w późniejszym terminie.

Monitorowanie wersji środowiska uruchomieniowego U-SQL zadań

Możesz zobaczyć historię wersji środowiska uruchomieniowego używanej przez poprzednie zadania w historii zadań konta za pośrednictwem przeglądarki zadań programu Visual Studio lub historii zadań Azure Portal.

  1. W Azure Portal przejdź do konta Data Lake Analytics.
  2. Wybierz pozycję Wyświetl wszystkie zadania. Zostanie wyświetlona lista wszystkich aktywnych i ostatnio zakończonych zadań na koncie.
  3. Opcjonalnie wybierz pozycję Filtr , aby ułatwić znajdowanie zadań według zakresu czasu, nazwy zadania i wartości Autora .
  4. Środowisko uruchomieniowe używane w ukończonych zadaniach jest widoczne.

Wyświetlanie wersji środowiska uruchomieniowego poprzedniego zadania

Dostępne wersje środowiska uruchomieniowego zmieniają się w czasie. Domyślne środowisko uruchomieniowe jest zawsze nazywane "domyślnym" i utrzymujemy co najmniej poprzednie środowisko uruchomieniowe dostępne przez pewien czas i udostępniamy specjalne środowiska uruchomieniowe z różnych powodów. Jawnie nazwane środowiska uruchomieniowe zazwyczaj są zgodne z następującym formatem (kursywa jest używana dla części zmiennych i [] wskazuje opcjonalne części):

release_YYYYMMDD_adl_buildno[_modifier]

Na przykład release_20190318_adl_3394512_2 oznacza drugą wersję kompilacji 3394512 wersji środowiska uruchomieniowego z 18 marca 2019 r. i release_20190318_adl_3394512_private oznacza prywatną kompilację tego samego wydania. Uwaga: data jest powiązana z datą ostatniego zaewidencjonowania dla tej wersji i niekoniecznie oficjalną datą wydania.

Rozwiązywanie problemów z wersją środowiska uruchomieniowego U-SQL

Istnieją dwa możliwe problemy z wersją środowiska uruchomieniowego, które można napotkać:

  1. Skrypt lub jakiś kod użytkownika zmienia zachowanie z jednej wersji na następną. Takie zmiany powodujące niezgodność są zwykle przekazywane przed publikacją informacji o wersji. Jeśli wystąpi taka zmiana powodująca niezgodność, skontaktuj się z pomoc techniczna firmy Microsoft, aby zgłosić to zachowanie powodujące niezgodność (w przypadku, gdy jeszcze nie zostało udokumentowane) i przesłać zadania do starszej wersji środowiska uruchomieniowego.

  2. Używasz środowiska uruchomieniowego bez definicji jawnie lub niejawnie, gdy zostało przypięte do konta, a środowisko uruchomieniowe zostało usunięte po pewnym czasie. Jeśli wystąpią brakujące środowiska uruchomieniowe, uaktualnij skrypty do uruchomienia przy użyciu bieżącego domyślnego środowiska uruchomieniowego. Jeśli potrzebujesz więcej czasu, skontaktuj się z pomoc techniczna firmy Microsoft

Znane problemy

  1. Odwoływanie się do pliku Newtonsoft.Json w wersji 12.0.3 lub nowszej skryptu USQL spowoduje następujący błąd kompilacji:

    "Przykro nam; zadania uruchomione na koncie Data Lake Analytics prawdopodobnie będą działać wolniej lub zakończą się niepowodzeniem. Nieoczekiwany problem uniemożliwia nam automatyczne przywracanie tej funkcji na koncie usługi Azure Data Lake Analytics. Inżynierowie usługi Azure Data Lake skontaktowali się w celu zbadania".

    Gdzie stos wywołań będzie zawierać:
    System.IndexOutOfRangeException: Index was outside the bounds of the array.
    at Roslyn.Compilers.MetadataReader.PEFile.CustomAttributeTableReader.get_Item(UInt32 rowId)
    ...

    Rozwiązanie: użyj pliku Newtonsoft.Json w wersji 12.0.2 lub nowszej.

  2. Klienci mogą widzieć pliki tymczasowe i foldery w swoim magazynie. Są one tworzone w ramach normalnego wykonywania zadania, ale zwykle są usuwane przed ich sprawdzeniem przez klientów. W pewnych okolicznościach, które są rzadkie i losowe, mogą pozostać widoczne. Są one ostatecznie usuwane i nigdy nie są liczone jako część magazynu użytkownika lub generują wszelkiego rodzaju opłaty. W zależności od logiki zadań klientów mogą powodować problemy. Jeśli na przykład zadanie wylicza wszystkie pliki w folderze, a następnie porównuje listy plików, może zakończyć się niepowodzeniem z powodu wystąpienia nieoczekiwanych plików tymczasowych. Podobnie, jeśli zadanie podrzędne wylicza wszystkie pliki z danego folderu do dalszego przetwarzania, może również wyliczać pliki tymczasowe.

    Rozwiązanie: Poprawka jest identyfikowana w środowisku uruchomieniowym, w którym pliki tymczasowe będą przechowywane w folderze tymczasowym na poziomie konta, a nie w bieżącym folderze wyjściowym. Pliki tymczasowe zostaną zapisane w tym nowym folderze tymczasowym i zostaną usunięte na końcu wykonywania zadania.
    Ponieważ ta poprawka obsługuje dane klienta, ważne jest, aby ta poprawka została dobrze zweryfikowana w programie MSFT przed jego wydaniem. Oczekuje się, że ta poprawka będzie dostępna jako środowisko uruchomieniowe beta w połowie roku 2021 i jako domyślne środowisko uruchomieniowe w drugiej połowie roku 2021.

Zobacz też