Udostępnij przez


Konfigurowanie pod kątem wysokiej dostępności

Na tej stronie opisano sposób konfigurowania wystąpienia bazy danych Lakebase pod kątem wysokiej dostępności przez włączenie czytelnych wystąpień pomocniczych.

Ważne

Ta funkcja jest dostępna w wersji próbnej w następujących regionach: westus, westus2, eastus, eastus2, centralus, southcentralus, northeurope, westeurope, australiaeast, brazilsouth, canadacentral, centralindia, southeastasia, uksouth.

Aby włączyć wysoką dostępność, określ dodatkowe węzły w ramach wystąpienia bazy danych. Jeśli podstawowe zasoby obliczeniowe staną się w złej kondycji lub niedostępne, węzeł wysokiej dostępności jest używany do pracy w trybie failover, a węzeł pomocniczy zostanie podwyższony do poziomu podstawowego.

Można również włączyć odczytywalne kopie zapasowe, w których węzły zapewniające wysoką dostępność mogą obsługiwać pracę tylko do odczytu przy użyciu oddzielnego punktu końcowego DNS (instance-ro-{uuid} w porównaniu z instance-{uuid}).

Aktywuj wystąpienie bazy danych dla wysokiej dostępności

Jeśli ustawisz liczbę węzłów wysokiej dostępności na jeden, wysoka dostępność i repliki do odczytu są wyłączone. W przeciwnym razie masz jeden węzeł podstawowy, a pozostałe są węzłami o wysokiej dostępności. Maksymalna liczba węzłów wysokiej dostępności to trzy na wystąpienie bazy danych.

Określ liczbę węzłów wysokiej dostępności podczas tworzenia wystąpienia bazy danych. Zobacz Tworzenie wystąpienia bazy danych.

Wykonaj następujące kroki, aby zmodyfikować wystąpienie bazy danych za pomocą interfejsu użytkownika lub API.

interfejs użytkownika

  1. Kliknij pozycję Obliczenia na pasku bocznym obszaru roboczego.
  2. Kliknij kartę Wystąpienia bazy danych .
  3. Wybierz wystąpienie bazy danych, które chcesz zaktualizować.
  4. Kliknij przycisk Edytuj w prawym górnym rogu.
  5. Wprowadź wartość rozmiaru węzła puli wysokiej dostępności (w tym podstawowego).
  6. Włącz czytelne drugorzędne.
  7. Kliknij przycisk Zapisz.

skręt

curl -s -X PATCH --header "Authorization: Bearer ${DATABRICKS_TOKEN}" $DBR_URL/database/instances/my-instance -d '{ “node_count”: 3, “enable_readable_secondaries” : true}'

Zestaw SDK dla języka Python

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.database import DatabaseInstance

# Initialize the Workspace client
w = WorkspaceClient()

# Create a database instance with high availability
instance = w.database.create_database_instance(
    DatabaseInstance(
        name="my-database-instance",
        capacity="CU_1",
        node_count=3,  # Set the number of high availability nodes (including primary)
    )
)

print(f"Created database instance: {instance.name}")
print(f"Connection endpoint: {instance.read_write_dns}")

CLI

# Create a database instance
databricks database create-database-instance my-database-instance \
  --capacity CU_1 \
  --node-count 3

Odporność obliczeniowa

Po skonfigurowaniu węzłów wysokiej dostępności, podstawowy węzeł wystąpienia bazy danych jest chroniony dzięki wysokiej dostępności. Jeśli węzeł podstawowy stanie się niedostępny, wystąpienie bazy danych automatycznie przełączy je w tryb failover do węzła pomocniczego, promując go jako nowy węzeł podstawowy. Ponieważ węzły obliczeniowe są bezstanowe, błędy nie wpływają na dane, a parametry połączenia pozostają niezmienione. Niedostępność jest usuwana od kilku sekund do kilku minut, zależnie od typu awarii. Podczas pracy w trybie failover aktywne połączenia są porzucane, dlatego aplikacja powinna być skonfigurowana do obsługi tych krótkich rozłączeń i automatycznego ponownego nawiązywania połączenia.

Węzły pomocnicze w instancji bazy danych są również automatycznie odzyskiwane w ciągu kilku minut w przypadku wystąpienia problemów. Jeśli włączysz odczytywalne repliki, Databricks zaleca posiadanie co najmniej trzech węzłów wysokiej dostępności, na wypadek gdyby przełączenie podstawowego wpłynęło na połączenie tylko do odczytu. Aplikacja nadal potrzebuje mechanizmu ponownego łączenia w celu obsługi krótkiego przestoju.

Wykonywanie zapytań tylko do odczytu z poziomu edytora SQL usługi Azure Databricks

Aby nawiązać połączenie z danymi pomocniczymi z możliwością odczytu i uruchamiać zapytania tylko do odczytu z edytora SQL usługi Azure Databricks, zobacz Uzyskiwanie dostępu do wystąpienia bazy danych z poziomu edytora SQL.

Ograniczenia

  • Odzyskiwanie wydajności zajmuje trochę czasu. Zapytania mogą początkowo działać wolniej, dopóki nie zostaną ponownie utworzone, ponieważ nowy węzeł podstawowy nie ma danych specyficznych dla sesji i lokalnej pamięci podręcznej dla często używanych danych.
  • Replikacja między regionami nie jest obsługiwana. W przypadku awarii całego regionu dostępność zależy od dostawcy usług w chmurze przywracającej usługę do regionu, którego dotyczy problem.