Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano funkcje i zachowania, które są obecnie dostępne i nadchodzące dla obliczeń bezserwerowych dla notesów i zadań.
Aby uzyskać więcej informacji na temat obliczeń bezserwerowych, zobacz Łączenie się z bezserwerowych obliczeń.
Usługa Azure Databricks okresowo publikuje aktualizacje bezserwerowych zasobów obliczeniowych, automatycznie uaktualniając bezserwerowe środowisko uruchomieniowe obliczeniowe w celu obsługi ulepszeń i uaktualnień do platformy. Wszyscy użytkownicy otrzymują te same aktualizacje, wdrażane w krótkim czasie.
wersje środowiska bezserwerowego
Bezserwerowe obliczenia dla notesów i zadań używają wersji środowiska, które zapewniają stabilny interfejs API klienta oparty na programie Spark Connect w celu zapewnienia zgodności aplikacji. Dzięki temu usługa Databricks może niezależnie uaktualnić serwer, zapewniając ulepszenia wydajności, ulepszenia zabezpieczeń i poprawki błędów bez konieczności wprowadzania zmian kodu w obciążeniach.
Każda wersja środowiska zawiera określoną wersję języka Python i zestaw pakietów języka Python ze zdefiniowanymi wersjami. Usługa Databricks wprowadza nowe funkcje i poprawki w najnowszej wersji środowiska podczas stosowania aktualizacji zabezpieczeń do wszystkich obsługiwanych wersji środowiska.
Aby uzyskać informacje o wersji środowiska bezserwerowego, zobacz Wersje środowiska bezserwerowego.
Informacje o wydaniu
Ta sekcja zawiera informacje o wersji dla obliczeń bezserwerowych. Informacje o wersji są zorganizowane według roku i tygodnia w roku. Przetwarzanie bezserwerowe zawsze jest uruchamiane przy użyciu ostatnio wydanej wersji wymienionej tutaj.
- Wersja 17.3
- Wersja 17.2
- Wersja 17.1
- Środowisko bezserwerowe w wersji 4
- Wersja 17.0
- Docelowa wydajność bezserwerowa jest teraz ogólnie dostępna
- Wersja 16.4
- Tryb wydajności można teraz konfigurować w zadaniach bezserwerowych
- Wersja 16.3
- Wersja 16.2
- Ustawienie wysokiej pamięci dostępne w notesach bezserwerowych (publiczna wersja poglądowa)
- Wersja 16.1
- Wersja 15.4
- Zestaw JDK został uaktualniony z zestawu JDK 8 do zestawu JDK 17
- Wersja 15.1
- Wersja 14.3
Wersja 17.3
28 października 2025 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada środowisku Databricks Runtime 17.3 LTS.
Nowe funkcje
LIMIT Pełne wsparcie dla rekurencyjnych CTE: teraz można użyć
LIMIT ALLklauzuli z rekurencyjnymi wspólnymi wyrażeniami tabelowymi (rCTEs), aby jawnie określić, że żaden limit wierszy nie powinien być stosowany do wyników zapytania. Zobacz Typowe wyrażenie tabeli (CTE).Dołączanie do plików w woluminach Unity Catalog zwraca poprawny błąd: Próba dołączenia do istniejących plików w woluminach Unity Catalog zwraca teraz bardziej opisowy komunikat o błędzie, aby ułatwić zrozumienie i rozwiązanie problemu.
st_dumpobsługa funkcji: teraz można użyćst_dumpfunkcji, aby rozłożyć obiekt geometryczny na jego części składowe, zwracając zestaw prostszych geometrii. Zobaczst_dumpfunkcję.Funkcje wewnętrznych pierścieni wielokąta są teraz obsługiwane: Teraz można użyć następujących funkcji do pracy z wewnętrznymi pierścieniami wielokątów:
-
st_numinteriorrings: Pobierz liczbę granic wewnętrznych (pierścieni) wielokąta. Zobaczst_numinteriorringsfunkcję. -
st_interiorringn: Wyodrębnij n-tą wewnętrzną granicę wielokąta i zwróć ją jako linię. Zobaczst_interiorringnfunkcję.
-
EXECUTE IMMEDIATE używanie wyrażeń stałych: instrukcja
EXECUTE IMMEDIATEobsługuje teraz używanie wyrażeń stałych w ciągu zapytania, co pozwala na bardziej elastyczne dynamiczne wykonywanie sql. Zobacz EXECUTE IMMEDIATE.Umożliwiaj
spark.sql.files.maxPartitionBytesprzetwarzanie bezserwerowe: Teraz możesz skonfigurować parametr konfiguracji Spark w przetwarzaniu bezserwerowym, aby kontrolować maksymalną liczbę bajtów do spakowania w jedną partycję podczas odczytywania plików. Zobacz Konfigurowanie właściwości platformy Spark dla notesów i zadań bezserwerowych.
Zmiany zachowania
Obsługa odświeżania MV/ST w DESCRIBE EXTENDED AS JSON: Polecenie
DESCRIBE EXTENDED AS JSONzawiera teraz informacje o odświeżaniu dla zmaterializowanych widoków i tabel przesyłania strumieniowego, umożliwiając wgląd w czas ostatniego odświeżenia i stan.Dodaj kolumnę metadanych do DESCRIBE QUERY i DESCRIBE TABLE: Polecenia
DESCRIBE QUERYiDESCRIBE TABLEteraz zawierają kolumnę metadanych w wyniku, udostępniając dodatkowe informacje o właściwościach i cechach każdej kolumny.Prawidłowa obsługa struktur null podczas usuwania kolumn NullType: usługa Azure Databricks prawidłowo obsługuje wartości struktury null podczas usuwania kolumn z wartością
NullType, zapobiegając potencjalnemu uszkodzeniu danych lub nieoczekiwanemu zachowaniu.Ulepszona obsługa struktur null w parquet: ta wersja zawiera ulepszenia sposobu obsługi wartości struktury null podczas odczytywania i zapisywania plików Parquet oraz zapewniania bardziej spójnego i poprawnego zachowania.
Uaktualnij bibliotekę aws-msk-iam-auth dla platformy Kafka:
aws-msk-iam-authbiblioteka używana do uwierzytelniania IAM w usłudze Amazon MSK została uaktualniona do najnowszej wersji, zapewniając lepsze zabezpieczenia i zgodność.
Wersja 17.2
25 września 2025 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada środowisku Databricks Runtime 17.2.
Nowe funkcje
ST_ExteriorRingFunkcja jest teraz obsługiwana: teraz możesz użyćST_ExteriorRingfunkcji, aby wyodrębnić zewnętrzną granicę wielokąta i zwrócić ją jako ciąg liniowy. Zobaczst_exteriorringfunkcję.Wspieranie użycia
TEMPORARYsłowa kluczowego do tworzenia widoku metryki: możesz teraz używać słowa kluczowegoTEMPORARYpodczas tworzenia widoku metryki. Tymczasowe widoki metryk są widoczne tylko w sesji, która je utworzyła i są usuwane po zakończeniu sesji. Zobacz CREATE VIEW.Użyj natywnej operacji we/wy dla usługi
LokiFileSystem.getFileStatusS3:LokiFileSystem.getFileStatusteraz korzysta z natywnego stosu operacji we/wy dla ruchu Amazon S3 i zwracaorg.apache.hadoop.fs.FileStatusobiekty zamiastshaded.databricks.org.apache.hadoop.fs.s3a.S3AFileStatus.Auto Loader wnioskuje kolumny partycji w trybie
singleVariantColumn: Auto Loader teraz wnioskuje kolumny partycji ze ścieżek plików podczas pozyskiwania danych jako częściowo ustrukturyzowany typ wariantu przy użyciu opcjisingleVariantColumn. Wcześniej kolumny partycji nie były automatycznie wykrywane. Zobacz Opcje modułu ładującego automatycznego.
Zmiany zachowania
DESCRIBE CONNECTIONpokazuje ustawienia środowiska dla połączeń JDBC: usługa Azure Databricks zawiera teraz ustawienia środowiska zdefiniowane przez użytkownika wDESCRIBE CONNECTIONdanych wyjściowych dla połączeń JDBC, które obsługują sterowniki niestandardowe i działają w izolacji. Inne typy połączeń pozostają niezmienione.Opcja obcinania jednolitej historii podczas migracji tabel zarządzanych: można teraz obcinać jednolitą historię podczas migrowania tabel z włączoną funkcją Uniform/Iceberg przy użyciu polecenia
ALTER TABLE...SET MANAGED. Upraszcza to migracje i zmniejsza przestoje w porównaniu do wyłączania i ponownego włączania ujednoliconego ręcznie.Poprawne wyniki dla
splitpustego wyrażenia regularnego i limitu dodatniego: usługa Azure Databricks zwraca teraz poprawne wyniki w przypadku użyciasplit functionz pustym wyrażeniem regularnym i limitem dodatnim. Wcześniej funkcja niepoprawnie obcinała pozostały ciąg zamiast dołączać go do ostatniego elementu.Naprawa obsługi błędów
url_decodeitry_url_decodew Photon: W Photon,try_url_decode()orazurl_decode()zfailOnError = falseteraz zwracająNULLdla nieprawidłowych ciągów zakodowanych w formacie URL, zamiast powodować niepowodzenie zapytania.Współużytkowane środowisko wykonawcze dla funkcji UDTF języka Python w katalogu Unity: usługa Azure Databricks udostępnia teraz środowisko wykonywania funkcji tabel zdefiniowanych przez użytkownika (UDTF) języka Python w tej samej sesji i od tego samego właściciela na platformie Spark. Klauzula opcjonalna
STRICT ISOLATIONjest dostępna do wyłączania udostępniania funkcji zdefiniowanych przez użytkownika z efektami ubocznymi, takimi jak modyfikowanie zmiennych środowiskowych lub wykonywanie dowolnego kodu.
Wersja 17.1
19 sierpnia 2025 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada środowisku Databricks Runtime 17.1.
Nowe funkcje
- Zmniejszone zużycie pamięci dla szerokich schematów w module zapisu Photon: wprowadzono ulepszenia silnika Photon, które znacząco zmniejszają zużycie pamięci dla szerokich schematów, rozwiązując scenariusze, które wcześniej prowadziły do błędów braku pamięci.
Zmiany zachowania
Błąd zgłaszany w przypadku nieprawidłowych
CHECKograniczeń: usługa Azure Databricks zgłaszaAnalysisExceptionteraz błąd, jeśliCHECKnie można rozpoznać wyrażenia ograniczenia podczas sprawdzania poprawności ograniczeń.Łącznik Pulsar nie ujawnia już zamku Bouncy: Biblioteka Zamku Bouncy jest teraz zacieniowana w łączniku Pulsar, aby zapobiec konfliktom klasypath. W związku z tym zadania Spark nie mają już dostępu do
org.bouncycastle.*klas z poziomu łącznika. Jeśli kod zależy od zamku Bouncy, zainstaluj bibliotekę ręcznie w środowisku bezserwerowym.Automatycznie ładujący domyślnie używa zdarzeń plików, jeśli są dostępne: moduł ładujący automatycznie używa zdarzeń plików zamiast listy katalogów, gdy ścieżka ładowania jest lokalizacją zewnętrzną z włączonymi zdarzeniami plików. Wartość domyślna dla
useManagedFileEventsjest terazif_available(byłofalse). Może to poprawić wydajność przetwarzania danych i zapisuje ostrzeżenie, jeśli zdarzenia plików nie są jeszcze włączone.Łącznik Teradata z porównaniem ciągów uwzględniającym wielkość liter: Łącznik Teradata jest teraz domyślnie ustawiony tak, aby
TMODE=ANSI, dopasować sposób porównania ciągów do usługi Azure Databricks przez uwzględnianie wielkości liter. Ta zmiana jest konfigurowalna i nie ma wpływu na istniejących użytkowników, chyba że wyrazi zgodę.
Środowisko bezserwerowe w wersji 4
13 sierpnia 2025 r.
Środowisko w wersji 4 jest teraz dostępne w notesach i zadaniach bezserwerowych. Ta wersja środowiska obejmuje uaktualnienia bibliotek i aktualizacje interfejsu API. Zobacz Środowisko bezserwerowe w wersji 4.
Wersja 17.0
24 lipca 2025 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada środowisku Databricks Runtime 17.0.
Nowe funkcje
Obsługa procedury SQL: skrypty SQL można teraz opakowywać w procedurze przechowywanej jako zasób do ponownego użycia w Unity Catalog. Procedurę można utworzyć przy użyciu polecenia CREATE PROCEDURE , a następnie wywołać ją za pomocą polecenia CALL .
Ustaw sortowanie domyślne dla funkcji SQL: użycie nowej
DEFAULT COLLATIONklauzuli w CREATE FUNCTION poleceniu definiuje domyślne sortowanie używane dlaSTRINGparametrów, zwracanego typu iSTRINGliterałów w treści funkcji.Obsługa cyklicznych typowych wyrażeń tabel (rCTE): usługa Azure Databricks obsługuje teraz nawigację danych hierarchicznych przy użyciu cyklicznych typowych wyrażeń tabel (rCTE). Użyj rekursywnego CTE z
UNION ALLdo śledzenia relacji rekurencyjnej.PySpark i Spark Connect obsługują teraz interfejs API
df.mergeIntodla ramek danych: PySpark i Spark Connect obsługują terazdf.mergeIntointerfejs API.Obsługa
ALL CATALOGSwSHOWSCHEMAS: składniaSHOW SCHEMASjest aktualizowana do akceptacjiALL CATALOGS, co umożliwia iterację przez wszystkie aktywne katalogi obsługujące przestrzenie nazw. Atrybuty wyjściowe zawierają teraz kolumnę wskazującą katalog odpowiadającej przestrzeni nazw.Klastrowanie liquid teraz kompaktuje wektory usuwania bardziej wydajnie: tabele różnicowe z klastrowaniem liquid teraz stosują fizyczne zmiany z wektorów usuwania wydajniej podczas
OPTIMIZEuruchamiania. Aby uzyskać więcej informacji, zobacz Stosowanie zmian do plików danych Parquet.Zezwól na wyrażenia niedeterministyczne w wartościach kolumn
UPDATE/INSERTdla operacjiMERGE: Usługa Azure Databricks pozwala teraz na używanie wyrażeń niedeterministycznych w zaktualizowanych i wstawionych wartościach kolumn w ramach operacjiMERGE. Na przykład można teraz generować wartości dynamiczne lub losowe dla kolumn przy użyciu wyrażeń, takich jakrand().
Zmiany zachowania
Zmiana zachowania przyrostowej listy katalogów w automatycznym module ładującym: wartość przestarzałej opcji automatycznego ładowania jest teraz ustawiona na domyślną wartość
cloudFiles.useIncrementalListing. W związku z tym ta zmiana powoduje, że moduł automatycznego ładowania wykonuje pełną listę katalogów przy każdym uruchomieniu. Databricks odradza użycie tej opcji. Zamiast tego należy użyć trybu powiadomień plików ze zdarzeniami plików.CREATE VIEWKlauzule na poziomie kolumny teraz zgłaszają błędy, gdy klauzula jest stosowana tylko do zmaterializowanych widoków:CREATE VIEWpolecenia określające klauzulę na poziomie kolumny, która jest prawidłowa tylko dlaMATERIALIZED VIEWteraz zgłaszają błąd. Objęte klauzule obejmująNOT NULL, określone typy danych,DEFAULTiCOLUMN MASK.
Cele wydajności dla rozwiązań bezserwerowych są teraz ogólnie dostępne.
10 czerwca 2025 r.
Wybranie ustawienia wydajności bezserwerowej dla zadań i potoków jest teraz ogólnie dostępne.
Po włączeniu ustawienia Zoptymalizowane pod kątem wydajności obciążenie jest zoptymalizowane pod kątem szybszego uruchamiania i czasu wykonywania. Po wyłączeniu bezserwerowe obciążenie działa w trybie wydajności standardowej, który jest zoptymalizowany pod kątem kosztów i ma nieco większe opóźnienie uruchamiania.
Aby uzyskać więcej informacji, zobacz Wybieranie trybu wydajności i Wybieranie trybu wydajności.
Wersja 16.4
28 maja 2025 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada środowisku Databricks Runtime 16.4 LTS.
Zmiany zachowania
Poprawka w celu przestrzegania opcji dla buforowanych planów źródła danych: ta aktualizacja zapewnia, że odczyty z tabeli przestrzegają ustawionych opcji dla wszystkich planów źródła danych w pamięci podręcznej, a nie tylko dla pierwszego odczytu tabeli. Wcześniej odczyty tabeli źródła danych buforowały pierwszy plan, ale nie uwzględniały różnych opcji w kolejnych zapytaniach.
Włącz flagę, aby wymagać materializacji źródła dla operacji MERGE: wcześniej użytkownicy mogli wyłączyć materializację źródła w MERGE, ustawiając wartość
merge.materializeSourcenone. Po włączeniu nowej flagi materializacja źródła będzie zawsze wymagana, a próby jej wyłączenia spowodują błąd. Usługa Databricks planuje włączyć tę flagę tylko dla klientów, którzy wcześniej nie zmienili tej konfiguracji, więc większość użytkowników nie powinna mieć żadnych zmian w zachowaniu.
Nowe funkcje
Automatycznie ładujący może teraz wyczyścić przetworzone pliki w katalogu źródłowym: teraz możesz poinstruować moduł automatycznego ładowania, aby automatycznie przenosił lub usuwał przetworzone pliki. Włącz tę funkcję, używając opcji
cloudFiles.cleanSourceAuto Loader. Zobacz Opcje automatycznego modułu ładującego w obszarzecloudFiles.cleanSource.Dodano wsparcie dla rozszerzania typu do przesyłania strumieniowego z tabel Delta: w tej wersji dodano obsługę przesyłania strumieniowego z tabeli Delta z danymi kolumn o rozszerzonym typie oraz możliwość udostępniania tabeli Delta z włączonym rozszerzaniem typu za pomocą funkcji Databricks-to-Databricks Delta Sharing. Funkcja rozszerzania typu jest obecnie dostępna w publicznej wersji zapoznawczej. Sprawdź Rozszerzanie typu.
IDENTIFIER obsługa jest teraz dostępna w DBSQL dla operacji katalogu: możesz teraz użyć klauzuli
IDENTIFIERpodczas wykonywania następujących operacji katalogu:CREATE CATALOGDROP CATALOGCOMMENT ON CATALOGALTER CATALOG
Ta nowa składnia umożliwia dynamiczne określanie nazw katalogów przy użyciu parametrów zdefiniowanych dla tych operacji, co umożliwia bardziej elastyczne i wielokrotnego użytku przepływy pracy SQL. Jako przykład składni rozważ
CREATE CATALOG IDENTIFIER(:param), gdzieparamjest podany parametr, aby określić nazwę katalogu. Zobacz IDENTIFIER klauzulę.Wyrażenia zestawione udostępniają teraz automatycznie wygenerowane aliasy przejściowe: automatycznie wygenerowane aliasy dla zestawionych wyrażeń teraz deterministycznie zawierają
COLLATEinformacje. Automatycznie wygenerowane aliasy są przejściowe (niestabilne) i nie należy na nich polegać. Zamiast tego, jako najlepsze rozwiązanie, należy używaćexpression AS aliasspójnie i jawnie.Dodaj obsługę API przepychania filtru do źródeł danych w Pythonie: Przetwarzanie bezserwerowe obsługuje teraz przepychanie filtru dla wsadowego odczytu źródła danych w Pythonie jako API, podobnie jak
SupportsPushDownFiltersw przypadku interfejsu. Zobacz informacje o wersji 16.4 LTS.Ulepszenie śledzenia funkcji UDF w Pythonie: Śledzenie funkcji UDF w Pythonie obejmuje teraz ramki zarówno z poziomu sterownika, jak i wykonawcy oraz klienta, co skutkuje bardziej szczegółowymi i istotnymi komunikatami o błędach, pokazującymi m.in. zawartość linii ramek wewnątrz funkcji zdefiniowanej przez użytkownika.
UNION/EXCEPT/INTERSECT wewnątrz widoku i EXECUTE IMMEDIATE teraz zwracają poprawne wyniki: Zapytania dotyczące definicji tymczasowych i trwałych widoków z kolumnami najwyższego poziomu i bez aliasów wcześniej zwracały nieprawidłowe wyniki, ponieważ słowa kluczowe były uznawane za aliasy. Teraz te zapytania będą poprawnie wykonywać całą operację zestawu.
Przewodnik dotyczący konfiguracji planu buforowania źródła danych i jego migracji: odczyt z tabeli źródłowej pliku prawidłowo uwzględnia opcje zapytania (na przykład ograniczniki). Wcześniej pierwszy plan zapytania został zapisany w pamięci podręcznej, a zmiany opcji dokonane później zostały zignorowane. Aby przywrócić poprzednie zachowanie, ustaw
spark.sql.legacy.readFileSourceTableCacheIgnoreOptionsna wartośćtrue.Nowe
listaggistring_aggfunkcje: Począwszy od tej wersji, można użyć funkcjilistagglubstring_aggdo agregowania wartościSTRINGiBINARYw grupie. Zobacz string_agg.
Tryb wydajności można teraz konfigurować w zadaniach bezserwerowych
14 kwietnia 2025 r.
Teraz możesz wybrać tryb wydajności zadania bezserwerowego przy użyciu ustawienia Zoptymalizowane pod kątem wydajności na stronie szczegółów zadania. Wcześniej wszystkie zadania bezserwerowe były zoptymalizowane pod kątem wydajności. Teraz możesz wyłączyć ustawienie Zoptymalizowane pod kątem wydajności , aby uruchomić obciążenie w trybie wydajności standardowej. Standardowy tryb peformance został zaprojektowany w celu zmniejszenia kosztów obciążeń, w których dopuszczalne jest nieco wyższe opóźnienie uruchamiania.
Tryb wydajności standardowej nie jest obsługiwany w przypadku potoków ciągłych, jednorazowych przebiegów utworzonych przy użyciu runs/submit punktu końcowego lub zadań zadania magazynu SQL, w tym zmaterializowanych widoków.
Aby uzyskać więcej informacji na temat trybu wydajności, zobacz Wybieranie trybu wydajności.
Wersja 16.3
9 kwietnia 2025 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada środowisku Databricks Runtime 16.3.
Zmiany zachowania
-
*Ulepszony komunikat o błędzie, gdy
kafka.sasl.client.callback.handler.classjest przypisana nieprawidłowa wartość: ta wersja zawiera zmianę w celu zwrócenia bardziej opisowego komunikatu o błędzie, gdykafka.sasl.client.callback.handler.classprzypisano nieprawidłową wartość.
Nowe funkcje
Obsługa odczytywania stanu jest teraz powszechnie dostępna: możliwość odczytywania informacji o stanie zapytań w przesyłaniu strumieniowym opartym na strukturach jest teraz ogólnie dostępna w obliczeniach bezserwerowych. Zobacz Jak odczytać informacje o stanie strukturalnego strumieniowania danych.
Obniżenie poziomu protokołu tabeli różnicowej to ogólna dostępność z ochroną punktu kontrolnego:
DROP FEATUREjest ogólnie dostępna do usuwania funkcji tabel usługi Delta Lake i obniżania poziomu protokołu tabeli. DomyślnieDROP FEATUREtworzy teraz chronione punkty kontrolne, aby zapewnić bardziej zoptymalizowane i uproszczone doświadczenie związane z przesiadką, które nie wymaga czasu oczekiwania ani skracania historii. Zobacz Usuwanie funkcji tabeli Delta Lake i obniżanie poziomu protokołu tabeli.Pisanie proceduralnych skryptów SQL opartych na języku ANSI SQL/PSM (publiczna wersja zapoznawcza): teraz można używać funkcji skryptów opartych na języku ANSI SQL/PSM do pisania logiki proceduralnej za pomocą języka SQL, w tym instrukcji przepływu sterowania, zmiennych lokalnych i obsługi wyjątków. Zobacz skrypty SQL.
Sortowanie domyślne na poziomie tabeli i widoku: teraz można określić domyślne sortowanie tabel i widoków. Upraszcza to tworzenie tabel i widoków, w których wszystkie lub większość kolumn ma to samo sortowanie. Zobacz Sortowanie.
Dodano nowe funkcje H3: dodano trzy nowe funkcje H3: h3_try_coverash3, h3_try_coverash3string i h3_try_tessellateaswkb.
Zmień wiele kolumn tabeli w jednej ALTER TABLE instrukcji: teraz można zmienić wiele kolumn w jednej
ALTER TABLEinstrukcji. Zobacz ALTER TABLE klauzulę ... COLUMN
Wersja 16.2
13 marca 2025 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada Databricks Runtime 16.2.
Zmiany zachowania
W Delta Sharing historia tabel jest domyślnie włączona: udziały utworzone przy użyciu polecenia SQL
ALTER SHARE <share> ADD TABLE <table>teraz mają domyślnie włączoną funkcję udostępniania historii (WITH HISTORY). Zobacz ALTER SHARE.Instrukcje CREDENTIAL SQL zwracają błąd, gdy występuje niezgodność typu poświadczeń: jeśli typ poświadczeń określony w instrukcji SQL zarządzania poświadczeniami nie jest zgodny z typem argumentu poświadczeń, zwracany jest błąd i instrukcja nie jest uruchamiana.
Nowe funkcje
Użyj
timestampdiff×tampaddw wygenerowanych wyrażeniach kolumn Możesz teraz użyć funkcji timestampdiff i timestampadd w wyrażeniach kolumn generowanych przez Delta Lake. Zobacz kolumny wygenerowane przez Delta Lake .Update to
DESCRIBE TABLEzwraca metadane jako ustrukturyzowany dokument JSON, Obecnie możesz użyć poleceniaDESCRIBE TABLE AS JSON, aby zwrócić metadane tabeli jako dokument JSON. Dane wyjściowe JSON są bardziej ustrukturyzowane niż domyślny raport czytelny dla człowieka i mogą służyć do programowego interpretowania schematu tabeli. Aby dowiedzieć się więcej, zobacz DESCRIBE TABLE AS JSON.Sortowania niewrażliwe na końcowe puste znaki: Rozwiązania bezserwerowe teraz obsługują sortowania niewrażliwe na końcowe puste znaki. Na przykład te sortowania traktują
'Hello'i'Hello 'jako równe. Więcej informacji można znaleźć w porządku sortowania RTRIM.
Poprawki
-
Ulepszone przetwarzanie klonowania przyrostowego: Ta wersja zawiera poprawkę dla przypadku brzegowego, w którym przyrostowe kopiowanie
CLONEmoże ponownie kopiować pliki, które zostały już skopiowane z tabeli źródłowej do tabeli docelowej. Zobacz Klonowanie tabeli w usłudze Azure Databricks.
Wysokie ustawienie pamięci dostępne w notesach bezserwerowych (wersja publiczna)
7 lutego 2025 r.
Teraz można skonfigurować więcej pamięci dla zadań w notebookach obliczeniowych bezserwerowych. To ustawienie można zastosować zarówno do obciążeń notatnika interaktywnego, jak i zaplanowanego.
Użycie bezserwerowe z wysoką ilością pamięci ma wyższy współczynnik emisji jednostek DBU niż standardowa pamięć.
Aby uzyskać więcej informacji, zobacz Use high memory serverless compute (Korzystanie z obliczeń bezserwerowych o wysokiej ilości pamięci).
Wersja 16.1
5 lutego 2025 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada Databricks Runtime 16.0 i Databricks Runtime 16.1.
Nowe funkcje
-
Obsługa cyklicznego schematu Avro: Teraz możesz użyć opcji
recursiveFieldMaxDepthz funkcjąfrom_avroi źródłem danychavro. Ta opcja ustawia maksymalną głębokość rekursji schematu w źródle danych Avro. Zobacz Odczytywanie i zapisywanie strumieniowych danych Avro. - Rozszerzona obsługa Rejestru Schematów Confluent dla Avro: Nowe funkcje bezserwerowe obsługują teraz odwołania do schematów Avro w Rejestrze Schematów Confluent. Zobacz Uwierzytelnij się w zewnętrznym rejestrze schematów Confluent.
-
Wymuszanie ponownego zapisywania w tabelach z klastrowaniem płynnym: Teraz można użyć składni
OPTIMIZE FULL, aby wymusić ponowne tworzenie wszystkich rekordów w tabeli z włączonym klastrowaniem płynnym. Zobacz Wymuszanie ponownego grupowania wszystkich rekordów. - Interfejsy API Delta dla języka Python obsługują teraz kolumny identyfikacyjne: Teraz możesz używać interfejsów API Delta dla języka Python do tworzenia tabel z kolumnami identyfikacyjnymi. Zobacz Używanie kolumn tożsamości w usłudze Delta Lake.
-
Tworzenie tabel klastrowanych w trybie liquid podczas zapisu strumieniowego: Teraz można użyć
clusterBy, aby włączyć klastrowanie w trybie liquid podczas tworzenia nowych tabel za pomocą zapisów w strukturze strumieniowej. Zobacz Włączanie klastrowania cieczy. - Obsługa klauzuli OPTIMIZE FULL: Przetwarzanie bezserwerowe obsługuje teraz klauzulę OPTIMIZE FULL. Ta klauzula optymalizuje wszystkie rekordy w tabeli, która korzysta z klastrowania cieczy, w tym danych, które mogły wcześniej zostać klastrowane.
- pl-PL: Obsługa specyfikacji opcji WITH w INSERT i odwołania do tabeli: Przetwarzanie bezserwerowe obsługuje teraz specyfikację opcji dla odwołań do tabel i nazw tabel w instrukcji
INSERT, które mogą służyć do kontrolowania zachowania źródeł danych. -
Nowe funkcje SQL: Następujące funkcje SQL są teraz dostępne w bezserwerowych obliczeniach:
- try_url_decode to odporna na błędy wersja url_decode.
-
zeroifnull zwraca wartość 0, jeśli wyrażenie wejściowe funkcji
zeroifnull()jestNULL. -
nullifzero zwraca
NULL, jeśli dane wejściowe to 0, lub zwraca samo dane wejściowe, jeśli nie jest równe 0. - dayname(expr) zwraca trzyliterowy angielski akronim dnia tygodnia dla danej daty.
- uniform(expr1, expr2 [,seed]) zwraca wartość losową z niezależnymi i identycznymi wartościami rozproszonymi w określonym zakresie liczb.
-
randstr(length) zwraca losowy ciąg znaków alfanumerycznych
length.
-
Włącz automatyczną ewolucję schematu podczas scalania danych z tabelą delty: Dodano obsługę dla członka
withSchemaEvolution()klasyDeltaMergeBuilder. UżyjwithSchemaEvolution()do włączenia automatycznej ewolucji schematu podczas operacjiMERGE. Na przykładmergeBuilder.whenMatched(...).withSchemaEvolution().execute()}}. -
Obsługa sortowania na platformie Apache Spark jest dostępna w publicznej wersji zapoznawczej: Teraz można przypisywać sortowania z uwzględnieniem języka, niewrażliwość na wielkość liter i niewrażliwość na diakrytyki dla
STRINGkolumn i wyrażeń. Te sortowania są używane w porównaniach ciągów, sortowaniu, operacjach grupowania i wielu funkcjach ciągów. Zobacz Sortowanie. - Obsługa sortowania w usłudze Delta Lake jest dostępna w publicznej wersji zapoznawczej: Teraz można zdefiniować sortowania dla kolumn podczas tworzenia lub zmieniania tabeli delty. Zobacz Obsługa sortowania dla Delta Lake.
-
LITEtryb czyszczenia jest w publicznej wersji zapoznawczej: Teraz można użyćVACUUM table_name LITEdo wykonania mniej obciążającej operacji czyszczenia, która wykorzystuje metadane w dzienniku transakcji Delta. Zobacz tryb pełny vs. lekki oraz VACUUM. -
Obsługa parametryzacji klauzuli
USE CATALOG with IDENTIFIER:IDENTIFIER jest teraz obsługiwana dla instrukcji USE CATALOG. Dzięki tej obsłudze można sparametryzować bieżący wykaz na podstawie zmiennej ciągu lub znacznika parametru. - COMMENT ON COLUMN obsługę tabel i widoków: Instrukcja COMMENT ON obsługuje teraz zmienianie komentarzy dla kolumn widoków i tabel.
- Wywoływanie nazwanych parametrów dla większej liczby funkcji: Następujące funkcje obsługują wywoływanie z użyciem nazwanych parametrów :
-
Parametr
SYNC METADATApolecenia REPAIR TABLE jest obsługiwany w magazynie metadanych Hive: Teraz można użyć parametruSYNC METADATAza pomocą poleceniaREPAIR TABLE, aby zaktualizować metadane zarządzanej tabeli magazynu metadanych Hive. Zobacz REPAIR TABLE. -
Zwiększona integralność danych dla skompresowanych partii Apache Arrow: Aby dodatkowo chronić przed uszkodzeniem danych, każda
LZ4skompresowana partia Apache Arrow zawiera terazLZ4sumy kontrolne zawartości i bloków. Zobacz opis formatu ramek LZ4.
-
wbudowany sterownik Oracle JDBC: przetwarzanie bezserwerowe ma teraz wbudowany sterownik Oracle JDBC. Jeśli używasz pliku JAR sterownika JDBC przekazanego przez klienta za pośrednictwem
DriverManager, musisz ponownie napisać skrypty, aby jawnie użyć niestandardowego pliku JAR. W przeciwnym razie jest używany wbudowany sterownik. Ten sterownik obsługuje jedynie federację Lakehouse. W innych przypadkach użycia musisz dostarczyć własny sterownik. -
Bardziej szczegółowe błędy dla tabel delty, do których uzyskiwano dostęp za pomocą ścieżek: Nowe doświadczenie użytkownika związane z komunikatami o błędach dla tabel delty dostępnych przy użyciu ścieżek jest teraz dostępne. Wszystkie wyjątki są teraz przekazywane do użytkownika. Wyjątek
DELTA_MISSING_DELTA_TABLEjest teraz zarezerwowany, gdy nie można odczytać podstawowych plików jako tabeli delty.
Zmiany zachowania
- Zmiana zrywająca zgodność: Hostowana aplikacja RStudio jest wycofana z użycia: Z tej wersji, Serwer RStudio hostowany w usłudze Databricks jest wycofany z użycia i niedostępny w dowolnym obszarze roboczym usługi Azure Databricks uruchomionym w środowisku obliczeniowym bezserwerowym. Aby dowiedzieć się więcej i zapoznać się z listą alternatyw dla programu RStudio, zobacz Connect to a Databricks-hosted RStudio Server (Łączenie z serwerem RStudio hostowanym w usłudze Databricks).
Zmiana powodująca różnice: Usunięcie obsługi zmiany
byte,short,intilongna szersze typy: Aby zapewnić spójne zachowanie w tabelach Delta i Apache Iceberg, następujące zmiany typu danych nie mogą być już stosowane do tabel z włączoną funkcją rozszerzania typu:-
byteshort,intilongdodecimal. -
byte,shortiintdodouble.
-
Poprawne analizowanie wzorców wyrażeń regularnych z negacją w zagnieżdżonym grupowaniu znaków: Ta wersja zawiera zmianę w celu obsługi poprawnego analizowania wzorców wyrażeń regularnych z negacją w zagnieżdżonym grupowaniu znaków. Na przykład
[^[abc]]zostanie przeanalizowany jako "dowolny znak, który nie jest jednym z "abc".Ponadto zachowanie aplikacji Photon było niespójne z platformą Spark dla klas znaków zagnieżdżonych. Wzorce wyrażeń regularnych zawierające zagnieżdżone klasy znaków nie będą już korzystać z systemu Photon i zamiast tego będą korzystać z platformy Spark. Zagnieżdżona klasa znaków to dowolny wzorzec zawierający nawiasy kwadratowe w obrębie innych nawiasów kwadratowych, takich jak
[[a-c][1-3]].Ulepszone wykrywanie zduplikowanych dopasowań w usłudze Delta Lake
MERGE:MERGEuwzględnia teraz warunki określone w klauzuliWHEN MATCHED. Zobacz Upsert do tabeli Delta Lake przy użyciu operacji scalania.Funkcja
addArtifact()jest teraz spójna w różnych typach obliczeniowych: Gdy używaszaddArtifact(archive = True)do dodawania zależności do bezserwerowych zasobów obliczeniowych, archiwum jest automatycznie rozpakowane.
Poprawki
- Przesunięcia strefy czasowej obejmują teraz sekundy, gdy są serializowane do CSV, JSON i XML: Znaczniki czasu z przesunięciami strefy czasowej zawierającymi sekundy (częste w znacznikach sprzed 1900 r.) wcześniej pomijały sekundy podczas serializacji do CSV, JSON i XML. Domyślne formatowanie znacznika czasu zostało naprawione i teraz zwraca poprawne wartości przesunięcia dla tych znaczników czasu.
Inne zmiany
-
zmieniono nazwy kodów błędów dla źródła przesyłania strumieniowego ze strukturą
cloudFiles: Zmieniono nazwy następujących kodów błędów:-
_LEGACY_ERROR_TEMP_DBR_0143zmieniono nazwę naCF_INCORRECT_STREAM_USAGE. -
_LEGACY_ERROR_TEMP_DBR_0260zmieniono nazwę naCF_INCORRECT_BATCH_USAGE.
-
Wersja 15.4
28 października 2024 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada środowisku Databricks Runtime 15.4
Nowe funkcje
-
Funkcje weryfikacji UTF-8: W tej wersji wprowadzono następujące funkcje do sprawdzania poprawności ciągów UTF-8:
- is_valid_utf8 sprawdził, czy ciąg jest ważnym ciągiem UTF-8.
- make_valid_utf8 konwertuje potencjalnie nieprawidłowy ciąg UTF-8 na prawidłowy ciąg UTF-8 przy użyciu znaków zastępczych.
- validate_utf8 zgłasza błąd, jeśli dane wejściowe nie są prawidłowym ciągiem UTF-8.
- try_validate_utf8 zwraca , jeśli dane wejściowe nie są prawidłowym ciągiem w kodowaniu UTF-8.
- Włącz UniForm Iceberg przy użyciu ALTER TABLE: Możesz teraz włączyć UniForm Iceberg na istniejących tabelach bez ponownego zapisywania plików danych. Zobacz , jak włączyć odczyty Iceberg w istniejącej tabeli.
-
try_url_decode funkcja: w tej wersji wprowadzono funkcję try_url_decode , która dekoduje ciąg zakodowany w adresie URL. Jeśli ciąg nie ma poprawnego formatu, funkcja zwraca
NULLzamiast zgłaszać błąd. -
Opcjonalnie zezwalać optymalizatorowi na poleganie na niewymuszonych ograniczeniach kluczy obcych: Aby poprawić wydajność zapytań, można teraz określić słowo kluczowe
RELYdlaFOREIGN KEYograniczeń podczas tworzenia CREATE lub modyfikacji ALTER tabeli. -
Równoległe uruchamianie zadań dla selektywnych nadpisań: Selektywne nadpisywanie przy użyciu
replaceWhereteraz przeprowadza zadania, które jednocześnie usuwają dane i wstawiają nowe dane, poprawiając wydajność zapytań i wykorzystanie klastra. -
Ulepszona wydajność strumienia danych zmiany z selektywnymi zastępowaniami: Selektywne zastępowania przy użyciu
replaceWherew tabelach ze strumieniem danych zmiany nie zapisują już odrębnych plików dla danych o zmianach dla wstawionych danych. Te operacje używają ukrytej kolumny_change_typeobecnej w źródłowych plikach danych Parquet do rejestrowania zmian bez nadmiernego wzmacniania zapisu. -
Ulepszone opóźnienie zapytania dla
COPY INTOpolecenia: ta wersja zawiera zmianę, która poprawia opóźnienie zapytania dlaCOPY INTOpolecenia. To udoskonalenie jest realizowane poprzez asynchroniczne ładowanie stanu przez magazyn stanów RocksDB. Dzięki tej zmianie powinna być zauważalna poprawa czasu uruchamiania zapytań z dużymi stanami danych, takich jak zapytania z dużą liczbą już pozyskanych plików. -
Obsługa usuwania funkcji tabeli ograniczeń sprawdzania: Teraz można usunąć funkcję tabeli
checkConstraintsz tabeli delty przy użyciuALTER TABLE table_name DROP FEATURE checkConstraints. Zobacz Wyłączenie ograniczeń sprawdzania.
Zmiany zachowania
Zmiana powiązania schematu dla widoków: Gdy typy danych w bazowym zapytaniu widoku zmieniają się z tych używanych podczas pierwszego tworzenia widoku, usługa Databricks nie zgłasza już błędów dla odwołań do widoku, jeśli nie można wykonać bezpiecznego rzutowania.
Zamiast tego, widok rekompensuje, stosując regularne zasady rzutowania tam, gdzie to możliwe. Ta zmiana umożliwia usłudze Databricks łatwiejsze tolerowanie zmian w schemacie tabeli.
Nie zezwalaj na tolerancję nieudokumentowanej składni
!poza logiką boolowskąNOT: usługa Databricks nie będzie już tolerować użycia!jako synonimu dlaNOTpoza logiką boolowską. Ta zmiana zmniejsza zamieszanie, jest zgodna ze standardem SQL i sprawia, że usługa SQL jest bardziej przenośna. Przykład:CREATE ... IF ! EXISTS, IS ! NULL, kolumna! NULLlub właściwość pola,! INi ! między należy zastąpić:CREATE ... IF NOT EXISTS,IS NOT NULL,NOT NULLkolumny lub właściwości pola,NOT INiNOT BETWEEN.Operator prefiksu
!logicznego (np.!is_mgrlub!(true AND false)) nie ma wpływu na tę zmianę.Nie zezwalaj na nieudokumentowane i nieprzetworzone fragmenty składni definicji kolumn w widokach: Databricks obsługuje CREATE VIEW z nazwanymi kolumnami i komentarzami kolumn.
Specyfikacja typów kolumn,
NOT NULLograniczeń lubDEFAULTjest tolerowana w ramach składni bez żadnego wpływu. Usługa Databricks usunie tę tolerancję składni. Dzięki temu można zmniejszyć zamieszanie, dopasować je do standardu SQL i umożliwić przyszłe ulepszenia.Spójna obsługa błędów dekodowania Base64 na platformie Spark i aplikacji Photon: ta wersja zmienia sposób obsługi błędów dekodowania Base64 w celu dopasowania obsługi tych błędów przez platformę Spark. Przed wprowadzeniem tych zmian ścieżka generowania kodu Photon i Spark czasami nie podnosiła wyjątków parsowania, podczas gdy wykonanie interpretowane przez Spark poprawnie podnosiło
IllegalArgumentExceptionlubConversionInvalidInputError. Ta aktualizacja gwarantuje, że aplikacja Photon stale zgłasza te same wyjątki co platforma Spark podczas dekodowania Base64, zapewniając bardziej przewidywalną i niezawodną obsługę błędów.CHECKAby zapewnić bardziej przydatne komunikaty o błędach, w środowisku Databricks Runtime 15.3 lub nowszym, instrukcja zawierająca ograniczenieALTER TABLE ADD CONSTRAINTodwołujące się do nieprawidłowej nazwy kolumny zwraca błąd UNRESOLVED_COLUMN.WITH_SUGGESTION. Wcześniej zwracanoINTERNAL_ERROR.
Zestaw JDK został uaktualniony z zestawu JDK 8 do zestawu JDK 17
15 sierpnia 2024 r.
Obliczenia bezserwerowe dla notesów i przepływów pracy zostały przeniesione z Java Development Kit (JDK) 8 do JDK 17 po stronie serwera. To uaktualnienie obejmuje następujące zmiany behawioralne:
Poprawne analizowanie wzorców wyrażeń regularnych z negacją w zagnieżdżonym grupowaniu znaków: dzięki temu uaktualnieniu usługa Azure Databricks umożliwia teraz dokładne rozpoznawanie wzorców wyrażeń regularnych z negacją w zagnieżdżonym grupowaniu znaków. Na przykład
[^[abc]]zostanie przeanalizowany jako "dowolny znak, który nie jest jednym z "abc".Ponadto zachowanie aplikacji Photon było niespójne z platformą Spark dla klas znaków zagnieżdżonych. Wzorce wyrażeń regularnych zawierające zagnieżdżone klasy znaków nie będą już korzystać z systemu Photon i zamiast tego będą korzystać z platformy Spark. Zagnieżdżona klasa znaków to dowolny wzorzec zawierający nawiasy kwadratowe w obrębie innych nawiasów kwadratowych, takich jak
[[a-c][1-3]].
Wersja 15.1
23 lipca 2024 r.
Ta bezserwerowa wersja obliczeniowa w przybliżeniu odpowiada środowisku Databricks Runtime 15.1
Nowe funkcje
Obsługa składni gwiazdki (*) w klauzuli WHERE: teraz możesz użyć składni gwiazdki (*) w klauzuli WHERE, aby odwołać się do wszystkich kolumn z listy SELECT.
Na przykład SELECT * FROM VALUES(1, 2) AS T(a1, a2) WHERE 1 IN(T.*).
Changes
Ulepszone odzyskiwanie błędów podczas analizy składni JSON: analizator JSON używany do wyrażeń ścieżek JSON teraz szybciej odzyskuje po złej składni, co skutkuje mniejszą utratą danych.
pl-PL: W przypadku napotkania źle sformułowanej składni JSON w polu struktury, wartości tablicy, kluczu mapy lub wartości mapy, analizator JSON zwróci teraz NULL tylko dla nieczytelnego pola, klucza lub elementu. Kolejne pola, klucze lub elementy zostaną prawidłowo przeanalizowane. Przed tą zmianą analizator JSON przerywał analizowanie tablicy, struktury bądź mapy i zwracał NULL dla reszty zawartości.
Wersja 14.3
15 kwietnia 2024 r.
Jest to początkowa bezserwerowa wersja obliczeniowa. Ta wersja w przybliżeniu odpowiada databricks Runtime 14.3 z pewnymi modyfikacjami, które usuwają obsługę niektórych funkcji bezserwerowych i starszych.
Obsługiwane parametry konfiguracji platformy Spark
Aby zautomatyzować konfigurację platformy Spark na obliczeniach bezserwerowych, usługa Azure Databricks usunęła obsługę ręcznego ustawiania większości konfiguracji platformy Spark. Aby wyświetlić listę obsługiwanych parametrów konfiguracji platformy Spark, zobacz Konfigurowanie właściwości platformy Spark dla notesów i zadań bezserwerowych.
Wykonanie zadania na bezserwerowym środowisku obliczeniowym zakończy się niepowodzeniem, jeśli ustawisz nieobsługiwaną konfigurację platformy Spark.
funkcje input_file są przestarzałe
Funkcje input_file_name(), input_file_block_length() i input_file_block_start() są przestarzałe. Korzystanie z tych funkcji jest zdecydowanie zniechęcane.
Zamiast tego użyj kolumny metadanych pliku , aby pobrać informacje o metadanych pliku.
Zmiany zachowania
Bezserwerowe obliczenia w wersji 2024.15 obejmują następujące zmiany behawioralne:
-
poprawka usterki unhex(hexStr): w przypadku korzystania z funkcji
unhex(hexStr), hexStr jest zawsze dopełniany z lewej strony do pełnego bajtu. Wcześniej funkcja unhex zignorowała pierwszy bajt połowy. Na przykład:unhex('ABC')teraz tworzyx'0ABC'zamiastx'BC'. - aliasy kolumn generowanych automatycznie są teraz stabilne: Gdy wynik wyrażenia jest przywoływane bez aliasu kolumny określonego przez użytkownika, ten automatycznie wygenerowany alias będzie teraz stabilny. Nowy algorytm może spowodować zmianę wcześniej wygenerowanych automatycznie nazw używanych w funkcjach, takich jak zmaterializowane widoki.
-
Skanowania tabel z polami typu
CHARsą teraz zawsze wypełniane spacjami: Tabele Delta, niektóre tabele JDBC i zewnętrzne źródła danych przechowują dane typu CHAR w postaci nieuzupełnionej spacjami. Podczas odczytywania usługa Azure Databricks będzie teraz dopełniać dane spacjami do zadeklarowanej długości, aby zapewnić poprawną semantykę. -
Rzutowania z BIGINT/DECIMAL na TIMESTAMP zgłaszają wyjątek dla przepełnionych wartości: Azure Databricks umożliwia rzutowanie z BIGINT i DECIMAL na TIMESTAMP, traktując wartość jako liczbę sekund od epoki Unix. Wcześniej usługa Azure Databricks zwracała przepełnione wartości, ale teraz zgłasza wyjątek w przypadkach przepełnienia. Użyj polecenia
try_cast, aby zwrócić wartość NULL zamiast wyjątku. -
Wykonywanie UDF w PySpark zostało ulepszone, aby dopasować się do dokładnego zachowania wykonywania UDF w dedykowanym środowisku obliczeniowym: Wprowadzono następujące zmiany:
- Funkcje zdefiniowane przez użytkownika zwracające ciągi nie konwertują już niejawnie wartości innych niż ciągi na ciągi. Wcześniej funkcje zdefiniowane przez użytkownika (FZU) o zwracanym typie
strzastosowałystr(..)nakładkę do wyniku niezależnie od rzeczywistego typu danych zwróconej wartości. - Funkcje zdefiniowane przez użytkownika z typami zwracanymi
timestampnie zastosowują już niejawnie konwersji strefy czasowej do znaczników czasu.
- Funkcje zdefiniowane przez użytkownika zwracające ciągi nie konwertują już niejawnie wartości innych niż ciągi na ciągi. Wcześniej funkcje zdefiniowane przez użytkownika (FZU) o zwracanym typie