Dowiedz się, jak rozwiązywać problemy z błędami środowiska uruchomieniowego U-SQL z powodu zmian w czasie wykonywania
Ważne
Usługa Azure Data Lake Analytics została wycofana 29 lutego 2024 r. Dowiedz się więcej o dzięki temu ogłoszeniu.
Na potrzeby analizy danych organizacja może używać usługi Azure Synapse Analytics lub microsoft fabric.
Środowisko uruchomieniowe usługi Azure Data Lake U-SQL, w tym kompilator, optymalizator i menedżer zadań, przetwarza kod U-SQL.
Wybieranie wersji środowiska uruchomieniowego U-SQL
Po przesłaniu zadań U-SQL z programu Visual Studio, zestawu ADL SDK lub portalu usługi Azure Data Lake Analytics, twoje zadanie będzie korzystać z aktualnie dostępnego domyślnego środowiska uruchomieniowego. 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; albo dlatego, że 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ę.
Ostrożność
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 twojego konta. Upewnij się, że ten numer PIN zostanie przywrócony tak szybko, jak to możliwe. Jeśli pozostaniesz przypięty do tej wersji, wygaśnie ona w późniejszym terminie.
Monitorowanie wersji uruchomieniowej U-SQL dla zadań
Możesz zobaczyć historię wersji środowiska uruchomieniowego używanej w historii zadań konta za pośrednictwem przeglądarki zadań programu Visual Studio lub historii zadań w witrynie Azure Portal.
- W witrynie Azure Portal przejdź do konta usługi Data Lake Analytics.
- Wybierz pozycję Wyświetl wszystkie stanowiska. Zostanie wyświetlona lista wszystkich aktywnych i ostatnio zakończonych zadań na koncie.
- Opcjonalnie wybierz pozycję Filtr, aby ułatwić znajdowanie zadań według zakresu czasu, nazwy zadania i wartości Author.
- Możesz zobaczyć czas wykonania używany w ukończonych zadaniach.
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 jakiś czas i udostępniamy specjalne środowiska uruchomieniowe z różnych powodów. Jawnie nazwane środowiska uruchomieniowe zwykle są zgodne z następującym formatem (kursywa jest używana dla części zmiennych, a [] wskazuje opcjonalne części):
release_YYYYMMDD_adl_buildno[_modifier]
Na przykład release_20190318_adl_3394512_2 oznacza drugą wersję kompilacji 3394512 wydania środowiska uruchomieniowego z 18 marca 2019 r. i release_20190318_adl_3394512_private oznacza prywatną kompilację tej samej wersji. Uwaga: Data ta odnosi się do ostatniego zgłoszenia dla tej wersji i niekoniecznie do oficjalnej daty 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ć:
Skrypt lub jakiś kod użytkownika zmienia zachowanie z jednej wersji na następną. Takie zmiany powodujące niezgodność są zwykle przekazywane przed upływem czasu z publikacją informacji o wersji. Jeśli napotkasz taką zmianę powodującą niezgodność, skontaktuj się z pomocą techniczną firmy Microsoft, aby zgłosić to niezgodne zachowanie (jeśli jeszcze nie zostało udokumentowane) i przesłać swoje zadania, korzystając ze starszej wersji środowiska uruchomieniowego.
Używałeś nietypowego środowiska uruchomieniowego, jawnie lub domyślnie, gdy zostało przypisane do Twojego konta; to środowisko uruchomieniowe zostało usunięte po pewnym czasie. Jeśli wystąpią brakujące środowiska uruchomieniowe, zaktualizuj skrypty, aby uruchamiać je przy użyciu bieżącego domyślnego środowiska uruchomieniowego. Jeśli potrzebujesz więcej czasu, skontaktuj się z pomocą techniczną firmy Microsoft
Znane problemy
Odwołanie do pliku Newtonsoft.Json w wersji 12.0.3 lub nowszej w skrypecie USQL spowoduje następujący błąd kompilacji:
"Przykro nam; zadania uruchomione na koncie usługi Data Lake Analytics prawdopodobnie będą działać wolniej lub zakończą się niepowodzeniem. Nieoczekiwany problem uniemożliwia nam automatyczne przywrócenie tej funkcji na koncie usługi Azure Data Lake Analytics. Inżynierowie usługi Azure Data Lake zostali skontaktowani w celu przeprowadzenia dochodzenia.
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)
...
Solution: Użyj pliku Newtonsoft.Json w wersji 12.0.2 lub starszej.
Klienci mogą zobaczyć pliki tymczasowe i foldery w swoim sklepie. 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ęść przestrzeni użytkownika ani nie generują żadnych opłat. 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 obecności nieoczekiwanych plików tymczasowych. Podobnie, jeśli podrzędne zadanie wylicza wszystkie pliki z danego folderu do dalszego przetwarzania, może również wyliczać pliki tymczasowe.
Solution: Zidentyfikowano poprawkę w środowisku uruchomieniowym, w której pliki tymczasowe będą przechowywane w folderze tymczasowym na poziomie konta, zamiast w bieżącym folderze wyjściowym. Pliki tymczasowe zostaną zapisane w tym nowym folderze tymczasowym i zostaną usunięte po zakończeniu 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.