PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

tipo di prestazione varchar(1) o smallint per memorizzare lo stato Postgres

Secondo me stai combattendo la battaglia sbagliata. Sei preoccupato per l'impatto sulle prestazioni della memorizzazione di un numero intero invece di un singolo campo di caratteri, che secondo me è un pensiero miope. L'impatto effettivo sulle prestazioni di un numero intero rispetto a un singolo carattere è banale e dubito che questo possa essere misurato in modo significativo. Nella mia esperienza è più importante ridurre il carico cognitivo sugli sviluppatori e sugli utenti del sistema, quindi è meglio utilizzare campi di caratteri sufficientemente lunghi da contenere una descrizione ragionevole dello stato anziché valori numerici o abbreviazioni di caratteri singoli. Non dover ricordare cosa significano 1, 2, 'A' o 'X' è molto utile. Al posto di questi valori abbreviati suggerisco di utilizzare valori di facile comprensione come 'PRONTO', 'ATTIVO', 'ELABORATO', 'ANNULLATO', ecc.

Quanto alla seconda parte della domanda, non proprio. Potrebbe esserci un po' di tempo per spostare la stringa più lunga, ma è banale a meno che tu non stia parlando di milioni di valori.

In bocca al lupo.