Amazon Redshift non supporterà più l'uso delle UDF Python dopo il 30 giugno 2026. Inizieremo ad applicarlo per fasi. Per ulteriori informazioni sulla fine del ciclo di vita e sulle opzioni di migrazione di Python, consulta il post del
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à.
Lavorare con AWS Data Exchange datashares come produttore
Con Amazon Redshift, puoi condividere prodotti di dati in tempo reale con AWS Data Exchange un produttore creando e gestendo condivisioni di dati.
Se sei un amministratore di produzione, segui questi passaggi per gestire le condivisioni di AWS Data Exchange dati sulla console Amazon Redshift:
-
Crea condivisioni di dati nel tuo cluster per condividere i dati AWS Data Exchange e concedere l'accesso alle condivisioni di dati. AWS Data Exchange
Le unità di condivisione dati possono essere create dall'utente con privilegi avanzati e dai proprietari di database del cluster. Ogni unità di condivisione dati è associata a un database durante la creazione. Solo gli oggetti di quel database possono essere condivisi in quella unità di condivisione dati. Sullo stesso database possono essere create più unità di condivisione dati con la stessa granularità di oggetti o con una granularità differente. Non vi è alcun limite sul numero di unità di condivisione dati che un cluster può creare.
Per creare le unità di condivisione dati è possibile utilizzare anche la console Amazon Redshift. Per ulteriori informazioni, consulta Creare un’unità di condivisione dati.
Utilizzare l'opzione MANAGEDBY ADX per concedere implicitamente l'accesso alla condivisione di dati AWS Data Exchange durante l'esecuzione dell'istruzione CREATE DATASHARE. Ciò AWS Data Exchange indica che gestisce questa condivisione di dati. Puoi utilizzare l'opzione MANAGEDBY ADX solo quando crei una nuova unità di condivisione dati. Non è possibile utilizzare l'istruzione ALTER DATASHARE per modificare un'unità di condivisione dati esistente per aggiungere l'opzione MANAGEDBY ADX. Una volta creato una unità di condivisione dati con l'opzione MANAGEDBY ADX, solo AWS Data Exchange può accedere e gestire l'unità di condivisione dati.
CREATE DATASHARE salesshare [[SET] MANAGEDBY [=] {ADX} ]; -
Aggiungere oggetti alle unità di condivisione dati. L'amministratore del produttore continua a gestire gli oggetti di condivisione dati disponibili in una condivisione dati. AWS Data Exchange
Per aggiungere oggetti a una unità di condivisione dati, aggiungere lo schema prima di aggiungere gli oggetti. Quando si aggiunge uno schema, Amazon Redshift non aggiunge tutti gli oggetti. È necessario aggiungerli esplicitamente. Per ulteriori informazioni, consulta ALTER DATASHARE.
ALTER DATASHARE salesshare ADD SCHEMA PUBLIC; ALTER DATASHARE salesshare ADD TABLE public.tickit_sales_redshift; ALTER DATASHARE salesshare ADD ALL TABLES IN SCHEMA PUBLIC;A una unità di condivisione dati è possibile aggiungere anche le viste.
CREATE VIEW public.sales_data_summary_view AS SELECT * FROM public.tickit_sales_redshift; ALTER DATASHARE salesshare ADD TABLE public.sales_data_summary_view;Utilizzare ALTER DATASHARE per condividere schemi e tabelle, viste e funzioni in un determinato schema. Gli utenti con privilegi avanzati, i proprietari di unità di condivisione dati o gli utenti che dispongono dell'autorizzazione ALTER o ALL sull'unità di condivisione dati possono modificarla in modo da aggiungere o rimuovere oggetti. Gli utenti devono disporre delle autorizzazioni per aggiungere o rimuovere oggetti dall'unità di condivisione dati. Gli utenti devono inoltre essere i proprietari degli oggetti o disporre delle autorizzazioni SELECT, USAGE o ALL sugli oggetti.
Utilizzare la clausola INCLUDENEW per aggiungere nuove tabelle, viste o funzioni definite dall'utente (FDU) SQL future create in uno scherma specificato nell'unità di condivisione dati. Solo gli utenti con privilegi avanzati possono modificare questa proprietà per ogni coppia unità di condivisione dati-schema.
ALTER DATASHARE salesshare ADD SCHEMA PUBLIC; ALTER DATASHARE salesshare SET INCLUDENEW = TRUE FOR SCHEMA PUBLIC;Per aggiungere o rimuovere oggetti dalle unità di condivisione dati è possibile utilizzare la console Amazon Redshift. Per ulteriori informazioni, consultare Aggiungere oggetti dell’unità di condivisione dati alle unità di condivisione dati, Rimozione di oggetti di unità di condivisione dati dalle unità di condivisione dati e Modifica AWS Data Exchange condivisioni di dati.
-
Per autorizzare l'accesso alle condivisioni di dati per AWS Data Exchange, effettuate una delle seguenti operazioni:
-
Autorizza esplicitamente l'accesso alla condivisione dati utilizzando la parola chiave nell'API AWS Data Exchange .
ADXaws redshift authorize-data-shareCiò consente di AWS Data Exchange riconoscere la condivisione dei dati nell'account di servizio e gestire l'associazione dei consumatori alla condivisione dei dati.aws redshift authorize-data-share --data-share-arn arn:aws:redshift:us-east-1:{PRODUCER_ACCOUNT}:datashare:{PRODUCER_CLUSTER_NAMESPACE}/salesshare --consumer-identifier ADXÈ possibile utilizzare una chiave condizionale
ConsumerIdentifierperAuthorizeDataSharee APIDeauthorizeDataShareper consentire o negare esplicitamente a AWS Data Exchange ad effettuare chiamate alle due API nella policy IAM. -
Utilizza la console Amazon Redshift per autorizzare o rimuovere l'autorizzazione di unità di condivisione dati AWS Data Exchange . Per ulteriori informazioni, consulta Autorizzazione o rimozione dell'autorizzazione dalle unità di condivisione dati.
-
Facoltativamente, è possibile autorizzare implicitamente l'accesso alla condivisione dati durante l'importazione della condivisione dati in un set di AWS Data Exchange dati. AWS Data Exchange
Per rimuovere l'autorizzazione all'accesso alle condivisioni di AWS Data Exchange dati, utilizza la parola chiave nell'operazione API.
ADXaws redshift deauthorize-data-shareIn questo modo, consenti a AWS Data Exchange di riconoscere l'unità nell'account del servizio e gestire la rimozione dell'associazione dall'unità.aws redshift deauthorize-data-share --data-share-arn arn:aws:redshift:us-east-1:{PRODUCER_ACCOUNT}:datashare:{PRODUCER_CLUSTER_NAMESPACE}/salesshare --consumer-identifier ADX -
-
Elencare le unità di condivisione dati create nel cluster ed esaminare il contenuto dell'unità.
Nell'esempio seguente sono riportate le informazioni di una unità di condivisione dati denominata salesshare. Per ulteriori informazioni, consulta DESC DATASHARE e SHOW DATASHARES.
DESC DATASHARE salesshare; producer_account | producer_namespace | share_type | share_name | object_type | object_name | include_new -------------------+--------------------------------------+------------+------------+-------------+--------------------------------+------------------- 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND | salesshare | table | public.tickit_users_redshift | 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND | salesshare | table | public.tickit_venue_redshift | 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND | salesshare | table | public.tickit_category_redshift| 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND | salesshare | table | public.tickit_date_redshift | 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND | salesshare | table | public.tickit_event_redshift | 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND | salesshare | table | public.tickit_listing_redshift | 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND | salesshare | table | public.tickit_sales_redshift | 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND | salesshare | schema | public | t 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00d | OUTBOUND | salesshare | view | public.sales_data_summary_view |L'esempio seguente mostra le unità di condivisione dati in uscita in un cluster producer.
SHOW DATASHARES LIKE 'sales%';L'output è simile al seguente.
share_name | share_owner | source_database | consumer_database | share_type | createdate | is_publicaccessible | share_acl | producer_account | producer_namespace -----------+--------------+-----------------+-------------------+------------+---------------------+----------------------+-----------+------------------+--------------------------------------- salesshare | 100 | dev | | OUTBOUND | 2020-12-09 02:27:08 | True | | 123456789012 | 13b8833d-17c6-4f16-8fe4-1a018f5ed00dPer ulteriori informazioni, consulta DESC DATASHARE e SHOW DATASHARES.
È possibile utilizzare anche SVV_DATASHARES, SVV_DATASHARE_CONSUMERS e SVV_DATASHARE_OBJECTS per visualizzare le unità di condivisione dati, gli oggetti all'interno dell'unità di condivisione dati e i consumer dell'unità di condivisione dati.
-
Eliminare le unità di condivisione dati. Ti consigliamo di non eliminare una condivisione di dati condivisa con altri Account AWS utilizzando l' AWS Data Exchange istruzione DROP DATASHARE. Tali account perderanno l'accesso all'unità di condivisione dati. Questa operazione è irreversibile. Ciò potrebbe violare i termini dell'offerta del prodotto in. AWS Data Exchange Se desideri eliminare una condivisione di AWS Data Exchange dati, consulta. Note per l'utilizzo di DROP DATASHARE
Nell'esempio seguente viene rimossa una unità di condivisione dati denominata salesshare.
DROP DATASHARE salesshare; ERROR: Drop of ADX-managed datashare salesshare requires session variable datashare_break_glass_session_var to be set to value '620c871f890c49'Per consentire l'eliminazione di una condivisione dati, imposta la variabile AWS Data Exchange datashare_break_glass_session_var ed esegui nuovamente l'istruzione DROP DATASHARE. Se desideri eliminare una condivisione di dati, Note per l'utilizzo di DROP DATASHARE consulta. AWS Data Exchange
Per eliminare le unità di condivisione dati è possibile utilizzare anche la console Amazon Redshift. Per ulteriori informazioni, consulta Eliminazione in corso AWS Data Exchange condivisioni di dati create nel tuo account.
-
Utilizzare ALTER DATASHARE per rimuovere gli oggetti dalle unità di condivisione dati in qualsiasi punto dall'unità. Utilizzare REVOKE USAGE ON per revocare le autorizzazioni sull'unità di condivisione dati a su consumer. Revoca le autorizzazioni USAGE sugli oggetti all'interno di una unità di condivisione dati e disabilita immediatamente l'accesso a tutti i cluster di consumer. L'elenco delle unità di condivisione dati e delle query dei metadati, ad esempio l'elenco dei database e delle tabelle, non restituisce gli oggetti condivisi dopo la revoca dell'accesso.
ALTER DATASHARE salesshare REMOVE TABLE public.tickit_sales_redshift;Per modificare le unità di condivisione dati è possibile utilizzare anche la console Amazon Redshift. Per ulteriori informazioni, consulta Modifica AWS Data Exchange condivisioni di dati.
-
Concedi o revoca GRANT USAGE dalle condivisioni di dati. AWS Data Exchange Non puoi concedere o revocare GRANT USAGE per la condivisione dei dati. AWS Data Exchange L'esempio seguente mostra un errore quando l'autorizzazione GRANT USAGE viene concessa a un utente Account AWS per una condivisione di dati che gestisce. AWS Data Exchange
CREATE DATASHARE salesshare MANAGEDBY ADX;GRANT USAGE ON DATASHARE salesshare TO ACCOUNT '012345678910'; ERROR: Permission denied to add/remove consumer to/from datashare salesshare. Datashare consumers are managed by ADX.
Se sei un amministratore producer, segui la procedura descritta per creare e pubblicare un prodotto di un’unità di condivisione dati sulla console AWS Data Exchange :
-
Una volta creata la AWS Data Exchange datashare, il produttore crea un nuovo set di dati, importa le risorse, crea una revisione e crea e pubblica un nuovo prodotto.
Utilizzare la console Amazon Redshift per creare set di dati. Per ulteriori informazioni, consulta Creazione di set di dati su AWS Data Exchange.
Per ulteriori informazioni, consulta Fornire prodotti di dati su. AWS Data Exchange