Come ottenere una dimensione del tavolo da spostamento verso il rosso

Come ottenere una dimensione del tavolo da spostamento verso il rosso
Se sei appassionato di lavorare con le applicazioni di big data e interessato all'analisi dei dati o se sei uno sviluppatore di database esperto, allora devi avere un'idea su Redshift in quanto è uno dei migliori strumenti per l'analisi dei dati e il data warehousing. Amazon Redshift è un servizio di data warehousing fornito dalla più grande piattaforma di servizi cloud Amazon Web Services. Può fornire una grande quantità di potenza di calcolo, quindi non devi mai preoccuparti di quanto sia grande il tuo set di dati. Redshift svolgerà il lavoro con successo e per meno possibile.

Quando lavoriamo con o sviluppando applicazioni che coinvolgono database, abbiamo sempre una quantità limitata di memoria e proviamo a utilizzare la minima quantità di spazio su disco. Sebbene sappiamo che non esiste una limitazione della memoria sui servizi cloud, dobbiamo ancora pagare la quantità di spazio che consumiamo. Quindi, hai mai pensato di controllare quanto disco occupano le tabelle del database? In caso contrario, non devi preoccuparti perché sei nel posto giusto.

In questo articolo, impareremo come ottenere le dimensioni del tavolo in Amazon Redshift.

Come lo facciamo?

Quando un nuovo database viene creato in Redshift, crea automaticamente alcune tabelle e viste sullo sfondo in cui vengono registrate tutte le informazioni necessarie sul database. Questi includono visualizzazioni e tronchi STV, SVCS, SVL e SVV Views. Sebbene ci siano un sacco di cose e informazioni in essi che sono fuori portata per questo articolo, qui esploreremo un po 'sulle visualizzazioni SVV.

Le viste SVV contengono le viste del sistema che hanno riferimento alle tabelle STV. C'è un tavolo chiamato Svv_table_info dove il redshift memorizza la dimensione del tavolo. È possibile interrogare i dati da queste tabelle proprio come le normali tabelle di database. Ricorda solo che svv_table_info restituirà dati informativi solo per le tabelle non vuote.

Autorizzazioni superutenti

Come sapete, le tabelle e le viste del sistema di database contengono informazioni molto critiche che devono essere mantenute private, quindi è per questo. Solo i superuseri possono accedere a queste informazioni. Prima di ottenere le dimensioni del tavolo da questo, è necessario ottenere le autorizzazioni e i diritti del superutente o dell'amministratore. Per creare un superutente nel tuo database RedShift, è semplicemente necessario utilizzare la parola chiave Crea utente quando si crea un nuovo utente.

CREARE UN UTENTE CreateUser Password "password utente";

Quindi, hai creato correttamente un superutente nel tuo database

Dimensione del tavolo da spostamento verso il rosso

Supponiamo che il tuo team leader ti abbia assegnato un compito per esaminare le dimensioni di tutte le tabelle di database in Amazon Redshift. Per svolgere questo lavoro, utilizzerai la seguente domanda.

Seleziona "Tabella", Dimensione da SVV_TABLE_INFO;

Quindi, dobbiamo interrogare due colonne dalla tabella denominata svv_table_info. La colonna denominata tavolo contiene i nomi di tutte le tabelle presenti in quello schema del database e la colonna denominata misurare memorizza le dimensioni di ciascuna tabella del database in MBS.

Proviamo questa query sul redshift sul database di esempio fornito con Redshift. Qui, abbiamo uno schema chiamato tickit e diverse tabelle con una grande quantità di dati. Come mostrato nella seguente screenshot, abbiamo sette tabelle qui e la dimensione di ogni tabella in MBS è menzionata di fronte a ognuna:

Altre informazioni che puoi ottenere riguardo alle dimensioni della tabella da svv_table_info può essere il numero totale di righe in una tabella, che puoi ottenere dal tbl_rows colonna e la percentuale di memoria totale consumata da ciascuna tabella del database dal pct_used colonna.

In questo modo, puoi visualizzare tutte le colonne e il loro spazio occupato nel tuo database.

Modifica i nomi delle colonne per la presentazione

Per rappresentare i dati in modo più sofisticato, possiamo anche rinominare le colonne di svv_table_info come vogliamo. Vedrai come farlo nel seguente esempio:

Seleziona "Table" come table_name,
dimensione come size_in_mbs,
tbl_rows come no_of_rows
da svv_table_info

Qui, ogni colonna è rappresentata con un nome diverso dal suo nome originale.

In questo modo, puoi rendere le cose più comprensibili per qualcuno con meno conoscenza ed esperienza con i database.

Trova tabelle più grandi della dimensione specificata

Se stai lavorando in una grande azienda IT e ti viene assegnato un lavoro per scoprire quante tabelle nel tuo database sono più grandi di 3000 MBS. Per questo, devi scrivere la seguente domanda:

Seleziona "Tabella", dimensione
da svv_table_info
dove size> 3000

Puoi vedere qui che abbiamo messo un più grande di condizione sul misurare colonna.

Si può vedere che abbiamo appena ottenuto quelle colonne nell'output che erano più grandi del nostro valore limite impostato. Allo stesso modo, è possibile generare molte altre domande applicando condizioni su diverse colonne della tabella svv_table_info.

Conclusione

Quindi qui, hai visto come trovare la dimensione della tabella e il numero di righe in una tabella in Amazon Redshift. È utile quando si desidera determinare l'onere nel tuo database e fornirà una stima se si sta esaurendo la memoria, lo spazio del disco o la potenza di calcolo. Oltre alla dimensione della tabella, sono disponibili altre informazioni che possono aiutarti a progettare un database più efficiente e produttivo per l'applicazione.