Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Importante
Esta funcionalidade está na Pré-visualização Pública nas seguintes regiões: westus, westus2, eastus, eastus2, centralussouthcentralusnortheuropewesteuropeaustraliaeastbrazilsouthcanadacentralcentralindiasoutheastasiauksouth.
Esta página explica como registrar o seu banco de dados Lakebase como um catálogo de leitura única no Catálogo do Unity Catalog. Isso permite que você use os privilégios do Unity Catalog para gerenciar o acesso aos dados e aproveitar integrações como sincronização de dados gerenciados.
Propriedade e permissões
- Se o banco de dados não existir, ele pode ser criado em conjunto com o catálogo. Neste caso, a propriedade dos objetos seguirá estas diretrizes.
- O criador do catálogo também deve possuir
CREATE CATALOGprivilégios no metastore do Unity Catalog.
Criar um catálogo
Para registrar um banco de dados com o Unity Catalog, use a UI do Azure Databricks, a chamada de API, o SDK do Python ou a CLI.
IU
- Clique em Computação na barra lateral do espaço de trabalho.
- Na guia Instâncias de banco de dados , selecione sua instância de banco de dados.
- Na guia Catálogos , clique em Criar catálogo.
- Você pode registrar um banco de dados existente como um catálogo Unity Catalog ou criar um novo. Use uma das seguintes opções:
- Para usar um banco de dados existente: insira o nome desejado do catálogo Unity Catalog e o nome do banco de dados Postgres existente. O banco de dados
databricks_postgrespadrão pode ser usado como o nome do banco de dados. - Para criar um novo banco de dados Postgres e um catálogo Unity Catalog ao mesmo tempo: insira o nome do catálogo desejado e ative Criar novo banco de dados.
- Para usar um banco de dados existente: insira o nome desejado do catálogo Unity Catalog e o nome do banco de dados Postgres existente. O banco de dados
- Clique em Criar.
- Após a criação, clique no catálogo na lista Catálogos para ver a visualização do Catalog Explorer.
Python SDK
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.database import DatabaseCatalog
# Initialize the Workspace client
w = WorkspaceClient()
# Register an existing database as a UC catalog
catalog = w.database.create_database_catalog(
DatabaseCatalog(
name="my_catalog", # Name of the UC catalog to create
database_instance_name="my-instance", # Name of the database instance
database_name="databricks_postgres", # Name of the existing Postgres database
)
)
print(f"Created database catalog: {catalog.name}")
# Create a new database and register it as a UC catalog
catalog = w.database.create_database_catalog(
DatabaseCatalog(
name="new_catalog", # Name of the UC catalog to create
database_instance_name="my-instance", # Name of the database instance
database_name="new_database", # Name of the Postgres database to register (and optionally create)
create_database_if_not_exists=True # Create the database if it doesn't exist
)
)
print(f"Created new database and catalog: {catalog.name}")
CLI
# Register an existing database as a UC catalog
databricks database create-database-catalog my_catalog my-instance databricks_postgres
# Create a new database and register it as a UC catalog
databricks database create-database-catalog new_catalog my-instance new_database \
--create-database-if-not-exists
encaracolar
export PG_DATABASE_NAME="<name of the PG database to sync to UC>"
export CATLAOG_NAME="<name of UC catalog to create>"
// Optional
export CREATE_DATABASE_IF_NOT_EXISTS="<whether to create a new database>"
curl -X POST --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/catalogs \
--data-binary @- << EOF
{
"name": "$CATALOG_NAME",
"database_name": "$PG_DATABASE_NAME",
"instance_name": "$INSTANCE_NAME",
"create_database_if_not_exists": "$CREATE_DATABASE_IF_NOT_EXISTS" // optional
}
Limitações
- Os nomes dos bancos de dados devem conter apenas caracteres alfanuméricos ou sublinhados. Observação Os nomes dos bancos de dados não podem incluir hífenes.
- O catálogo criado no Unity Catalog com base na base de dados é somente leitura.
Explore objetos do Postgres no Unity Catalog por meio de um catálogo de banco de dados
Para exibir o catálogo, verifique se você tem um SQL warehouse sem servidor em execução anexado.
- Clique em Catálogo na barra lateral do espaço de trabalho.
- No navegador Catálogo, clique no cluster e selecione um armazém de dados SQL sem servidor em execução como recurso de computação.
- Clique em Iniciar e fechar.
À medida que você abre o catálogo, esquemas e tabelas, as sincronizações devem ser acionadas automaticamente. No entanto, a interface do usuário pode armazenar dados em cache para reduzir o número de solicitações Postgres, portanto, novos objetos podem não aparecer imediatamente.
Para acionar uma atualização completa, clique em
.
Excluir um catálogo de banco de dados no Unity Catalog
Você deve ser o proprietário de um catálogo de banco de dados ou um administrador de metastore para excluí-lo.
O Databricks recomenda que você primeiro exclua todas as tabelas sincronizadas do catálogo do banco de dados. Cada tabela de origem só pode ser usada para criar 20 tabelas sincronizadas e pode levar até três dias para que as tabelas sincronizadas sejam limpas no Unity Catalog depois que um catálogo de banco de dados for excluído. As tabelas sincronizadas pendentes de exclusão no Unity Catalog contam para o limite de 20 tabelas sincronizadas por tabela de origem.
Use a interface do usuário do Azure Databricks, o SDK do Python, a CLI ou a API para excluir um catálogo de banco de dados.
IU
- Clique em Catálogo na barra lateral do espaço de trabalho.
- Selecione o catálogo de banco de dados que você deseja excluir do painel Catálogo .
- Clique no
clique em Excluir.
Python SDK
from databricks.sdk import WorkspaceClient
# Initialize the Workspace client
w = WorkspaceClient()
# Delete a database catalog
catalog_name = "my_catalog"
w.database.delete_database_catalog(name=catalog_name)
print(f"Deleted database catalog: {catalog_name}")
CLI
# Delete a database catalog
databricks database delete-database-catalog my_catalog
encaracolar
curl -X DELETE --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/catalogs/$CATALOG_NAME
Depois que o catálogo for excluído, você poderá renomear ou soltar o banco de dados Postgres.