Compartir a través de


Creación y administración de una instancia de base de datos

Importante

Esta característica se encuentra en versión preliminar pública en las siguientes regiones: westus, westus2, eastuseastus2, centralussouthcentralusnortheuropewesteuropeaustraliaeastbrazilsouthcanadacentralcentralindia, , . southeastasiauksouth

Para empezar a trabajar con cargas de trabajo OLTP, cree una instancia de base de datos aprovisionada de Lakebase mediante la interfaz de usuario de Azure Databricks, la llamada API, el SDK de Python o la CLI.

Creación de una instancia de base de datos

Cree una instancia de base de datos con los valores predeterminados recomendados. Debe proporcionar un nombre de instancia (solo 1-63 caracteres, letras y guiones). Como creador, es el propietario de la base de datos con el databricks_superuser rol .

La mayoría de los usuarios del área de trabajo pueden crear instancias de base de datos de forma predeterminada. Si encuentra problemas de permisos, consulte permisos de instancia de base de datos.

Interfaz de usuario

  1. Haga clic en Calcular en la barra lateral del área de trabajo.
  2. Haga clic en la pestaña Aprovisionado de Lakebase .
  3. Haga clic en Crear instancia de base de datos.
  4. Escriba un nombre de instancia de base de datos (solo de 1 a 63 caracteres, letras y guiones).
  5. Haga clic en Crear.

SDK de Python

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

# Initialize the Workspace client
w = WorkspaceClient()

# Create a database instance
instance = w.database.create_database_instance(
    DatabaseInstance(
        name="my-database-instance",
        capacity="CU_1"
    )
)

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

Interfaz de línea de comandos (CLI)

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

# Create with advanced options (using JSON for more complex parameters)
databricks database create-database-instance \
  --json '{
    "name": "my-database-instance",
    "capacity": "CU_2",
    "retention_window_in_days": 14
  }'

curl

Cree una instancia de base de datos y especifique una ventana de retención.

export PAT=<YOUR_PAT>
export INSTANCE_NAME="instance_name"

> curl -X POST --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://[your databricks workspace]/api/2.0/database/instances \
--data-binary @- << EOF
{
  "name": "$INSTANCE_NAME",
  "capacity": "CU_1",
  "retention_window_in_days": 14
}
EOF

Configuración avanzada

También puede configurar estas características durante la creación o después de la creación editando la instancia:

Característica Description
Directiva de presupuesto sin servidor Seleccione una directiva de presupuesto para la instancia de base de datos para atribuir el uso sin servidor y la facturación a presupuestos específicos. También puede agregar etiquetas personalizadas.
Tamaño de instancia Escale los recursos de proceso para los requisitos de rendimiento de la carga de trabajo (el valor predeterminado es 2 CU).
Ventana Restaurar Establezca la ventana de retención (2-35 días, 7 días predeterminado) para la recuperación a un momento dado.
Alta disponibilidad Agregue nodos de conmutación por error para garantizar la continuidad empresarial de las cargas de trabajo de producción.
Crear desde el elemento primario Cree un clon de copia en escritura desde una instancia de base de datos existente.

Detener o iniciar una instancia

Para detener o iniciar una instancia de base de datos, debe tener permisos CAN MANAGE sobre ella. Para detener o iniciar una instancia, use la interfaz de usuario de Azure Databricks, la llamada API, el SDK de Python o la CLI.

Interfaz de usuario

  1. Haga clic en Calcular en la barra lateral del área de trabajo.
  2. Haga clic en la pestaña Aprovisionado de Lakebase .
  3. Haga clic en la instancia de base de datos que desea detener o iniciar.
  4. Haga clic en Detener o Iniciar en la esquina superior derecha de la página.

SDK de Python

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

# Initialize the Workspace client
w = WorkspaceClient()

# Stop a database instance
instance_name = "my-database-instance"
w.database.update_database_instance(
    name=instance_name,
    database_instance=DatabaseInstance(
        name=instance_name,
        stopped=True
    ),
    update_mask="*"
)
print(f"Stopped database instance: {instance_name}")

# Start a database instance
w.database.update_database_instance(
    name=instance_name,
    database_instance=DatabaseInstance(
        name=instance_name,
        stopped=False
    ),
    update_mask="*"
)
print(f"Started database instance: {instance_name}")

Interfaz de línea de comandos (CLI)

# Stop a database instance
databricks database update-database-instance my-database-instance \
  --json '{
    "stopped": true
  }'

# Start a database instance
databricks database update-database-instance my-database-instance \
  --json '{
    "stopped": false
  }'

curl

La siguiente llamada API detiene una instancia de base de datos.

-X PATCH --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/instances/$INSTANCE_NAME \
--data-binary @- << EOF
{
  "stopped": true
}
EOF

La siguiente llamada API inicia una instancia de base de datos.

curl -X PATCH --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/instances/$INSTANCE_NAME \
--data-binary @- << EOF
{
  "stopped": false
}
EOF

Comportamiento cuando se detiene

Comportamiento de la instancia de base de datos:

  • Se conservan los datos.
  • La instancia no se puede usar para las operaciones de lectura o escritura.
  • Las tablas sincronizadas no permiten lecturas.
  • Las canalizaciones declarativas de Spark (LDP) de Lakeflow no detectan instancias detenidas y pueden devolver errores.
  • Los catálogos registrados en instancias detenidas no muestran los detalles del esquema en la interfaz de usuario.

Limitaciones funcionales:

  • No puede crear ni eliminar DatabaseTables ni DatabaseCatalogs.
  • Puede eliminar o cambiar el tamaño de una instancia detenida. Los cambios de capacidad surten efecto cuando se reinicia la instancia.
  • Puede detener las canalizaciones.

Comportamiento cuando se inicia

  • La instancia entra en el estado STARTING y se vuelve AVAILABLE cuando está lista.

Limitaciones

  • LDP no detecta instancias detenidas y puede devolver errores.
  • Los catálogos registrados en instancias detenidas no muestran los detalles del esquema en la interfaz de usuario.

Eliminación de una instancia

Tenga cuidado al eliminar la instancia de base de datos, ya que, al hacerlo, se eliminarán todos los datos asociados.

Debe tener permisos de CAN MANAGE sobre la instancia de base de datos. Si no es el propietario de las tablas o catálogos, debe reasignarse la propiedad a usted mismo. Los administradores del área de trabajo pueden eliminar las instancias de base de datos que no poseen.

Databricks recomienda eliminar todos los catálogos de Catálogos de Unity asociados, tablas sincronizadas e instancias secundarias antes de eliminar la instancia de base de datos. De lo contrario, si intenta ver catálogos o ejecutar consultas SQL que hacen referencia a ellas, se producirán errores.

Interfaz de usuario

  1. Haga clic en Calcular en la barra lateral del área de trabajo.
  2. Haga clic en la pestaña Aprovisionado de Lakebase .
  3. Seleccione la instancia de base de datos que desea eliminar.
  4. Haga clic en la pestaña Catálogos para ver la lista completa de catálogos de bases de datos asociados a la instancia de base de datos.
  5. Para cada catálogo de bases de datos, elimine todas las tablas sincronizadas, incluidas las que se encuentran en catálogos administrados y no se registran como catálogos de bases de datos.
  6. Haga clic en icono de menú Kebab.>Eliminar catálogo.

SDK de Python

from databricks.sdk import WorkspaceClient

# Initialize the Workspace client
w = WorkspaceClient()

# Delete a database instance
instance_name = "my-database-instance"
w.database.delete_database_instance(
    name=instance_name,
    purge=True  # Required to delete the instance
)
print(f"Deleted database instance: {instance_name}")

# Delete with force option (to delete child instances too)
w.database.delete_database_instance(
    name=instance_name,
    force=True,  # Delete child instances too
    purge=True
)

Interfaz de línea de comandos (CLI)

# Delete a database instance
databricks database delete-database-instance my-database-instance \
  --purge

# Delete with force option (to delete child instances too)
databricks database delete-database-instance my-database-instance \
  --json '{
    "force": true,
    "purge": true
  }'

curl

purge=true debe especificarse para eliminar una instancia de base de datos.

curl -X DELETE --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/instances/$INSTANCE_NAME?purge=true

Actualización de una directiva de presupuesto sin servidor de una instancia de base de datos

Las directivas presupuestarias sin servidor constan de etiquetas que se aplican a cualquier actividad de proceso sin servidor que incurra un usuario asignado a la directiva. Al etiquetar una instancia de base de datos con una directiva de uso, puede atribuir los costos de facturación y uso a determinadas directivas, lo que facilita el seguimiento, la administración y el control del gasto entre recursos sin servidor.

Use la interfaz de usuario para actualizar la directiva de presupuesto de una instancia de base de datos:

  1. Haga clic en Calcular en la barra lateral del área de trabajo.
  2. Haga clic en la pestaña Aprovisionado de Lakebase .
  3. Seleccione la instancia de base de datos para la que desea actualizar la directiva de facturación.
  4. Haga clic en Editar en la esquina superior derecha.
  5. Seleccione una directiva de presupuesto sin servidor.
  6. Haz clic en Guardar.

Pasos siguientes

Limitaciones y requisitos

En las secciones siguientes se describen los límites y los requisitos de configuración de las instancias de base de datos administradas. Para obtener restricciones sobre la creación y el uso de instancias, consulte Limitaciones y consideraciones.

Requisitos de nombre de instancia

  • Debe tener entre 1 y 63 caracteres.
  • Debe comenzar con una letra.
  • Solo puede contener caracteres alfanuméricos y guiones.
  • No puede incluir dos guiones consecutivos.