Delen via


Een database-exemplaar maken en beheren

Belangrijk

Deze functie bevindt zich in Openbare Preview in de volgende regio's: westus, westus2, eastus, eastus2, centralus, southcentralus, northeurope, westeurope, australiaeast, brazilsouth, canadacentral, centralindia, southeastasia, uksouth.

Als u aan de slag wilt gaan met OLTP-workloads, maakt u een met Lakebase ingericht database-exemplaar met behulp van de Azure Databricks-gebruikersinterface, API-aanroep, Python SDK of CLI.

Een database-exemplaar maken

Maak een database-exemplaar met aanbevolen standaardwaarden. U moet een instantienaam opgeven (alleen 1-63 tekens, letters en afbreekstreepjes). Als maker bent u de eigenaar van de database met de databricks_superuser rol.

De meeste werkruimtegebruikers kunnen standaard database-exemplaren maken. Als u machtigingsproblemen ondervindt, raadpleegt u machtigingen voor database-exemplaren.

UI (Gebruikersinterface)

  1. Klik op Compute in de zijbalk van de werkruimte.
  2. Klik op het Lakebase Ingericht tabblad.
  3. Klik op Database-exemplaar maken.
  4. Voer de naam van een database-exemplaar in (alleen 1-63 tekens, letters en afbreekstreepjes).
  5. Klik op Create.

Python SDK

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}")

CLI (Command Line Interface)

# 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

Maak een database-exemplaar en geef een bewaarvenster op.

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

Geavanceerde instellingen

U kunt deze functies ook configureren tijdens het maken of na het maken door uw exemplaar te bewerken:

Functie Description
Serverloos budgetbeleid Selecteer een budgetbeleid voor uw database-exemplaar om serverloos gebruik en facturering toe te voegen aan specifieke budgetten. U kunt ook aangepaste tags toevoegen.
Instantiegrootte Rekenresources schalen voor de prestatievereisten van uw workload (standaard 2 CU).
Venster Herstellen Stel het bewaarvenster (2-35 dagen, standaard 7 dagen) in voor herstel naar een bepaald tijdstip.
Hoge beschikbaarheid Voeg failoverknooppunten toe om bedrijfscontinuïteit voor productieworkloads te garanderen.
Maken van bovenliggend item Maak een copy-on-write-kloon van een bestaand database-exemplaar.

Een instantie stoppen of starten

Als u een database-exemplaar wilt stoppen of starten, moet u er machtigingen voor hebben CAN MANAGE . Als u een exemplaar wilt stoppen of starten, gebruikt u de Gebruikersinterface van Azure Databricks, API-aanroep, Python SDK of CLI.

UI (Gebruikersinterface)

  1. Klik op Compute in de zijbalk van de werkruimte.
  2. Klik op het Lakebase Ingericht tabblad.
  3. Klik op het database-exemplaar dat u wilt stoppen of starten.
  4. Klik op Stoppen of Starten in de rechterbovenhoek van de pagina.

Python SDK

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}")

CLI (Command Line Interface)

# 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

Met de volgende API-aanroep wordt een database-exemplaar gestopt.

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

Met de volgende API-aanroep wordt een database-exemplaar gestart.

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

Gedrag bij stilstand

Gedrag van database-exemplaren:

  • Gegevens blijven behouden.
  • Het exemplaar kan niet worden gebruikt voor lees- of schrijfbewerkingen.
  • Gesynchroniseerde tabellen dienen geen leesbewerkingen.
  • Declaratieve pijplijnen van Lakeflow Spark (LDP) detecteren geen gestopte instanties en kunnen fouten retourneren.
  • Geregistreerde catalogi op gestopte exemplaren tonen geen schemadetails in de gebruikersinterface.

Functionele beperkingen:

  • U kunt DatabaseTables of DatabaseCatalogs niet maken of verwijderen.
  • U kunt een gestopt exemplaar verwijderen of het formaat ervan wijzigen. Capaciteitswijzigingen worden van kracht wanneer het exemplaar opnieuw wordt opgestart.
  • U kunt pijplijnen stoppen.

Gedrag bij het starten

  • Het exemplaar komt in de STARTING status en wordt AVAILABLE wanneer het gereed is.

Beperkingen

  • LDP detecteert geen gestopte instanties en kan fouten opleveren.
  • Geregistreerde catalogi op gestopte exemplaren tonen geen schemadetails in de gebruikersinterface.

Een exemplaar verwijderen

Wees voorzichtig bij het verwijderen van het database-exemplaar. Hierdoor worden alle bijbehorende gegevens verwijderd.

U moet voor het database-exemplaar rechten hebben CAN MANAGE. Als u niet de eigenaar van de tabellen of catalogi bent, moet u het eigendom opnieuw aan uzelf toewijzen. Werkruimtebeheerders kunnen database-exemplaren verwijderen die ze niet bezitten.

Databricks raadt u aan alle bijbehorende Unity Catalog-catalogi, gesynchroniseerde tabellen en onderliggende exemplaren te verwijderen voordat u het database-exemplaar verwijdert. Anders leidt de poging om catalogi weer te geven of SQL-query's uit te voeren die ernaar verwijzen tot fouten.

UI (Gebruikersinterface)

  1. Klik op Compute in de zijbalk van de werkruimte.
  2. Klik op het Lakebase Ingericht tabblad.
  3. Selecteer het database-exemplaar dat u wilt verwijderen.
  4. Klik op het tabblad Catalogs om de volledige lijst met databasecatalogussen weer te geven die zijn gekoppeld aan het database-exemplaar.
  5. Verwijder voor elke databasecatalogus alle gesynchroniseerde tabellen, inclusief tabellen die zich in beheerde catalogi bevinden en die niet zijn geregistreerd als databasecatalogussen.
  6. Klik op het kebab-menupictogram.>Catalogus verwijderen.

Python SDK

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
)

CLI (Command Line Interface)

# 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 moet worden opgegeven om een database-exemplaar te verwijderen.

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

Een serverloos budgetbeleid van een database-exemplaar bijwerken

Serverloos budgetbeleid bestaat uit tags die worden toegepast op serverloze rekenactiviteiten die worden gemaakt door een gebruiker die is toegewezen aan het beleid. Door een database-exemplaar te taggen met een gebruiksbeleid, kunt u facturerings- en gebruikskosten toewijzen aan bepaalde beleidsregels, zodat u de uitgaven eenvoudiger kunt bijhouden, beheren en beheren voor serverloze resources.

Gebruik de gebruikersinterface om het budgetbeleid van een database-exemplaar bij te werken:

  1. Klik op Compute in de zijbalk van de werkruimte.
  2. Klik op het Lakebase Ingericht tabblad.
  3. Selecteer het database-exemplaar waarvoor u het factureringsbeleid wilt bijwerken.
  4. Klik in de rechterbovenhoek op Bewerken .
  5. Selecteer een serverloos budgetbeleid.
  6. Klik op Opslaan.

Volgende stappen

Beperkingen en vereisten

In de volgende secties worden limieten en configuratievereisten voor beheerde database-exemplaren beschreven. Zie Beperkingen en overwegingen voor beperkingen voor het maken en gebruiken van exemplaren.

Vereisten voor exemplaarnamen

  • Moet 1 tot 63 tekens lang zijn.
  • Moet beginnen met een brief.
  • Mag alleen alfanumerieke tekens en afbreekstreepjes bevatten.
  • Kan geen twee opeenvolgende afbreekstreepjes opnemen.