Condividi tramite


Configurare per la disponibilità elevata

Questa pagina descrive come configurare un'istanza del database Lakebase per la disponibilità elevata abilitando le istanze secondarie leggibili.

Importante

Questa funzionalità è disponibile in anteprima pubblica nelle aree seguenti: westus, westus2, eastus, eastus2, centralus, southcentralusnortheuropewesteuropeaustraliaeastbrazilsouthcanadacentralcentralindiasoutheastasia. uksouth

Per abilitare la disponibilità elevata, specificare nodi aggiuntivi come parte di un'istanza del database. Se il calcolo primario diventa non integro o non disponibile, viene utilizzato un nodo a disponibilità elevata per eseguire il failover e il nodo secondario viene alzato di livello primario.

È anche possibile abilitare repliche secondarie leggibili, in cui i nodi a disponibilità elevata possono gestire carichi di lavoro di sola lettura usando un endpoint DNS separato (instance-ro-{uuid} rispetto a instance-{uuid}).

Abilitare l'istanza del database per la disponibilità elevata

Se si imposta il numero di nodi a disponibilità elevata su uno, la disponibilità elevata e i database secondari leggibili sono disabilitati. In caso contrario, si dispone di un nodo primario e il resto sono nodi a disponibilità elevata. Il numero massimo di nodi a disponibilità elevata è tre per istanza del database.

Specificare il numero di nodi a disponibilità elevata durante la creazione dell'istanza del database. Vedere Creare un'istanza del database.

Seguire questa procedura per modificare l'istanza del database usando l'interfaccia utente o l'API.

INTERFACCIA UTENTE

  1. Nella barra laterale dell’area di lavoro fare clic su Calcola.
  2. Fare clic sulla scheda Istanze di database .
  3. Selezionare l'istanza del database da aggiornare.
  4. Fare clic su Modifica nell'angolo superiore destro.
  5. Immettere il valore per le dimensioni del nodo del pool a disponibilità elevata (incluso quello primario).
  6. Attiva Abilita repliche secondarie leggibili.
  7. Fare clic su Salva.

curva

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

Python SDK

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

Resilienza di calcolo

Con i nodi a disponibilità elevata configurati, il nodo primario dell'istanza del database è protetto da disponibilità elevata. Se il nodo primario non è più disponibile, l'istanza del database ne esegue automaticamente il failover in un nodo secondario, promuovendola come nuovo nodo primario. Poiché i nodi di calcolo sono senza stato, gli errori non influiscono sui dati e la stringa di connessione rimane invariata. L'indisponibilità viene risolta in secondi in minuti, a seconda del tipo di errore. Durante un failover, le connessioni attive vengono eliminate, quindi l'applicazione deve essere configurata per gestire queste brevi disconnessioni e riconnettersi automaticamente.

Anche i nodi secondari nell'istanza del database vengono ripristinati automaticamente in minuti quando si verificano problemi. Se si abilitano repliche secondarie leggibili, Databricks consiglia di disporre di almeno tre nodi a disponibilità elevata, nel caso in cui il failover primario influisca sulla connessione di sola lettura. L'applicazione necessita ancora di un meccanismo di riconnessione per gestire il breve tempo di inattività.

Eseguire query di sola lettura dall'editor SQL di Azure Databricks

Per connettersi ai database secondari leggibili ed eseguire query di sola lettura dall'editor SQL di Azure Databricks, vedere Accedere a un'istanza di database dall'editor SQL.

Limitazioni

  • Il ripristino delle prestazioni richiede tempo. Le query potrebbero essere eseguite inizialmente più lentamente fino a quando non vengono ricompilate perché il nuovo nodo primario non dispone di dati specifici della sessione e di una cache locale per i dati a cui si accede di frequente.
  • La replica tra aree non è supportata. In caso di interruzione a livello di area, la disponibilità dipende dal provider cloud che ripristina il servizio nella regione interessata.