Konfigurowanie obliczeń dla potoku delta live tables
Ten artykuł zawiera instrukcje i zagadnienia dotyczące konfigurowania niestandardowych ustawień obliczeniowych dla potoków tabel delta Live Tables.
Potoki bezserwerowe nie udostępniają opcji konfiguracji obliczeniowej. Zobacz Konfigurowanie potoku bezserwerowych tabel różnicowych na żywo.
Wybieranie zasad klastra
Użytkownicy muszą mieć uprawnienia do wdrażania zasobów obliczeniowych w celu skonfigurowania i zaktualizowania potoków tabel na żywo delty. Administratorzy obszaru roboczego mogą skonfigurować zasady klastra, aby zapewnić użytkownikom dostęp do zasobów obliczeniowych dla tabel delta Live Tables. Zobacz Define limits on Delta Live Tables pipeline compute (Definiowanie limitów dla obliczeń potoku delta live tables).
Uwaga
Zasady klastra są opcjonalne. Sprawdź się z administratorem obszaru roboczego, jeśli nie masz uprawnień obliczeniowych wymaganych dla tabel delta Live Tables.
Aby upewnić się, że wartości domyślne zasad klastra są poprawnie stosowane, ustaw wartość
apply_policy_default_values
natrue
w konfiguracjach klastra w konfiguracji potoku:{ "clusters": [ { "label": "default", "policy_id": "<policy-id>", "apply_policy_default_values": true } ] }
Konfigurowanie tagów klastra
Możesz użyć tagów klastra do monitorowania użycia klastrów potoków. Dodaj tagi klastra w interfejsie użytkownika tabel delta Live Tables podczas tworzenia lub edytowania potoku albo edytując ustawienia JSON dla klastrów potoków.
Wybieranie typów wystąpień do uruchomienia potoku
Domyślnie funkcja Delta Live Tables wybiera typy wystąpień sterowników potoku i węzłów roboczych. Opcjonalnie można skonfigurować typy wystąpień.
Na przykład wybierz typy wystąpień, aby poprawić wydajność potoku lub rozwiązać problemy z pamięcią podczas uruchamiania potoku. Typy wystąpień można skonfigurować podczas tworzenia lub edytowania potoku przy użyciu interfejsu API REST lub w interfejsie użytkownika delty tabel na żywo.
Aby skonfigurować typy wystąpień podczas tworzenia lub edytowania potoku w interfejsie użytkownika tabel delta Live Tables:
- Kliknij przycisk Ustawienia.
- W sekcji Zaawansowane ustawień potoku w menu rozwijanym Typ procesu roboczego i Typ sterownika wybierz typy wystąpień potoku.
Zaawansowane konfiguracje obliczeniowe
Uwaga
Ponieważ zasoby obliczeniowe są w pełni zarządzane dla bezserwerowych potoków DLT, ustawienia obliczeniowe są niedostępne po wybraniu opcji Bezserwerowe dla potoku.
Każdy potok delta live tables ma dwa skojarzone klastry:
- Klaster
updates
przetwarza aktualizacje potoku. - Klaster
maintenance
uruchamia codzienne zadania konserwacji.
Ustawienia obliczeniowe określone przy użyciu interfejsu użytkownika konfiguracji potoku obszaru roboczego mają zastosowanie zarówno do klastrów aktualizacji, jak i obsługi. Aby zmodyfikować te ustawienia niezależnie, należy edytować konfigurację JSON.
Konfiguracja użycia tych klastrów jest określana przez clusters
atrybut określony w ustawieniach potoku.
Za pomocą etykiet klastra można dodawać ustawienia obliczeniowe, które mają zastosowanie tylko do określonego typu klastra. Istnieją trzy etykiety, których można użyć podczas konfigurowania klastrów potoków:
Uwaga
Ustawienie etykiety klastra można pominąć, jeśli zdefiniujesz tylko jedną konfigurację klastra. Etykieta default
jest stosowana do konfiguracji klastra, jeśli nie podano ustawienia etykiety. Ustawienie etykiety klastra jest wymagane tylko wtedy, gdy trzeba dostosować ustawienia dla różnych typów klastrów.
- Etykieta
default
definiuje ustawienia obliczeniowe dlaupdates
klastrów imaintenance
. Zastosowanie tych samych ustawień do obu klastrów zwiększa niezawodność przebiegów konserwacji, zapewniając, że wymagane konfiguracje, takie jak poświadczenia dostępu do danych dla lokalizacji magazynu, są stosowane do klastra konserwacji. - Etykieta
maintenance
definiuje ustawienia obliczeniowe, które mają zastosowanie tylko do klastramaintenance
. Możesz również użyćmaintenance
etykiety, aby zastąpić ustawienia skonfigurowane przez etykietędefault
. - Etykieta
updates
definiuje ustawienia, które mają zastosowanie tylko do klastraupdates
. Służy do konfigurowania ustawień, które nie powinny być stosowane do klastramaintenance
.
Ustawienia zdefiniowane przy użyciu default
etykiet i updates
są scalane w celu utworzenia ostatecznej konfiguracji klastra updates
. Jeśli to samo ustawienie jest definiowane przy użyciu default
etykiet i , updates
ustawienie zdefiniowane za updates
pomocą etykiety zastępuje ustawienie zdefiniowane za default
pomocą etykiety.
W poniższym przykładzie zdefiniowano parametr konfiguracji platformy Spark, który jest dodawany tylko do konfiguracji klastra updates
:
{
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
},
{
"label": "updates",
"spark_conf": {
"key": "value"
}
}
]
}
Funkcja Delta Live Tables ma podobne opcje dla ustawień klastra jako inne zasoby obliczeniowe w usłudze Azure Databricks. Podobnie jak w przypadku innych ustawień potoku, można zmodyfikować konfigurację JSON dla klastrów, aby określić opcje, które nie są obecne w interfejsie użytkownika. Zobacz Obliczenia.
Uwaga
Ponieważ środowisko uruchomieniowe delta Live Tables zarządza cyklem życia klastrów potoków i uruchamia niestandardową wersję środowiska Databricks Runtime, nie można ręcznie ustawić niektórych ustawień klastra w konfiguracji potoku, takiej jak wersja platformy Spark lub nazwy klastra. Zobacz Atrybuty klastra, które nie są konfigurowalne przez użytkownika.
Konfigurowanie typów wystąpień dla klastrów aktualizacji i konserwacji
Aby skonfigurować typy wystąpień w ustawieniach JSON potoku, kliknij przycisk JSON i wprowadź konfiguracje typu wystąpienia w konfiguracji klastra:
Uwaga
Aby uniknąć przypisywania niepotrzebnych zasobów do maintenance
klastra, w tym przykładzie updates
użyto etykiety do ustawienia typów wystąpień tylko dla klastra updates
. Aby przypisać typy wystąpień do obu updates
klasterów maintenance
, użyj default
etykiety lub pomiń ustawienie etykiety. Etykieta default
jest stosowana do konfiguracji klastra potoku, jeśli nie podano żadnego ustawienia etykiety. Zobacz Zaawansowane konfiguracje obliczeniowe.
{
"clusters": [
{
"label": "updates",
"node_type_id": "Standard_D12_v2",
"driver_node_type_id": "Standard_D3_v2",
"..." : "..."
}
]
}
Opóźnianie zamykania zasobów obliczeniowych
Aby kontrolować zachowanie zamykania klastra, można użyć trybu programowania lub produkcji lub użyć pipelines.clusterShutdown.delay
ustawienia w konfiguracji potoku. Poniższy przykład ustawia wartość pipelines.clusterShutdown.delay
na 60 sekund:
{
"configuration": {
"pipelines.clusterShutdown.delay": "60s"
}
}
Gdy tryb production
jest włączony, domyślna wartość parametru pipelines.clusterShutdown.delay
to 0 seconds
. Gdy tryb development
jest włączony, domyślna wartość to 2 hours
.
Uwaga
Ponieważ klaster delta Live Tables jest automatycznie zamykany, gdy nie jest używany, odwoływanie się do zasad klastra ustawianych autotermination_minutes
w konfiguracji klastra powoduje błąd.
Tworzenie klastra z jednym węzłem
Jeśli w ustawieniach klastra ustawiono num_workers
wartość 0, klaster zostanie utworzony jako klaster z jednym węzłem. Skonfigurowanie klastra skalowania automatycznego i ustawienie min_workers
wartości 0 i max_workers
0 powoduje utworzenie klastra z jednym węzłem.
Jeśli skonfigurujesz klaster skalowania automatycznego i ustawisz tylko min_workers
wartość 0, klaster nie zostanie utworzony jako klaster z jednym węzłem. Klaster ma co najmniej jeden aktywny proces roboczy przez cały czas do zakończenia jego działania.
Przykładowa konfiguracja klastra do utworzenia klastra z pojedynczym węzłem na platformie Delta Live Tables:
{
"clusters": [
{
"num_workers": 0
}
]
}