Partilhar via


Compatibilidade com Postgres

Importante

Esta funcionalidade está na Pré-visualização Pública nas seguintes regiões: westus, westus2, eastus, eastus2, centralussouthcentralusnortheuropewesteuropeaustraliaeastbrazilsouthcanadacentralcentralindiasoutheastasiauksouth.

Esta página descreve como uma instância de banco de dados Lakebase é compatível com o Postgres. Como um serviço Postgres gerenciado, existem algumas diferenças e limitações de funcionalidade.

Importante

As instâncias de banco de dados do Azure Databricks suportam apenas o Postgres 16.

Otimizar consultas

A pg_stat_statements extensão fornece informações detalhadas sobre o desempenho da consulta para ajudar a identificar consultas lentas e otimizá-las.

Os usuários podem ver os textos de consulta de suas consultas e quaisquer funções das quais herdam privilégios. Caso tenhas o privilégio ADMIN numa função e não consigas ver os textos de consulta para essa função, torna-te membro dessa função. Se você não tiver privilégios em uma função, não poderá ver seus textos de consulta por motivos de segurança.

Configurações de parâmetros do Postgres

Como um serviço Postgres gerenciado, os parâmetros do banco de dados são definidos com base no tamanho da instância. Veja todas as configurações de parâmetros usando:

SHOW ALL;

Você pode configurar parâmetros que tenham um user contexto no nível de sessão, banco de dados ou função. Não é possível configurar parâmetros no nível da instância.

  • Mostrar parâmetros que podem ser definidos no nível da sessão, do banco de dados ou da função.

    SELECT name
    FROM pg_settings
    WHERE context = 'user';
    
  • Defina um parâmetro para a sessão.

    SET maintenance_work_mem='1 GB';
    
  • Definir um parâmetro para todas as sessões conectadas a um banco de dados

    ALTER DATABASE databricks_postgres SET maintenance_work_mem='1 GB';
    
  • Defina um parâmetro para todas as sessões de um determinado usuário.

    ALTER USER "john@company.com" SET maintenance_work_mem='1 GB';
    

Codificação e agrupamento suportados

Por padrão, o agrupamento C.UTF-8 é usado. C.UTF-8 suporta a gama completa de caracteres codificados UTF-8.

A codificação UTF8 (Unicode, codificação de largura variável de 8 bits) é suportada.

Para exibir a codificação e o agrupamento do banco de dados, execute a consulta a seguir.

SELECT
    pg_database.datname AS database_name,
    pg_encoding_to_char(pg_database.encoding) AS encoding,
    pg_database.datcollate AS collation,
    pg_database.datctype AS ctype
FROM
    pg_database
WHERE
    pg_database.datname = 'your_database_name';

Observação

No Postgres, não é possível alterar a codificação ou o agrupamento de um banco de dados depois que ele for criado.

Limitações de funcionalidade

Funções e permissões

  • Não é possível acessar o sistema operacional do host.
  • Você não pode se conectar usando o Postgres superuser.
    • Qualquer funcionalidade que exija superuser privilégios ou acesso direto ao sistema de arquivos local não é permitida.
    • O databricks_superuser substitui o papel do Postgres superuser . Para obter informações sobre os privilégios associados a essa função, consulte Funções e permissões pré-criadas.

Replication

Não há suporte para a criação de slots de replicação, assinaturas ou publicações.

Acionadores de eventos

Não há suporte para gatilhos de eventos Postgres.

Extensões suportadas

Extension Versão
normalizador_de_endereço 3.3.3
dados_padronizador_de_endereços_eua 3.3.3
Autoinc 1
floração 1
btree_gin 1.3
btree_gist 1.7
Citext 1.6
cubo 1.5
dict_int 1
distância terrestre 1.2
Fuzzystrmatch 1.2
HLL 2.18
hstore 1.8
insert_username 1
Intagg 1.1
IntArray 1.5
Não 1.2
Olá 1.1
ltree 1.2
data e hora de modificação 1
pg_graphql 1.5.9
pg_jsonschema 0.3.3
pg_prewarm 1.2
pg_stat_statements 1.10
pg_trgm 1.6
PGPcrypto 1.3
pgrowlocks 1.2
plpgsql 1
Pós-SIG 3.3.3
postgis_raster 3.3.3
postgis_sfcgal 3.3.3
postgis_tiger_geocoder 3.3.3
postgis_topology 3.3.3
refino 1
SEG 1.4
Tablefunc 1
TCN 1
tsm_system_rows 1
tsm_system_time 1
sem sotaque 1.1
UUID-OSSP 1.1
vetor 0.8.0
XML2 1.1