View a markdown version of this page

Esempi di Lake Formation che utilizzano AWS CLI - AWS Esempi di codice SDK

Sono disponibili altri esempi di AWS SDK nel repository AWS Doc SDK Examples. GitHub

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à.

Esempi di Lake Formation che utilizzano AWS CLI

I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface with Lake Formation.

Le azioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.

Ogni esempio include un link al codice sorgente completo, in cui vengono fornite le istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Azioni

L’esempio di codice seguente mostra come utilizzare add-lf-tags-to-resource.

AWS CLI

Per allegare una o più risorse a una risorsa esistente LF-tags

L'add-lf-tags-to-resourceesempio seguente allega i dati LF-tag alla risorsa della tabella.

aws lakeformation add-lf-tags-to-resource \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_promotion" } }, "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "analyst" ] }] }

Output:

{ "Failures": [] }

Per ulteriori informazioni, vedere le risorse Assigning LF-Tags to Data Catalog nella AWS Lake Formation Developer Guide.

L’esempio di codice seguente mostra come utilizzare batch-grant-permissions.

AWS CLI

Come concedere in blocco le autorizzazioni sulle risorse ai principali

L’esempio batch-grant-permissions seguente concede in blocco ai principali l’accesso a risorse specifiche.

aws lakeformation batch-grant-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Entries": [{ "Id": "1", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-developer" }, "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_promotion" } }, "Permissions": [ "ALL" ], "PermissionsWithGrantOption": [ "ALL" ] }, { "Id": "2", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-developer" }, "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_customer" } }, "Permissions": [ "ALL" ], "PermissionsWithGrantOption": [ "ALL" ] }, { "Id": "3", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-business-analyst" }, "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_promotion" } }, "Permissions": [ "ALL" ], "PermissionsWithGrantOption": [ "ALL" ] }, { "Id": "4", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-developer" }, "Resource": { "DataCellsFilter": { "TableCatalogId": "123456789111", "DatabaseName": "tpc", "TableName": "dl_tpc_item", "Name": "developer_item" } }, "Permissions": [ "SELECT" ], "PermissionsWithGrantOption": [] } ] }

Output:

{ "Failures": [] }

Per ulteriori informazioni sulla concessione e la revoca dell’accesso a Lake Formation, consulta la pagina Concessione e revoca delle autorizzazioni delle risorse del catalogo dati nella Guida per gli sviluppatori di AWS .

L’esempio di codice seguente mostra come utilizzare batch-revoke-permissions.

AWS CLI

Come revocare in blocco le autorizzazioni sulle risorse ai principali

L’esempio batch-revoke-permissions seguente revoca in blocco ai principali l’accesso a risorse specifiche.

aws lakeformation batch-revoke-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Entries": [{ "Id": "1", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-developer" }, "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_promotion" } }, "Permissions": [ "ALL" ], "PermissionsWithGrantOption": [ "ALL" ] }, { "Id": "2", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-business-analyst" }, "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_promotion" } }, "Permissions": [ "ALL" ], "PermissionsWithGrantOption": [ "ALL" ] } ] }

Output:

{ "Failures": [] }

Per ulteriori informazioni sulla concessione e la revoca dell’accesso a Lake Formation, consulta la pagina Concessione e revoca delle autorizzazioni delle risorse del catalogo dati nella Guida per gli sviluppatori di AWS .

L’esempio di codice seguente mostra come utilizzare cancel-transaction.

AWS CLI

Come annullare una transazione

L’esempio cancel-transaction seguente annulla la transazione.

aws lakeformation cancel-transaction \ --transaction-id='b014d972ca8347b89825e33c5774aec4'

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare commit-transaction.

AWS CLI

Come confermare una transazione

L’esempio commit-transaction seguente conferma la transazione.

aws lakeformation commit-transaction \ --transaction-id='b014d972ca8347b89825e33c5774aec4'

Output:

{ "TransactionStatus": "committed" }

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare create-data-cells-filter.

AWS CLI

Esempio 1: come creare un filtro per le celle di dati

L’esempio create-data-cells-filter seguente crea un filtro sulle celle di dati per consentire l’accesso a determinate colonne in base alle condizioni della riga.

aws lakeformation create-data-cells-filter \ --cli-input-json file://input.json

Contenuto di input.json:

{ "TableData": { "ColumnNames": ["p_channel_details", "p_start_date_sk", "p_promo_name"], "DatabaseName": "tpc", "Name": "developer_promotion", "RowFilter": { "FilterExpression": "p_promo_name='ese'" }, "TableCatalogId": "123456789111", "TableName": "dl_tpc_promotion" } }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Filtro dei dati e sicurezza a livello di cella in Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 2: come creare un filtro per le colonne

L’esempio create-data-cells-filter seguente crea un filtro dati per consentire l’accesso a determinate colonne.

aws lakeformation create-data-cells-filter \ --cli-input-json file://input.json

Contenuto di input.json:

{ "TableData": { "ColumnNames": ["p_channel_details", "p_start_date_sk", "p_promo_name"], "DatabaseName": "tpc", "Name": "developer_promotion_allrows", "RowFilter": { "AllRowsWildcard": {} }, "TableCatalogId": "123456789111", "TableName": "dl_tpc_promotion" } }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Filtro dei dati e sicurezza a livello di cella in Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 3: come creare un filtro dati con colonne di esclusione

L’esempio create-data-cells-filter seguente crea un filtro dati per consentire l’accesso a tutte le colonne tranne quelle menzionate.

aws lakeformation create-data-cells-filter \ --cli-input-json file://input.json

Contenuto di input.json:

{ "TableData": { "ColumnWildcard": { "ExcludedColumnNames": ["p_channel_details", "p_start_date_sk"] }, "DatabaseName": "tpc", "Name": "developer_promotion_excludecolumn", "RowFilter": { "AllRowsWildcard": {} }, "TableCatalogId": "123456789111", "TableName": "dl_tpc_promotion" } }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Filtro dei dati e sicurezza a livello di cella in Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare create-lf-tag.

AWS CLI

Per creare LF-Tag

L'create-lf-tagesempio seguente crea un oggetto LF-Tag con il nome e i valori specificati.

aws lakeformation create-lf-tag \ --catalog-id '123456789111' \ --tag-key 'usergroup' \ --tag-values '["developer","analyst","campaign"]'

Questo comando non produce alcun output.

Per ulteriori informazioni, vedere Managing LF-Tags for metadata access control nella AWS Lake Formation Developer Guide.

  • Per i dettagli sulle API, consulta la sezione AWS CLI Command CreateLfTag Reference.

L’esempio di codice seguente mostra come utilizzare delete-data-cells-filter.

AWS CLI

Come eliminare il filtro per le celle di dati

L’esempio delete-data-cells-filter seguente elimina un determinato filtro per le celle di dati.

aws lakeformation delete-data-cells-filter \ --cli-input-json file://input.json

Contenuto di input.json:

{ "TableCatalogId": "123456789111", "DatabaseName": "tpc", "TableName": "dl_tpc_promotion", "Name": "developer_promotion" }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Filtro dei dati e sicurezza a livello di cella in Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare delete-lf-tag.

AWS CLI

Per eliminare una definizione LF-Tag

L'delete-lf-tagesempio seguente elimina la LF-Tag definizione.

aws lakeformation delete-lf-tag \ --catalog-id '123456789111' \ --tag-key 'usergroup'

Questo comando non produce alcun output.

Per ulteriori informazioni, vedere Managing LF-Tags for metadata access control nella AWS Lake Formation Developer Guide.

  • Per i dettagli sulle API, consulta la sezione AWS CLI Command DeleteLfTag Reference.

L’esempio di codice seguente mostra come utilizzare delete-objects-on-cancel.

AWS CLI

Come eliminare l’oggetto quando la transazione viene annullata

L’esempio delete-objects-on-cancel seguente elimina l’oggetto s3 elencato quando la transazione viene annullata.

aws lakeformation delete-objects-on-cancel \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "012345678901", "DatabaseName": "tpc", "TableName": "dl_tpc_household_demographics_gov", "TransactionId": "1234d972ca8347b89825e33c5774aec4", "Objects": [{ "Uri": "s3://lf-data-lake-012345678901/target/dl_tpc_household_demographics_gov/run-unnamed-1-part-block-0-r-00000-snappy-ff26b17504414fe88b302cd795eabd00.parquet", "ETag": "1234ab1fc50a316b149b4e1f21a73800" }] }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare deregister-resource.

AWS CLI

Come annullare la registrazione dell’archiviazione nel data lake

L’esempio deregister-resource seguente annulla la registrazione della risorsa come gestita da Lake Formation.

aws lakeformation deregister-resource \ --cli-input-json file://input.json

Contenuto di input.json:

{ "ResourceArn": "arn:aws:s3:::lf-emr-athena-result-123" }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Aggiunta di una posizione Amazon S3 al data lake nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare describe-transaction.

AWS CLI

Come recuperare i dettagli di una transazione

L’esempio describe-transaction seguente restituisce i dettagli di una singola transazione.

aws lakeformation describe-transaction \ --transaction-id='8cb4b1a7cc8d486fbaca9a64e7d9f5ce'

Output:

{ "TransactionDescription": { "TransactionId": "12345972ca8347b89825e33c5774aec4", "TransactionStatus": "committed", "TransactionStartTime": "2022-08-10T14:29:04.046000+00:00", "TransactionEndTime": "2022-08-10T14:29:09.681000+00:00" } }

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare extend-transaction.

AWS CLI

Come estendere una transazione

L’esempio extend-transaction seguente estende la transazione.

aws lakeformation extend-transaction \ --transaction-id='8cb4b1a7cc8d486fbaca9a64e7d9f5ce'

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare get-data-lake-settings.

AWS CLI

Per recuperare le impostazioni del data lake di Lake AWS Formation-managed

L’esempio get-data-lake-settings seguente recupera l’elenco degli amministratori del data lake e altre impostazioni del data lake.

aws lakeformation get-data-lake-settings \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111" }

Output:

{ "DataLakeSettings": { "DataLakeAdmins": [{ "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-admin" }], "CreateDatabaseDefaultPermissions": [], "CreateTableDefaultPermissions": [ { "Principal": { "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS" }, "Permissions": [ "ALL" ] } ], "TrustedResourceOwners": [], "AllowExternalDataFiltering": true, "ExternalDataFilteringAllowList": [{ "DataLakePrincipalIdentifier": "123456789111" }], "AuthorizedSessionTagValueList": [ "Amazon EMR" ] } }

Per ulteriori informazioni, consulta Modifica delle impostazioni di sicurezza predefinite per il data lake nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare get-effective-permissions-for-path.

AWS CLI

Come recuperare le autorizzazioni sulle risorse che si trovano in un percorso specifico

L’esempio get-effective-permissions-for-path seguente restituisce le autorizzazioni di Lake Formation per una risorsa della tabella o del database specificata situata in un percorso in Amazon S3.

aws lakeformation get-effective-permissions-for-path \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "ResourceArn": "arn:aws:s3:::lf-data-lake-123456789111" }

Output:

{ "Permissions": [{ "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-campaign-manager" }, "Resource": { "Database": { "Name": "tpc" } }, "Permissions": [ "DESCRIBE" ], "PermissionsWithGrantOption": [] }, { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:role/EMR-RuntimeRole" }, "Resource": { "Database": { "Name": "tpc" } }, "Permissions": [ "ALL" ], "PermissionsWithGrantOption": [] }, { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:saml-provider/oktaSAMLProvider:user/emr-developer" }, "Resource": { "Database": { "Name": "tpc" } }, "Permissions": [ "ALL", "DESCRIBE" ], "PermissionsWithGrantOption": [] }, { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-admin" }, "Resource": { "Database": { "Name": "tpc" } }, "Permissions": [ "ALL", "ALTER", "CREATE_TABLE", "DESCRIBE", "DROP" ], "PermissionsWithGrantOption": [ "ALL", "ALTER", "CREATE_TABLE", "DESCRIBE", "DROP" ] }, { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:role/LF-GlueServiceRole" }, "Resource": { "Database": { "Name": "tpc" } }, "Permissions": [ "CREATE_TABLE" ], "PermissionsWithGrantOption": [] } ], "NextToken": "E5SlJDSTZleUp6SWpvaU9UQTNORE0zTXpFeE5Ua3pJbjE5TENKbGVIQnBjbUYwYVc5dUlqcDdJbk5sWTI5dVpITWlPakUyTm==" }

Per ulteriori informazioni, consulta Gestione delle autorizzazioni di Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare get-lf-tag.

AWS CLI

Per recuperare una definizione LF-tag

L'get-lf-tagesempio seguente LF-tag recupera una definizione.

aws lakeformation get-lf-tag \ --catalog-id '123456789111' \ --tag-key 'usergroup'

Output:

{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "analyst", "campaign", "developer" ] }

Per ulteriori informazioni, vedere Managing LF-Tags for metadata access control nella AWS Lake Formation Developer Guide.

  • Per i dettagli sulle API, consulta la sezione AWS CLI Command GetLfTag Reference.

L’esempio di codice seguente mostra come utilizzare get-query-state.

AWS CLI

Come recuperare lo stato di una query inviata

L’esempio get-query-state seguente restituisce lo stato di una query inviata in precedenza.

aws lakeformation get-query-state \ --query-id='1234273f-4a62-4cda-8d98-69615ee8be9b'

Output:

{ "State": "FINISHED" }

Per ulteriori informazioni, consulta Operazioni sui dati transazionali nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per i dettagli sull'API, vedi GetQueryState in Command Reference. AWS CLI

L’esempio di codice seguente mostra come utilizzare get-query-statistics.

AWS CLI

Come recuperare le statistiche delle query

L’esempio get-query-statistics seguente recupera le statistiche sulla pianificazione e l’esecuzione di una query.

aws lakeformation get-query-statistics \ --query-id='1234273f-4a62-4cda-8d98-69615ee8be9b'

Output:

{ "ExecutionStatistics": { "AverageExecutionTimeMillis": 0, "DataScannedBytes": 0, "WorkUnitsExecutedCount": 0 }, "PlanningStatistics": { "EstimatedDataToScanBytes": 43235, "PlanningTimeMillis": 2377, "QueueTimeMillis": 440, "WorkUnitsGeneratedCount": 1 }, "QuerySubmissionTime": "2022-08-11T02:14:38.641870+00:00" }

Per ulteriori informazioni, consulta Operazioni sui dati transazionali nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare get-table-objects.

AWS CLI

Come elencare gli oggetti di una tabella governata

L’esempio get-table-objects seguente restituisce l’insieme di oggetti Amazon S3 che costituiscono la tabella governata specificata.

aws lakeformation get-table-objects \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "012345678901", "DatabaseName": "tpc", "TableName": "dl_tpc_household_demographics_gov", "QueryAsOfTime": "2022-08-10T15:00:00" }

Output:

{ "Objects": [{ "PartitionValues": [], "Objects": [{ "Uri": "s3://lf-data-lake-012345678901/target/dl_tpc_household_demographics_gov/run-unnamed-1-part-block-0-r-00000-snappy-ff26b17504414fe88b302cd795eabd00.parquet", "ETag": "12345b1fc50a316b149b4e1f21a73800", "Size": 43235 }] }] }

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare get-work-unit-results.

AWS CLI

Come recuperare le unità di lavoro di una determinata query

L’esempio get-work-unit-results seguente restituisce le unità di lavoro risultanti dalla query.

aws lakeformation get-work-units \ --query-id='1234273f-4a62-4cda-8d98-69615ee8be9b' \ --work-unit-id '0' \ --work-unit-token 'B2fMSdmQXe9umX8Ux8XCo4=' outfile

Output:

outfile with Blob content.

Per ulteriori informazioni, consulta Operazioni sui dati transazionali nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare get-work-units.

AWS CLI

Come recuperare le unità di lavoro

L'get-work-unitsesempio seguente recupera le unità di lavoro generate dall'operazione. StartQueryPlanning

aws lakeformation get-work-units \ --query-id='1234273f-4a62-4cda-8d98-69615ee8be9b'

Output:

{ "WorkUnitRanges": [{ "WorkUnitIdMax": 0, "WorkUnitIdMin": 0, "WorkUnitToken": "1234eMAk4kLO4umqEL4Z5WuxL04AXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREEwYm9QbkhINmFYTWphbmMxZW1PQmEyMGlUb0JFbXNlWmRYc0NmckRIR1dmQ0hjY2YzNFdMcmNXb2JGZmhEK0QvZz09AAEAB2F3cy1rbXMAS2Fybjphd3M6a21zOnVzLWVhc3QtMTo3MDkxNTAyNDkyNDk6a2V5L2VmYmI3NDUyLTY1MjYtNGJiOS1iNmZhLTEzYzJkMTM3MmU2OQC4AQIBAHg6eWNF2ZrQATTAuPDJVCEAQSyIF67vX+f88jzGrYq22gE6jkQlpOB+Oet2eqNUmFudAAAAfjB8BgkqhkiG9w0BBwagbzBtAgEAMGgGCSqGSIb3DQEHATAeBglghkgBZQMEAS4wEQQMCOEWRdafowek3RUmAgEQgDsYZZE84nnnbNmvsqCBPLh19nLQ10mUWOg9IfiaOwefEn6L920V0x1LpJACo7MtIBLXnbGcz2dFDZjFygIAAAAADAAAEAAAAAAAAAAAAAAAAAAQSQf8XDSI5pvR4Fx4JsrS/////wAAAAEAAAAAAAAAAAAAAAEAAACX3/w5h75QAPomfKH+cyEKYU1yccUmBl+VSojiGOtdsUk7vcjYXUUboYm3dvqRqX2s4gROMOn+Ij8R0/8jYmnHkpvyAFNVRPyETyIKg7k5Z9+5I1c2d3446Jw/moWGGxjH8AEG9h27ytmOhozxDOEi/F2ZoXz6wlGDfGUo/2WxCkYOhTyNaw6TM+7drTM7yrW4iNVLUM0LX0xnFjIAhLhooWJek6vjQZUAZzBlAjBH8okRtYP8R7AY2Wls/hqFBhG0V4l42AC0LxsuZbMQrE2SzWZUZ0E9Uew7/n0cyX4CMQDR79INyv4ysMByW9kKGGKyba+cCNklExMR+btBQBmMuB2fMSdmQXe9umX8Ux8XCo4=" }], "QueryId": "1234273f-4a62-4cda-8d98-69615ee8be9b" }

Per ulteriori informazioni, consulta Operazioni sui dati transazionali nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per i dettagli sull'API, vedere GetWorkUnits in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare grant-permissions.

AWS CLI

Esempio 1: concedere autorizzazioni al committente sulle risorse che utilizzano LF-Tags

L'grant-permissionsesempio seguente concede TUTTE le autorizzazioni al principale sulla risorsa del database che corrisponde alla politica. LF-Tag

aws lakeformation grant-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-admin" }, "Resource": { "LFTagPolicy": { "CatalogId": "123456789111", "ResourceType": "DATABASE", "Expression": [{ "TagKey": "usergroup", "TagValues": [ "analyst", "developer" ] }] } }, "Permissions": [ "ALL" ], "PermissionsWithGrantOption": [ "ALL" ] }

Questo comando non produce alcun output.

Per ulteriori informazioni sulla concessione e la revoca dell’accesso a Lake Formation, consulta la pagina Concessione e revoca delle autorizzazioni delle risorse del catalogo dati nella Guida per gli sviluppatori di AWS .

Esempio 2: come concedere al responsabile le autorizzazioni a livello di colonna

L’esempio grant-permissions seguente concede al responsabile l’autorizzazione a selezionare una colonna specifica.

aws lakeformation grant-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-developer" }, "Resource": { "TableWithColumns": { "CatalogId": "123456789111", "ColumnNames": ["p_end_date_sk"], "DatabaseName": "tpc", "Name": "dl_tpc_promotion" } }, "Permissions": [ "SELECT" ], "PermissionsWithGrantOption": [] }

Questo comando non produce alcun output.

Per ulteriori informazioni sulla concessione e la revoca dell’accesso a Lake Formation, consulta la pagina Concessione e revoca delle autorizzazioni delle risorse del catalogo dati nella Guida per gli sviluppatori di AWS .

Esempio 3: come concedere al responsabile le autorizzazioni per le tabelle

L’esempio grant-permissions seguente concede al responsabile l’autorizzazione per la selezione su tutte le tabelle di un determinato database.

aws lakeformation grant-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-developer" }, "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "TableWildcard": {} } }, "Permissions": [ "SELECT" ], "PermissionsWithGrantOption": [] }

Questo comando non produce alcun output.

Per ulteriori informazioni sulla concessione e la revoca dell’accesso a Lake Formation, consulta la pagina Concessione e revoca delle autorizzazioni delle risorse del catalogo dati nella Guida per gli sviluppatori di AWS .

Esempio 4: concedere le autorizzazioni al principale LF-Tags

L'grant-permissionsesempio seguente concede l'autorizzazione di associazione LF-Tags al principale.

aws lakeformation grant-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-developer" }, "Resource": { "LFTag": { "CatalogId": "123456789111", "TagKey": "category", "TagValues": [ "private", "public" ] } }, "Permissions": [ "ASSOCIATE" ], "PermissionsWithGrantOption": [] }

Questo comando non produce alcun output.

Per ulteriori informazioni sulla concessione e la revoca dell’accesso a Lake Formation, consulta la pagina Concessione e revoca delle autorizzazioni delle risorse del catalogo dati nella Guida per gli sviluppatori di AWS .

Esempio 5: come concedere al responsabile le autorizzazioni sulle posizioni dei dati

L’esempio grant-permissions seguente concede al responsabile l’autorizzazione sulla posizione dei dati.

aws lakeformation grant-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-developer" }, "Resource": { "DataLocation": { "CatalogId": "123456789111", "ResourceArn": "arn:aws:s3:::lf-data-lake-123456789111" } }, "Permissions": [ "DATA_LOCATION_ACCESS" ], "PermissionsWithGrantOption": [] }

Questo comando non produce alcun output.

Per ulteriori informazioni sulla concessione e la revoca dell’accesso a Lake Formation, consulta la pagina Concessione e revoca delle autorizzazioni delle risorse del catalogo dati nella Guida per gli sviluppatori di AWS .

L’esempio di codice seguente mostra come utilizzare list-data-cells-filter.

AWS CLI

Come elencare i filtri delle celle di dati

L’esempio list-data-cells-filter seguente elenca il filtro delle celle di dati per una determinata tabella.

aws lakeformation list-data-cells-filter \ --cli-input-json file://input.json

Contenuto di input.json:

{ "MaxResults": 2, "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_promotion" } }

Output:

{ "DataCellsFilters": [{ "TableCatalogId": "123456789111", "DatabaseName": "tpc", "TableName": "dl_tpc_promotion", "Name": "developer_promotion", "RowFilter": { "FilterExpression": "p_promo_name='ese'" }, "ColumnNames": [ "p_channel_details", "p_start_date_sk", "p_purpose", "p_promo_id", "p_promo_name", "p_end_date_sk", "p_discount_active" ] }, { "TableCatalogId": "123456789111", "DatabaseName": "tpc", "TableName": "dl_tpc_promotion", "Name": "developer_promotion_allrows", "RowFilter": { "FilterExpression": "TRUE", "AllRowsWildcard": {} }, "ColumnNames": [ "p_channel_details", "p_start_date_sk", "p_promo_name" ] } ], "NextToken": "2MDA2MTgwNiwibmFub3MiOjE0MDAwMDAwMH19" }

Per ulteriori informazioni, consulta Filtro dei dati e sicurezza a livello di cella in Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare list-lf-tags.

AWS CLI

Da elencare LF-tags

L'list-lf-tagsesempio seguente restituisce l'elenco di quelli LF-tags che il richiedente ha il permesso di visualizzare.

aws lakeformation list-lf-tags \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "ResourceShareType": "ALL", "MaxResults": 2 }

Output:

{ "LFTags": [{ "CatalogId": "123456789111", "TagKey": "category", "TagValues": [ "private", "public" ] }, { "CatalogId": "123456789111", "TagKey": "group", "TagValues": [ "analyst", "campaign", "developer" ] }], "NextToken": "kIiwiZXhwaXJhdGlvbiI6eyJzZWNvbmRzIjoxNjYwMDY4dCI6ZmFsc2V9" }

Per ulteriori informazioni, vedere Managing LF-Tags for metadata access control nella AWS Lake Formation Developer Guide.

  • Per i dettagli sulle API, consulta la sezione AWS CLI Command ListLfTags Reference.

L’esempio di codice seguente mostra come utilizzare list-permissions.

AWS CLI

Esempio 1: come recuperare l’elenco delle autorizzazioni del responsabile sulla risorsa

L’esempio list-permissions seguente restituisce un elenco delle autorizzazioni del responsabile sulle risorse del database.

aws lakeformation list-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "ResourceType": "DATABASE", "MaxResults": 2 }

Output:

{ "PrincipalResourcePermissions": [{ "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-campaign-manager" }, "Resource": { "Database": { "CatalogId": "123456789111", "Name": "tpc" } }, "Permissions": [ "DESCRIBE" ], "PermissionsWithGrantOption": [] }], "NextToken": "E5SlJDSTZleUp6SWpvaU9UQTNORE0zTXpFeE5Ua3pJbjE5TENKbGVIQnBjbUYwYVc5dUlqcDdJbk5sWTI5dVpITWlPakUyTm" }

Per ulteriori informazioni, consulta Gestione delle autorizzazioni di Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 2: come recuperare l’elenco delle autorizzazioni del responsabile sulla tabella con filtri di dati

L’esempio list-permissions seguente elenca le autorizzazioni sulla tabella con i relativi filtri di dati concesse al responsabile.

aws lakeformation list-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_customer" } }, "IncludeRelated": "TRUE", "MaxResults": 10 }

Output:

{ "PrincipalResourcePermissions": [{ "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:role/Admin" }, "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "customer", "Name": "customer_invoice" } }, "Permissions": [ "ALL", "ALTER", "DELETE", "DESCRIBE", "DROP", "INSERT" ], "PermissionsWithGrantOption": [ "ALL", "ALTER", "DELETE", "DESCRIBE", "DROP", "INSERT" ] }, { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:role/Admin" }, "Resource": { "TableWithColumns": { "CatalogId": "123456789111", "DatabaseName": "customer", "Name": "customer_invoice", "ColumnWildcard": {} } }, "Permissions": [ "SELECT" ], "PermissionsWithGrantOption": [ "SELECT" ] }, { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:role/Admin" }, "Resource": { "DataCellsFilter": { "TableCatalogId": "123456789111", "DatabaseName": "customer", "TableName": "customer_invoice", "Name": "dl_us_customer" } }, "Permissions": [ "DESCRIBE", "SELECT", "DROP" ], "PermissionsWithGrantOption": [] } ], "NextToken": "VyeUFjY291bnRQZXJtaXNzaW9ucyI6ZmFsc2V9" }

Per ulteriori informazioni, consulta Gestione delle autorizzazioni di Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 3: Per recuperare l'elenco delle autorizzazioni principali su LF-Tags

L'list-permissionsesempio seguente elenca le autorizzazioni LF-Tags concesse al principale.

aws lakeformation list-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Resource": { "LFTag": { "CatalogId": "123456789111", "TagKey": "category", "TagValues": [ "private" ] } }, "MaxResults": 10 }

Output:

{ "PrincipalResourcePermissions": [{ "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-admin" }, "Resource": { "LFTag": { "CatalogId": "123456789111", "TagKey": "category", "TagValues": [ "*" ] } }, "Permissions": [ "DESCRIBE" ], "PermissionsWithGrantOption": [ "DESCRIBE" ] }, { "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-admin" }, "Resource": { "LFTag": { "CatalogId": "123456789111", "TagKey": "category", "TagValues": [ "*" ] } }, "Permissions": [ "ASSOCIATE" ], "PermissionsWithGrantOption": [ "ASSOCIATE" ] } ], "NextToken": "EJwY21GMGFXOXVJanA3SW5Ocm1pc3Npb25zIjpmYWxzZX0=" }

Per ulteriori informazioni, consulta Gestione delle autorizzazioni di Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare list-resources.

AWS CLI

Come elencare le risorse gestite da Lake Formation

L’esempio list-resources seguente elenca le risorse che corrispondono alla condizione gestita da Lake Formation.

aws lakeformation list-resources \ --cli-input-json file://input.json

Contenuto di input.json:

{ "FilterConditionList": [{ "Field": "ROLE_ARN", "ComparisonOperator": "CONTAINS", "StringValueList": [ "123456789111" ] }], "MaxResults": 10 }

Output:

{ "ResourceInfoList": [{ "ResourceArn": "arn:aws:s3:::lf-data-lake-123456789111", "RoleArn": "arn:aws:iam::123456789111:role/LF-GlueServiceRole", "LastModified": "2022-07-21T02:12:46.669000+00:00" }, { "ResourceArn": "arn:aws:s3:::lf-emr-test-123456789111", "RoleArn": "arn:aws:iam::123456789111:role/EMRLFS3Role", "LastModified": "2022-07-29T16:22:03.211000+00:00" } ] }

Per ulteriori informazioni, consulta Gestione delle autorizzazioni di Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per i dettagli sull'API, vedi ListResources in AWS CLI Command Reference.

L’esempio di codice seguente mostra come utilizzare list-transactions.

AWS CLI

Come elencare tutti i dettagli delle transazioni

L’esempio list-transactions seguente restituisce i metadati relativi alle transazioni e al loro stato.

aws lakeformation list-transactions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "StatusFilter": "ALL", "MaxResults": 3 }

Output:

{ "Transactions": [{ "TransactionId": "1234569f08804cb790d950d4d0fe485e", "TransactionStatus": "committed", "TransactionStartTime": "2022-08-10T14:32:29.220000+00:00", "TransactionEndTime": "2022-08-10T14:32:33.751000+00:00" }, { "TransactionId": "12345972ca8347b89825e33c5774aec4", "TransactionStatus": "committed", "TransactionStartTime": "2022-08-10T14:29:04.046000+00:00", "TransactionEndTime": "2022-08-10T14:29:09.681000+00:00" }, { "TransactionId": "12345daf6cb047dbba8ad9b0414613b2", "TransactionStatus": "committed", "TransactionStartTime": "2022-08-10T13:56:51.261000+00:00", "TransactionEndTime": "2022-08-10T13:56:51.547000+00:00" } ], "NextToken": "77X1ebypsI7os+X2lhHsZLGNCDK3nNGpwRdFpicSOHgcX1/QMoniUAKcpR3kj3ts3PVdMA==" }

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare put-data-lake-settings.

AWS CLI

Per configurare le impostazioni del data lake di Lake AWS Formation-managed

L’esempio put-data-lake-settings seguente imposta l’elenco degli amministratori del data lake e altre impostazioni del data lake.

aws lakeformation put-data-lake-settings \ --cli-input-json file://input.json

Contenuto di input.json:

{ "DataLakeSettings": { "DataLakeAdmins": [{ "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-admin" } ], "CreateDatabaseDefaultPermissions": [], "CreateTableDefaultPermissions": [], "TrustedResourceOwners": [], "AllowExternalDataFiltering": true, "ExternalDataFilteringAllowList": [{ "DataLakePrincipalIdentifier ": "123456789111" }], "AuthorizedSessionTagValueList": ["Amazon EMR"] } }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Modifica delle impostazioni di sicurezza predefinite per il data lake nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare register-resource.

AWS CLI

Esempio 1: come registrare l’archiviazione nel data lake utilizzando un ruolo collegato ai servizi

L’esempio register-resource seguente registra la risorsa come gestita da Lake Formation utilizzando un ruolo collegato ai servizi.

aws lakeformation register-resource \ --cli-input-json file://input.json

Contenuto di input.json:

{ "ResourceArn": "arn:aws:s3:::lf-emr-athena-result-123", "UseServiceLinkedRole": true }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Aggiunta di una posizione Amazon S3 al data lake nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 2: come registrare l’archiviazione nel data lake utilizzando una regola personalizzata

L’esempio register-resource seguente registra la risorsa come gestita da Lake Formation utilizzando un ruolo personalizzato.

aws lakeformation register-resource \ --cli-input-json file://input.json

Contenuto di input.json:

{ "ResourceArn": "arn:aws:s3:::lf-emr-athena-result-123", "UseServiceLinkedRole": false, "RoleArn": "arn:aws:iam::123456789111:role/LF-GlueServiceRole" }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Aggiunta di una posizione Amazon S3 al data lake nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare remove-lf-tags-from-resource.

AWS CLI

Per rimuovere da una risorsa LF-Tag

L'remove-lf-tags-from-resourceesempio seguente rimuove l' LF-Tag associazione con la risorsa della tabella.

aws lakeformation remove-lf-tags-from-resource \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_promotion" } }, "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }

Output:

{ "Failures": [] }

Per ulteriori informazioni, vedere Assigning LF-Tags to Data Catalog resources nella AWS Lake Formation Developer Guide.

L’esempio di codice seguente mostra come utilizzare revoke-permissions.

AWS CLI

Come revocare al responsabile le autorizzazioni sulle risorse

L’esempio revoke-permissions seguente revoca al responsabile l’accesso a una tabella specifica di un determinato database.

aws lakeformation revoke-permissions \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "123456789111", "Principal": { "DataLakePrincipalIdentifier": "arn:aws:iam::123456789111:user/lf-developer" }, "Resource": { "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_promotion" } }, "Permissions": [ "ALL" ], "PermissionsWithGrantOption": [] }

Questo comando non produce alcun output.

Per ulteriori informazioni sulla concessione e la revoca dell’accesso a Lake Formation, consulta la pagina Concessione e revoca delle autorizzazioni delle risorse del catalogo dati nella Guida per gli sviluppatori di AWS .

L’esempio di codice seguente mostra come utilizzare search-databases-by-lf-tags.

AWS CLI

Come ricercare le risorse del database in base ai tag LF

L’esempio search-databases-by-lf-tags seguente ricerca le risorse del database che corrispondono all’espressione LFTag.

aws lakeformation search-databases-by-lf-tags \ --cli-input-json file://input.json

Contenuto di input.json:

{ "MaxResults": 1, "CatalogId": "123456789111", "Expression": [{ "TagKey": "usergroup", "TagValues": [ "developer" ] }] }

Output:

{ "DatabaseList": [{ "Database": { "CatalogId": "123456789111", "Name": "tpc" }, "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }] }

Per ulteriori informazioni, vedere Visualizzazione delle risorse a cui LF-Tag è assegnato nella Lake Formation Developer Guide. AWS

L’esempio di codice seguente mostra come utilizzare search-tables-by-lf-tags.

AWS CLI

Come ricercare le risorse della tabella in base ai tag LF

L’esempio search-tables-by-lf-tags seguente ricerca le risorse della tabella che corrispondono all’espressione LFTag.

aws lakeformation search-tables-by-lf-tags \ --cli-input-json file://input.json

Contenuto di input.json:

{ "MaxResults": 2, "CatalogId": "123456789111", "Expression": [{ "TagKey": "usergroup", "TagValues": [ "developer" ] }] }

Output:

{ "NextToken": "c2VhcmNoQWxsVGFnc0luVGFibGVzIjpmYWxzZX0=", "TableList": [{ "Table": { "CatalogId": "123456789111", "DatabaseName": "tpc", "Name": "dl_tpc_item" }, "LFTagOnDatabase": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }], "LFTagsOnTable": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }], "LFTagsOnColumns": [{ "Name": "i_item_desc", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_container", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_wholesale_cost", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_manufact_id", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_brand_id", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_formulation", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_current_price", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_size", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_rec_start_date", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_manufact", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_item_sk", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_manager_id", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_item_id", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_class_id", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_class", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_category", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_category_id", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_brand", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_units", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_rec_end_date", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_color", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] }, { "Name": "i_product_name", "LFTags": [{ "CatalogId": "123456789111", "TagKey": "usergroup", "TagValues": [ "developer" ] }] } ] }] }

Per ulteriori informazioni, consulta Visualizzazione delle risorse a cui LF-Tag è assegnato nella Lake Formation Developer Guide. AWS

L’esempio di codice seguente mostra come utilizzare start-query-planning.

AWS CLI

Come elaborare l’istruzione di una query

L’esempio start-query-planning seguente invia una richiesta per elaborare l’istruzione di una query.

aws lakeformation start-query-planning \ --cli-input-json file://input.json

Contenuto di input.json:

{ "QueryPlanningContext": { "CatalogId": "012345678901", "DatabaseName": "tpc" }, "QueryString": "select * from dl_tpc_household_demographics_gov where hd_income_band_sk=9" }

Output:

{ "QueryId": "772a273f-4a62-4cda-8d98-69615ee8be9b" }

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare start-transaction.

AWS CLI

Come avviare una nuova transazione

L’esempio start-transaction seguente avvia una nuova transazione e restituisce il relativo ID.

aws lakeformation start-transaction \ --transaction-type = 'READ_AND_WRITE'

Output:

{ "TransactionId": "b014d972ca8347b89825e33c5774aec4" }

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.

L’esempio di codice seguente mostra come utilizzare update-lf-tag.

AWS CLI

Per aggiornare la definizione LF-Tag

L'update-lf-tagesempio seguente aggiorna LF-Tag la definizione.

aws lakeformation update-lf-tag \ --catalog-id '123456789111' \ --tag-key 'usergroup' \ --tag-values-to-add '["admin"]'

Questo comando non produce alcun output.

Per ulteriori informazioni, vedere Managing LF-Tags for metadata access control nella AWS Lake Formation Developer Guide.

  • Per i dettagli sulle API, consulta la sezione AWS CLI Command UpdateLfTag Reference.

L’esempio di codice seguente mostra come utilizzare update-table-objects.

AWS CLI

Come modificare gli oggetti della tabella governata

L’esempio update-table-objects seguente aggiunge gli oggetti S3 forniti alla tabella governata specificata.

aws lakeformation update-table-objects \ --cli-input-json file://input.json

Contenuto di input.json:

{ "CatalogId": "012345678901", "DatabaseName": "tpc", "TableName": "dl_tpc_household_demographics_gov", "TransactionId": "12347a9f75424b9b915f6ff201d2a190", "WriteOperations": [{ "AddObject": { "Uri": "s3://lf-data-lake-012345678901/target/dl_tpc_household_demographics_gov/run-unnamed-1-part-block-0-r-00000-snappy-ff26b17504414fe88b302cd795eabd00.parquet", "ETag": "1234ab1fc50a316b149b4e1f21a73800", "Size": 42200 } }] }

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Lettura e scrittura di dati nel data lake all’interno delle transazioni nella Guida per gli sviluppatori di AWS Lake Formation.