Esempi di Lake Formation con AWS CLI - AWS Command Line Interface

Esempi di Lake Formation con AWS CLI

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

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

Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Operazioni

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

AWS CLI

Come aggiungere uno o più tag LF a una risorsa esistente

L’esempio add-lf-tags-to-resource seguente aggiunge un determinato tag LF 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, consulta Assigning LF-Tags to Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta AddLfTagsToResource in AWS CLI Command Reference.

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, consulta Granting and revoking permissions on Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

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, consulta Granting and revoking permissions on Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

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 Reading from and writing to the data lake within transactions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta CancelTransaction in AWS CLI Command Reference.

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 Reading from and writing to the data lake within transactions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta CommitTransaction in AWS CLI Command Reference.

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

AWS CLI

Esempio 1: 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 Data filtering and cell-level security in Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 2: 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 Data filtering and cell-level security in Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 3: 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 Data filtering and cell-level security 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

Come creare un tag LF

L’esempio create-lf-tag seguente crea un tag LF 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, consulta Managing LF-Tags for metadata access control nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta CreateLfTag in AWS CLI Command 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 Data filtering and cell-level security 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

Come eliminare la definizione del tag LF

L’esempio delete-lf-tag seguente elimina la definizione del tag LF.

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

Questo comando non produce alcun output.

Per ulteriori informazioni, consulta Managing LF-Tags for metadata access control nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta DeleteLfTag in AWS CLI Command 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 Reading from and writing to the data lake within transactions 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 Adding an Amazon S3 location to your data lake nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta DeregisterResource in AWS CLI Command Reference.

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 Reading from and writing to the data lake within transactions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta DescribeTransaction in AWS CLI Command Reference.

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 Reading from and writing to the data lake within transactions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta ExtendTransaction in AWS CLI Command Reference.

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

AWS CLI

Come recuperare le impostazioni del data lake gestite da AWS Lake Formation

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 Changing the default security settings for your data lake nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta GetDataLakeSettings in AWS CLI Command Reference.

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 Managing Lake Formation permissions nella Guida per gli sviluppatori di AWS Lake Formation.

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

AWS CLI

Come recuperare la definizione del tag LF

L’esempio get-lf-tag seguente recupera la definizione del tag LF.

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

Output:

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

Per ulteriori informazioni, consulta Managing LF-Tags for metadata access control nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta GetLfTag in AWS CLI Command 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 Transactional data operations nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta GetQueryState in AWS CLI Command Reference.

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 Transactional data operations nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta GetQueryStatistics in AWS CLI Command Reference.

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

AWS CLI

Come elencare i tag LF

L’esempio list-lf-tags seguente restituisce un elenco di tag LF che il richiedente è autorizzato a 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, consulta Managing LF-Tags for metadata access control nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta GetResourceLfTags in AWS CLI Command Reference.

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 Reading from and writing to the data lake within transactions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta GetTableObjects in AWS CLI Command Reference.

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 Transactional data operations nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta GetWorkUnitResults in AWS CLI Command Reference.

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

AWS CLI

Come recuperare le unità di lavoro

L’esempio get-work-units 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 Transactional data operations nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta GetWorkUnits in AWS CLI Command Reference.

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

AWS CLI

Esempio 1: concedere al responsabile le autorizzazioni sulle risorse utilizzando i tag LF

L’esempio grant-permissions seguente concede al responsabile TUTTE le autorizzazioni sulla risorsa di database che corrisponde alla policy sui tag LF.

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, consulta Granting and revoking permissions on Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 2: 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, consulta Granting and revoking permissions on Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 3: 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, consulta Granting and revoking permissions on Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 4: concedere al responsabile le autorizzazioni sui tag LF

L’esempio grant-permissions seguente concede al responsabile l’autorizzazione per l’associazione sui tag LF.

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, consulta Granting and revoking permissions on Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 5: 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, consulta Granting and revoking permissions on Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta GrantPermissions in AWS CLI Command Reference.

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 Data filtering and cell-level security in Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta ListDataCellsFilter in AWS CLI Command Reference.

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

AWS CLI

Esempio 1: 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 Managing Lake Formation permissions nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 2: 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 Managing Lake Formation permissions nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 3: recuperare l’elenco delle autorizzazioni del responsabile sui tag LF

L’esempio list-permissions seguente elenca le autorizzazioni sui tag LF concesse al responsabile.

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 Managing Lake Formation permissions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta ListPermissions in AWS CLI Command Reference.

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 Managing Lake Formation permissions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta 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 Reading from and writing to the data lake within transactions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta ListTransactions in AWS CLI Command Reference.

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

AWS CLI

Come configurare le impostazioni del data lake gestite da AWS Lake Formation

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 Changing the default security settings for your data lake nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta PutDataLakeSettings in AWS CLI Command Reference.

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

AWS CLI

Esempio 1: 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 Adding an Amazon S3 location to your data lake nella Guida per gli sviluppatori di AWS Lake Formation.

Esempio 2: 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 Adding an Amazon S3 location to your data lake nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta RegisterResource in AWS CLI Command Reference.

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

AWS CLI

Come rimuovere il tag LF da una risorsa

L’esempio remove-lf-tags-from-resource seguente rimuove l’associazione tra il tag LF e 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, consulta Assigning LF-Tags to Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

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, consulta Granting and revoking permissions on Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta RevokePermissions in AWS CLI Command Reference.

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, consulta Viewing the resources that a LF-Tag is assigned to nella Guida per gli sviluppatori di AWS Lake Formation.

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 Viewing the resources that a LF-Tag is assigned to nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta SearchTablesByLfTags in AWS CLI Command Reference.

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 Reading from and writing to the data lake within transactions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta StartQueryPlanning in AWS CLI Command Reference.

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 Reading from and writing to the data lake within transactions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta StartTransaction in AWS CLI Command Reference.

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

AWS CLI

Come aggiornare la definizione del tag LF

L’esempio update-lf-tag seguente aggiorna la definizione del tag LF.

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, consulta Managing LF-Tags for metadata access control nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta UpdateLfTag in AWS CLI Command 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 Reading from and writing to the data lake within transactions nella Guida per gli sviluppatori di AWS Lake Formation.

  • Per informazioni dettagliate sull’API, consulta UpdateTableObjects in AWS CLI Command Reference.