
Redshift Data Types

Nel mondo dell’archiviazione e dell’analisi dei dati, Amazon Redshift è emerso come una soluzione potente e scalabile. Come database orientato alle colonne, Redshift offre una gamma di tipi di dati per archiviare e elaborare efficacemente grandi volumi di dati strutturati. Comprendere i tipi di dati di Redshift è cruciale per ottimizzare le prestazioni delle query e garantire l’integrità dei dati. In questo articolo, esploreremo le basi dei tipi di dati di Redshift, li confronteremo con campioni SQL, e discuteremo il concetto di mascheramento di questi tipi di dati.
Che Cos’è Redshift?
Amazon Redshift è un servizio di data warehousing completamente gestito e petabyte-scale fornito da Amazon Web Services (AWS). Permette alle aziende di archiviare e analizzare grandi quantità di dati utilizzando strumenti basati su SQL e applicazioni BI standard. L’architettura a cluster, composta da nodi, distribuisce i dati e l’elaborazione su più macchine, garantendo alte prestazioni e scalabilità.
Tipi di Dati in Redshift
Redshift supporta una varietà di tipi di dati per accogliere diversi tipi di dati. È possibile categorizzare questi tipi in diversi gruppi.
1. Tipi Numerici:
- SMALLINT: numero intero a 2 byte con segno
- INTEGER: numero intero a 4 byte con segno
- BIGINT: numero intero a 8 byte con segno
- DECIMAL: numero a punto fisso con precisione specificata dall’utente
- REAL: numero in virgola mobile a singola precisione
- DOUBLE PRECISION: numero in virgola mobile a doppia precisione
2. Tipi di Caratteri:
- CHAR: stringa di caratteri a lunghezza fissa
- VARCHAR: stringa di caratteri a lunghezza variabile
- NVARCHAR: stringa di caratteri Unicode a lunghezza variabile
3. Tipi di Data e Ora:
- DATE: data di calendario (anno, mese, giorno)
- TIMESTAMP: data e ora (senza fuso orario)
- TIMESTAMPTZ: data e ora (con fuso orario)
4. Tipo Booleano:
- BOOL: Booleano logico (vero/falso)
5. Altri Tipi:
- GEOMETRY: tipo di dati spaziali per rappresentare oggetti geometrici
- HLLSKETCH: schizzo HyperLogLog per conteggio approssimativo distinto
- SUPER: tipo di dati semi-strutturati per archiviare dati simili a JSON
Tipi di Dati in Redshift vs. Campioni SQL
Confrontiamo alcuni tipi di dati di Redshift con i loro equivalenti SQL utilizzando campioni di codice.
Esempio 1: Creare una tabella con diversi tipi di dati
CREATE TABLE employees ( id INTEGER, name VARCHAR(100), age SMALLINT, salary DECIMAL(10, 2), hire_date DATE );
In questo esempio, creiamo una tabella denominata “employees” con colonne di diversi tipi di dati. La colonna “id” è di tipo INTEGER, “name” è VARCHAR(100), “age” è SMALLINT, “salary” è DECIMAL(10, 2), e “hire_date” è DATE.
Esempio 2: Inserire dati nella tabella
INSERT INTO employees VALUES (1, 'John Doe', 35, 5000.00, '2022-01-01'), (2, 'Jane Smith', 28, 4500.50, '2023-03-15');
Qui, inseriamo due righe di dati nella tabella “employees”. I valori corrispondono ai tipi di dati definiti per ogni colonna.
Mascheramento dei Tipi di Dati in Redshift
Il mascheramento dei dati è una tecnica utilizzata per proteggere le informazioni sensibili sostituendole con dati fittizi ma realistici. Redshift supporta varie funzioni di mascheramento per offuscare i dati in base a regole o schemi specifici.
Esempio 3: Mascheramento dei dati sensibili utilizzando le funzioni di mascheramento di Redshift
SELECT id, name, age, firstname_mask(name) AS masked_name, mask_number(salary, 'N', 2) AS masked_salary, mask_date(hire_date, 'D') AS masked_hire_date FROM employees;
In questo esempio, recuperiamo i dati dalla tabella “employees” applicando funzioni di mascheramento alle colonne sensibili. La funzione firstname_mask maschera il nome nella colonna “name”. La funzione mask_number maschera la colonna “salary” sostituendo le ultime 2 cifre con ‘N’. La funzione mask_date maschera la colonna “hire_date” sostituendo la componente giorno con ‘D’.
L’output apparirà simile a questo:
id | name | age | masked_name | masked_salary | masked_hire_date ---+-----------+-----+-------------+---------------+------------------ 1 | John Doe | 35 | J*** D** | 5000.NN | 2022-01-DD 2 | Jane Smith| 28 | J*** S**** | 4500.NN | 2023-03-DD
Come può vedere, le informazioni sensibili nelle colonne “name”, “salary”, e “hire_date” sono mascherate mantenendo il formato e il tipo di dati.
Conclusione
Comprendere i tipi di dati di Redshift è essenziale per una gestione efficace dei dati e l’ottimizzazione delle query in Amazon Redshift. Utilizzando i tipi di dati appropriati e le tecniche di mascheramento, può garantire l’integrità dei dati, proteggere le informazioni sensibili, e ottimizzare le prestazioni delle query. Il supporto di Redshift per una vasta gamma di tipi di dati e funzioni di mascheramento lo rende una soluzione di data warehousing versatile e sicura.
DataSunrise offre strumenti eccezionali e flessibili per la sicurezza, le regole di audit, il mascheramento, e la conformità in Redshift e in altri database. Le nostre soluzioni forniscono una protezione completa dei dati e aiutano le organizzazioni a soddisfare i requisiti normativi. La invitiamo a visitare il team di DataSunrise per una demo online per esplorare come i nostri strumenti possono migliorare i Suoi sforzi per la sicurezza e la conformità dei dati.