Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
La scalabilità automatica di Lakebase si trova in Beta nelle aree seguenti: eastus2, westeurope, westus.
La scalabilità automatica di Lakebase è la versione più recente di Lakebase con calcolo con scalabilità automatica, scalabilità a zero, diramazione e ripristino istantaneo. Per il confronto delle funzionalità con Il provisioning di Lakebase, vedere La scelta tra le versioni.
Questa pagina descrive il modo in cui Lakebase Postgres è compatibile con Postgres standard. Come servizio Postgres gestito, esistono alcune differenze e limitazioni.
Supporto della versione di Postgres
La scalabilità automatica di Lakebase supporta Postgres 16 e Postgres 17.
Supporto delle estensioni Postgres
Lakebase supporta numerose estensioni Postgres. Per l'elenco completo, vedere Estensioni Postgres.
Sessione, memoria e archiviazione
Contesto della sessione
La funzionalità scale-to-zero di Lakebase chiude automaticamente le connessioni inattive dopo un periodo di inattività.
Quando le connessioni vengono chiuse, qualsiasi elemento nel contesto della sessione, ad esempio tabelle temporanee, istruzioni preparate, blocchi consultivi e comandi NOTIFY e LISTEN , viene perso.
Per evitare di perdere contesti a livello di sessione, è possibile disabilitare la scalabilità a zero. In questo modo, tuttavia, il calcolo viene eseguito 24/7.
Memoria
Le query SQL e le compilazioni di indici possono generare grandi volumi di dati che potrebbero non rientrare nella memoria. Le dimensioni del calcolo determinano la quantità di memoria disponibile.
Tabelle non registrate
Le tabelle non loggate sono tabelle che non scrivono nel WAL di Postgres. Queste tabelle vengono archiviate nell'archiviazione locale di calcolo e non vengono mantenute tra riavvii di calcolo o quando un calcolo viene ridimensionato su zero. A differenza di Postgres standard, in cui le tabelle senza log vengono troncate solo in caso di interruzione anomala del processo. Inoltre, le tabelle non registrate sono limitate dallo spazio su disco locale di calcolo. I calcoli lakebase allocano 20 GiB di spazio su disco locale o 15 GiB volte le dimensioni massime di calcolo (a qualsiasi livello più alto) per i file temporanei usati da Postgres.
Tabelle temporanee
Le tabelle temporanee esistono solo per la durata di una sessione (o facoltativamente una transazione). Come le tabelle non registrate, vengono archiviate nell'archiviazione locale di calcolo e limitate dallo spazio su disco locale.
Log di PostgreSQL
L'accesso ai log di Postgres non è supportato.
Raccolta di statistiche
Le statistiche raccolte dal sistema statistiche cumulativo Postgres non vengono salvate quando un calcolo (in cui viene eseguito Postgres) viene ridimensionato a zero. Per evitare di perdere statistiche, è possibile disabilitare la funzionalità scale-to-zero. Tuttavia, la disabilitazione della scalabilità su zero significa anche che il calcolo verrà eseguito 24/7.
Impostazioni dei parametri postgres
Come servizio Postgres gestito, molti parametri di database vengono impostati in base alle dimensioni di calcolo. Vedere tutte le impostazioni dei parametri del database usando:
SHOW ALL;
È possibile configurare i parametri con un user contesto a livello di sessione, database o ruolo. Non è possibile configurare i parametri a livello di istanza.
Mostra i parametri che possono essere impostati a livello di sessione, database o ruolo.
SELECT name FROM pg_settings WHERE context = 'user';Impostare un parametro per la sessione.
SET maintenance_work_mem='1 GB';Impostare un parametro per tutte le sessioni connesse a un database.
ALTER DATABASE lakebase SET maintenance_work_mem='1 GB';Impostare un parametro per tutte le sessioni di un determinato utente.
ALTER USER "john@company.com" SET maintenance_work_mem='1 GB';
Codifica e regole di confronto del database
Codifica del database
Per impostazione predefinita, vengono usate le regole di confronto C.UTF-8. C.UTF-8 supporta l'intera gamma di caratteri con codifica UTF-8.
È supportata anche la codifica UTF8 (codifica Unicode a 8 bit a larghezza variabile).
Per visualizzare la codifica e le regole di confronto per il database, eseguire la query seguente:
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';
Annotazioni
In Postgres non è possibile modificare la codifica o le regole di confronto di un database dopo la creazione.
Collationi
Una collazione è un oggetto schema SQL che mappa un nome SQL alle impostazioni locali fornite dalle librerie installate nel sistema operativo.
Per impostazione predefinita, Lakebase usa la C.UTF-8 collazione. Un altro provider supportato da Lakebase è icu, che usa la libreria ICU esterna.
Lakebase offre una serie completa di locali ICU predefiniti nel caso in cui siano necessari un ordinamento o conversioni di maiuscole e minuscole specifiche per locale.
- Visualizzare tutte le impostazioni locali predefinite:
SELECT * FROM pg_collation;
- Creare un database con impostazioni locali predefinite
icu:
CREATE DATABASE my_arabic_db
LOCALE_PROVIDER icu
icu_locale 'ar-x-icu'
template template0;
- Specificare le impostazioni locali per singole colonne:
CREATE TABLE my_ru_table (
id serial PRIMARY KEY,
russian_text_column text COLLATE "ru-x-icu",
description text
);
Limitazioni delle funzionalità
Ruoli e autorizzazioni
- Non è possibile accedere al sistema operativo host.
- Non è possibile connettersi usando Postgres
superuser.- Tutte le funzionalità che richiedono
superuserprivilegi o accesso diretto al file system locale non sono consentite. - Prende il posto del ruolo Postgres
databricks_superusersuperuser. Per informazioni sui privilegi associati a questo ruolo, vedere Gestire i ruoli.
- Tutte le funzionalità che richiedono
Replica
La replica dei dati da o verso un database Lakebase tramite la replica logica postgres nativa non è ancora disponibile.
Tablespaces
Lakebase non supporta gli spazi di tabella Postgres. Il tentativo di creare uno spazio tabella con il CREATE TABLESPACE comando genera un errore. Ciò è dovuto all'architettura cloud gestita di Lakebase, che non consente l'accesso diretto al file system per i percorsi di archiviazione personalizzati.
Se sono presenti applicazioni o script esistenti che usano spazi di tabella per organizzare oggetti di database in dispositivi di archiviazione diversi, è necessario rimuovere o modificare questi riferimenti durante la migrazione a Lakebase.