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à.
Creazione di un filtro dati
È possibile creare uno o più filtri di dati per ogni tabella del Data Catalog.
Per creare un filtro dati per una tabella Data Catalog (console)
-
Aprire la console Lake Formation all'indirizzo https://console.aws.amazon.com/lakeformation/
. Accedi come amministratore del data lake, proprietario della tabella di destinazione o principale che dispone dell'autorizzazione Lake Formation sulla tabella di destinazione.
-
Nel riquadro di navigazione, in Catalogo dati, scegli Filtri dati.
-
Nella pagina Filtri dati, scegli Crea nuovo filtro.
-
Nella finestra di dialogo Crea filtro dati, inserisci le seguenti informazioni:
-
Nome del filtro dati
-
Database di destinazione: specifica il database che contiene la tabella.
-
Tabella di destinazione
-
Accesso a livello di colonna: lascia questa impostazione su Accesso a tutte le colonne per specificare solo il filtraggio delle righe. Scegliete Includi colonne o Escludi colonne per specificare il filtraggio di colonne o celle, quindi specificate le colonne da includere o escludere.
Colonne nidificate: se applichi il filtro a una tabella che contiene colonne nidificate, puoi specificare in modo esplicito le sottostrutture delle colonne struct nidificate all'interno di un filtro dati.
Quando concedi l'autorizzazione SELECT a un principale su questo filer, il principale che esegue la seguente query vedrà solo i dati relativi e non.
customer.customerName
customer.customerId
SELECT "customer" FROM "example_db"."example_table";
Quando concedi le autorizzazioni alla
customer
colonna, il principale riceve l'accesso alla colonna e ai campi annidati sotto la colonna (customerName
e).customerID
-
Espressione di filtro di riga: immettere un'espressione di filtro per specificare il filtraggio di righe o celle. Per i tipi di dati e gli operatori supportati, vedereSupporto PartiQL nelle espressioni di filtro di riga. Scegli Accesso a tutte le righe per concedere l'accesso a tutti.
È possibile includere strutture di colonne parziali provenienti da colonne nidificate in un'espressione di filtro di riga per filtrare le righe che contengono un valore specifico.
Quando a un'entità vengono concesse le autorizzazioni per una tabella con un'espressione
Select * from example_nestedtable where customer.customerName <>'John'
di filtro di riga e l'accesso a livello di colonna è impostato su Accesso a tutte le colonne, i risultati della query mostrano solo le righe il cui risultato è true.customerName <>'John'
La schermata seguente mostra un filtro dati che implementa il filtraggio delle celle. Nelle interrogazioni sulla
orders
tabella, nega l'accesso allacustomer_name
colonna e mostra solo le righe che contengono «pharma» nella colonna.product_type
-
-
Scegli Create Filter (Crea filtro).
Per creare un filtro dati con politiche di filtro cellulare su un campo annidato
Questa sezione utilizza lo schema di esempio seguente per mostrare come creare un filtro di celle di dati:
[ { name: "customer", type: "struct<customerId:string,customerName:string>" }, { name: "customerApplication", type: "struct<appId:string>" }, { name: "product", type: "struct<offer:struct<prodId:string,listingId:string>,type:string>" }, { name: "purchaseId", type: "string" }, ]
-
Nella pagina Crea un filtro dati, inserisci un nome per il filtro dati.
-
Successivamente, utilizza il menu a discesa per scegliere il nome del database e il nome della tabella.
-
Nella sezione Accesso a livello di colonna, scegli Colonne incluse e seleziona una colonna nidificata ().
customer.customerName
-
Nella sezione Accesso a livello di riga, scegli l'opzione Accesso a tutte le righe.
-
Scegli Create Filter (Crea filtro).
Quando concedi
SELECT
l'autorizzazione per questo filtro, il principale ottiene l'accesso a tutte le righe dellacustomerName
colonna. -
Successivamente, definisci un altro filtro dati per lo stesso database/tabella.
-
Nella sezione Accesso a livello di colonna, scegli Colonne incluse e seleziona un'altra colonna nidificata ().
customer.customerid
-
Nella sezione Accesso a livello di riga, scegliete Filtra righe e immettete un'espressione di filtro di riga ().
customer.customerid <> 5
-
Scegli Create Filter (Crea filtro).
Quando concedete
SELECT
l'autorizzazione per questo filtro, il principale riceve l'accesso a tutte le righe e aicustomerId
campi ad eccezione della cella in cui il valore è 5 nellacustomerId
colonna.customerName