Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Apache Iceberg avec contrôle d'accès précis
Les versions 6.15.0 et supérieures d'Amazon EMR incluent la prise en charge d'un contrôle d'accès précis basé sur Apache Iceberg lorsque vous lisez et écrivez des données AWS Lake Formation avec Spark SQL. Amazon EMR prend en charge le contrôle d’accès au niveau des tables, des lignes, des colonnes et des cellules avec Apache Iceberg. Grâce à cette fonctionnalité, vous pouvez exécuter des requêtes instantanées sur copy-on-write des tables pour demander le dernier instantané de la table à un instant de validation ou de compactage donné.
Si vous souhaitez utiliser le format Iceberg, définissez les configurations suivantes. Remplacez-le par le chemin Amazon S3 où se trouvent vos tables Iceberg, et remplacez les espaces réservés à la région et à l'ID de compte par vos propres valeurs.DB_LOCATION
spark-sql \ --conf spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions --conf spark.sql.catalog.spark_catalog=org.apache.iceberg.spark.SparkSessionCatalog --conf spark.sql.catalog.spark_catalog.warehouse=s3://DB_LOCATION--conf spark.sql.catalog.spark_catalog.catalog-impl=org.apache.iceberg.aws.glue.GlueCatalog --conf spark.sql.catalog.spark_catalog.io-impl=org.apache.iceberg.aws.s3.S3FileIO --conf spark.sql.catalog.spark_catalog.glue.account-id=ACCOUNT_ID--conf spark.sql.catalog.spark_catalog.glue.id=ACCOUNT_ID--conf spark.sql.catalog.spark_catalog.client.region=AWS_REGION
Si vous souhaitez utiliser le format Iceberg sur les versions antérieures d'EMR, utilisez plutôt la commande suivante :
spark-sql \ --conf spark.sql.extensions=org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions,com.amazonaws.emr.recordserver.connector.spark.sql.RecordServerSQLExtension --conf spark.sql.catalog.spark_catalog=org.apache.iceberg.spark.SparkCatalog --conf spark.sql.catalog.spark_catalog.warehouse=s3://DB_LOCATION--conf spark.sql.catalog.spark_catalog.catalog-impl=org.apache.iceberg.aws.glue.GlueCatalog --conf spark.sql.catalog.spark_catalog.io-impl=org.apache.iceberg.aws.s3.S3FileIO --conf spark.sql.catalog.spark_catalog.glue.account-id=ACCOUNT_ID--conf spark.sql.catalog.spark_catalog.glue.id=ACCOUNT_ID--conf spark.sql.catalog.spark_catalog.client.assume-role.region=AWS_REGION--conf spark.sql.catalog.spark_catalog.lf.managed=true
La matrice de prise en charge suivante répertorie certaines fonctionnalités essentielles d’Apache Iceberg avec Lake Formation :
| Copie sur écriture | fusion sur lecture | |
|---|---|---|
|
Requêtes d’instantanés – Spark SQL |
✓ |
✓ |
|
Requêtes optimisées en lecture – Spark SQL |
✓ |
✓ |
|
Requêtes progressives |
✓ |
✓ |
|
Requêtes Time Travel |
✓ |
✓ |
|
Tables de métadonnées |
✓ |
✓ |
|
Commandes DML |
✓ |
✓ |
|
Commandes DML |
||
|
Requêtes de source de données Spark |
||
|
Écritures de source de données Spark |