Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Dati semistrutturati in Amazon Redshift

Modalità Focus
Dati semistrutturati in Amazon Redshift - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Usando il supporto di dati semistrutturati in Amazon Redshift, è possibile importare ed archiviare dati semistrutturati nei data warehouse di Amazon Redshift. Utilizzando il tipo di dati SUPER e il linguaggio PartiQL, Amazon Redshift espande la capacità di data warehouse per integrarsi con le origini dati SQL e NoSQL. In questo modo, Amazon Redshift consente un'analisi efficiente sui dati archiviati relazionali e semistrutturati come JSON.

Amazon Redshift offre due forme di supporto per i dati semistrutturati: il tipo di dati SUPER e Amazon Redshift Spectrum.

Utilizzare il tipo di dati SUPER se è necessario inserire o aggiornare piccoli batch di dati JSON con bassa latenza. Inoltre, utilizzare SUPER quando la query richiede coerenza elevata, prestazioni di query prevedibili, supporto di query complesso e facilità d'uso con schemi in evoluzione e dati senza schemi.

Al contrario, usa Amazon Redshift Spectrum con un formato di file aperto se la tua query sui dati richiede l'integrazione con AWS altri servizi e con dati archiviati principalmente in Amazon S3 per scopi di archiviazione.

Casi d'uso per il tipo di dati SUPER

Il supporto dei dati semistrutturati con il tipo di dati SUPER in Amazon Redshift offre prestazioni superiori, flessibilità e facilità d'uso. I seguenti casi d'uso dimostrano l'utilizzo del supporto di dati semistrutturati con SUPER.

Inserimento rapido e flessibile dei dati JSON: Amazon Redshift supporta transazioni rapide in grado di analizzare JSON e memorizzarlo come valore SUPER. Le transazioni di inserimento sono fino a cinque volte più veloci rispetto all'esecuzione degli stessi inserimenti in tabelle che hanno ridotto gli attributi di SUPER in colonne convenzionali. Ad esempio, si supponga che il JSON in arrivo sia nella forma {“a”:.., “b”:.., “c”“..., ...}. È possibile accelerare le prestazioni dell'inserimento molte volte memorizzando il JSON in entrata in una tabella TJ con una singola colonna SUPER S invece di memorizzarlo in una tabella TR convenzionale con colonne "a', 'b', "c' e così via. Quando ci sono centinaia di attributi nel JSON, il vantaggio in termini di prestazioni del tipo di dati SUPER diventa sostanziale.

Inoltre, il tipo di dati SUPER non ha bisogno di uno schema regolare. Non è necessario analizzare e ripulire il JSON in arrivo prima di archiviarlo. Ad esempio, si supponga che un JSON in entrata abbia un attributo stringa "c" e altri abbiano un attributo intero "c" senza il tipo di dati SUPER. In questo caso, è necessario separare le colonne c_string e c_int o pulire i dati. Al contrario, con il tipo di dati SUPER, tutti i dati JSON vengono archiviati durante l'importazione senza alcuna perdita di informazioni. Successivamente, è possibile utilizzare l'estensione PartiQL di SQL per analizzare le informazioni.

Query flessibili per il rilevamento: dopo aver archiviato i dati semistrutturati (ad esempio JSON) in un valore di dati SUPER, è possibile eseguire una query sui dati senza imporre uno schema. È possibile utilizzare la tipizzazione dinamica PartiQL e la sintassi permissiva per eseguire le query e scoprire i dati profondamente annidati necessari, senza la necessità di imporre uno schema prima della query.

Query flessibili per operazioni di estrazione, caricamento, trasformazione (ETL) in viste materializzate convenzionali: dopo aver archiviato i dati senza schema e semistrutturati in SUPER, è possibile utilizzare le viste materializzate PartiQL per analizzare i dati e suddividerli in viste materializzate.

Le viste materializzate con i dati ridotti sono un buon esempio di vantaggi in termini di prestazioni e usabilità per i casi di analisi classici. Quando si esegue un'analisi sui dati ridotti, l'organizzazione a colonne delle viste materializzate di Amazon Redshift offre prestazioni migliori. Inoltre, gli utenti e gli strumenti di Business Intelligence (BI) che richiedono uno schema convenzionale per i dati importati possono utilizzare viste (materializzate o virtuali) come presentazione convenzionale dello schema dei dati.

Dopo che le viste materializzate PartiQL hanno estratto i dati trovati in JSON o SUPER in viste materializzate a colonne convenzionali, è possibile eseguire una query sulle viste materializzate. Per ulteriori informazioni sul funzionamento del tipo di dati SUPER con le viste materializzate, consultare Tipo di dati SUPER e viste materializzate.

È possibile applicare le politiche di mascheramento dei dati dinamici ai valori scalar sui percorsi delle colonne di tipo SUPER. Per ulteriori informazioni sul mascheramento dei dati dinamici, consulta Mascheramento dinamico dei dati. Per informazioni su come usare il mascheramento dei dati dinamici con il tipo di dati SUPER, consulta Utilizzo del mascheramento dei dati dinamici con percorsi di tipo di dati SUPER (anteprima).

Per informazioni sull'utilizzo del tipo di dati SUPER, consultare Tipo SUPER.

Per esempi di utilizzo del tipo di dati SUPER, consulta le sotto sezioni di questo argomento che iniziano con: Set di dati di esempio SUPER.

Concetti per l'utilizzo del tipo di dati SUPER

Di seguito, sono riportati alcuni concetti sul tipo di dati SUPER di Amazon Redshift.

Capire qual è il tipo di dati SUPER in Amazon Redshift: il tipo di dati SUPER è un tipo di dati Amazon Redshift che consente l'archiviazione di array e strutture senza schemi che contengono dati scalari Amazon Redshift ed eventualmente array e strutture nidificate. Il tipo di dati SUPER può memorizzare in modo nativo diversi formati di dati semistrutturati, come JSON o dati provenienti da fonti orientate ai documenti. È possibile aggiungere una nuova colonna SUPER per memorizzare dati semistrutturati e scrivere query che accedono alla colonna SUPER, insieme alle solite colonne scalari. Per ulteriori informazioni sui tipi di fati SUPER, consultare Tipo SUPER.

Importare JSON senza schema in SUPER: con il il tipo di dati SUPER semistrutturati flessibile, Amazon Redshift può ricevere e importare JSON senza schema in un valore SUPER. Ad esempio, Amazon Redshift può inserire il valore JSON [10.5, "first"] in un valore SUPER [10.5, 'first'], ovvero una matrice contenente il decimale Amazon Redshift 10.5 e varchar 'first'. Amazon Redshift può importare il JSON in un valore SUPER utilizzando il comando COPY o la funzione di analisi JSON, come json_parse('[10.5, "first"]'). Sia COPY che il JSON di importazione json_parse utilizzano la sintassi di analisi rigorosa per impostazione predefinita. È inoltre possibile costruire valori SUPER che includono array e strutture utilizzando i dati stessi del database.

La colonna SUPER non richiede modifiche allo schema durante l'importazione delle strutture irregolari di JSON senza schema. Ad esempio, durante l'analisi di un click-stream, inizialmente nella colonna SUPER vengono archiviati strutture di "click" con gli attributi "IP" e "time". È possibile aggiungere un attributo "customer id" senza modificare lo schema al fine di importare tali modifiche.

Il formato nativo utilizzato per il tipo di dati SUPER è un formato binario che richiede meno spazio rispetto al valore JSON nella sua forma testuale. Ciò consente un'importazione più veloce e l'elaborazione in runtime dei valori SUPER sulla query.

Interroga i dati SUPER con PartiQL — PartiQL è un'estensione retrocompatibile di SQL-92 attualmente utilizzata da molti servizi. AWS Con l'uso di PartiQL, i costrutti SQL familiari combinano perfettamente l'accesso sia ai classici dati SQL tabulari che ai dati semistrutturati di SUPER. È possibile eseguire la navigazione di oggetti e array e annullare la nidificazione degli array. PartiQL estende il linguaggio SQL standard per esprimere dichiarativamente ed elaborare dati nidificati e multivalore.

PartiQL è un'estensione di SQL in cui i dati nidificati e senza schema delle colonne SUPER sono elementi prioritari. PartiQL non richiede che tutte le espressioni di query vengano controllate dal tipo durante il tempo di compilazione della query. Questo approccio abilita espressioni di query che contengono il tipo di dati SUPER durante l'esecuzione della query quando si accede ai tipi effettivi dei dati all'interno delle colonne SUPER. Inoltre, PartiQL opera in una modalità permissiva in cui le incongruenze di tipo non causano errori ma restituiscono null. La combinazione del senza schema e dell'elaborazione di query permissiva rende PartiQL ideale per applicazioni di estrazione, caricamento, trasferimento (ELT) in cui la query SQL valuta i dati JSON che vengono importati nelle colonne SUPER.

Integrazione con Redshift Spectrum: Amazon Redshift supporta più aspetti di PartiQL durante l'esecuzione di query Redshift Spectrum su JSON, Parquet e altri formati con dati nidificati. Redshift Spectrum supporta solo i dati nidificati con schemi. Ad esempio, con Redshift Spectrum è possibile dichiarare che i dati JSON hanno un attributo nested_schemaful_esempio in uno schema ARRAY<STRUCT<a:INTEGER, b:DECIMAL(5,2)>>. Lo schema di questo attributo determina che i dati contengono sempre un array che a sua volta contiene una struttura con numero intero a e decimale b. Se i dati vengono modificati in modo da includere più attributi, viene modificato anche il tipo. Al contrario, il tipo di dati SUPER non richiede alcuno schema. È possibile memorizzare array con elementi della struttura che hanno attributi o tipi diversi. Inoltre, alcuni valori possono essere archiviati all'esterno degli array.

Per informazioni sulle funzioni che supportano il tipo di dati SUPER, consultare:

Considerazioni sui dati SUPER

Quando si utilizzano i dati SUPER, tenere in considerazione quanto riportato di seguito:

  • Utilizzare il driver JDBC versione 1.2.50, il driver ODBC versione 1.4.17 o o successiva e il driver Amazon Redshift Python versione 2.0.872 o successiva.

    Per informazioni sui driver JDBC, consultare Configurazione di una connessione JDBC.

    Per informazioni sui driver ODBC, consultare Configurazione di una connessione ODBC.

  • Esempi di schema utilizzati nei seguenti argomenti sono disponibili in Set di dati di esempio SUPER.

  • Tutti gli esempi di codice SQL utilizzati negli argomenti seguenti sono inclusi con lo stesso prefisso S3 per il download. Questi includono le istruzioni DDL (Data Definition Language) e COPY e alcune query modificate TPC-H che funzionano con SUPER.

    Per visualizzare o scaricare i file SQL, completare una delle operazioni seguenti:

    • Scaricare il file SQL del tutorial SUPER e il file TPC-H.

    • Utilizzando la CLI di Amazon S3, emettere il comando riportato di seguito. È possibile utilizzare il proprio percorso di destinazione.

      aws s3 cp s3://redshift-downloads/semistructured/tutorialscripts/semistructured-tutorial.sql /target/path aws s3 cp s3://redshift-downloads/semistructured/tutorialscripts/super_tpch_queries.sql /target/path

Per ulteriori informazioni sulle configurazioni SUPER, consultare Configurazioni di SUPER.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.