Überlegungen und Einschränkungen - Amazon EMR

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Überlegungen und Einschränkungen

General

Beachten Sie die folgenden Einschränkungen bei der Verwendung von Lake Formation mit EMR Serverless.

Anmerkung

Wenn Sie Lake Formation für einen Spark-Job auf EMR Serverless aktivieren, startet der Job einen Systemtreiber und einen Benutzertreiber. Wenn Sie beim Start vorinitialisierte Kapazität angegeben haben, werden die Treiber anhand der vorinitialisierten Kapazität bereitgestellt, und die Anzahl der Systemtreiber entspricht der Anzahl der von Ihnen angegebenen Benutzertreiber. Wenn Sie On-Demand-Kapazität wählen, startet EMR Serverless zusätzlich zu einem Benutzertreiber auch einen Systemtreiber. Um die Kosten zu schätzen, die mit Ihrem EMR Serverless with Lake Formation Formation-Job verbunden sind, verwenden Sie den. AWS Pricing Calculator

  • Lake Formation-fähige Anwendungen unterstützen die Verwendung von benutzerdefinierten EMR Serverless-Images nicht.

  • Du kannst nicht DynamicResourceAllocation für Jobs in Lake Formation abschalten.

  • Sie können Lake Formation nur mit Spark-Aufträgen verwenden.

  • EMR Serverless mit Lake Formation unterstützt nur eine einzige Spark-Sitzung während eines Jobs.

  • EMR Serverless with Lake Formation unterstützt nur kontenübergreifende Tabellenabfragen, die über Ressourcenlinks gemeinsam genutzt werden.

  • Folgendes wird nicht unterstützt:

    • Resilient Distributed Datasets (RDD)

    • Spark-Streaming

    • Zugriffskontrolle für verschachtelte Spalten

  • EMR Serverless blockiert Funktionen, die die vollständige Isolierung des Systemtreibers untergraben könnten, darunter die folgenden:

    • UDTs, Hive und alle benutzerdefinierten FunktionenUDFs, die benutzerdefinierte Klassen beinhalten

    • Benutzerdefinierte Datenquellen

    • Bereitstellung zusätzlicher JARs für Spark-Erweiterungen, Connectors oder Metastore

    • ANALYZE TABLE command

  • Wenn sich Ihre EMR-Serverless-Anwendung in einem privaten Subnetz mit VPC-Endpunkten für Amazon S3 befindet und Sie eine Endpunktrichtlinie zur Zugriffskontrolle anhängen, müssen Sie, bevor Ihre Jobs Protokolldaten an AWS Managed Amazon S3 senden können, die unter Verwalteter Speicher aufgeführten Berechtigungen in Ihre VPC-Richtlinie für den S3-Gateway-Endpunkt aufnehmen. Wenden Sie sich bei Anfragen zur Fehlerbehebung an den Support. AWS

  • Ab Amazon EMR 7.9.0 unterstützt Spark FGAC das AFile S3-System, wenn es mit dem s3a://-Schema verwendet wird.

  • Amazon EMR 7.11 unterstützt die Erstellung verwalteter Tabellen mithilfe von CTAS.

  • Amazon EMR 7.12 unterstützt die Erstellung verwalteter und externer Tabellen mithilfe von CTAS.

Berechtigungen

  • Um Zugriffskontrollen durchzusetzen, geben EXPLAIN PLAN und DDL-Operationen wie DESCRIBE TABLE keine eingeschränkten Informationen preis.

  • Wenn Sie einen Tabellenstandort bei Lake Formation registrieren, verwendet der Datenzugriff die in Lake Formation gespeicherten Anmeldeinformationen anstelle der IAM-Berechtigungen der EMR-Serverless-Joblaufzeitrolle. Jobs schlagen fehl, wenn die registrierte Rolle für den Tabellenspeicherort falsch konfiguriert ist, auch wenn die Runtime-Rolle über S3-IAM-Berechtigungen für diesen Speicherort verfügt.

  • Ab Amazon EMR 7.12 können Sie mithilfe von DataFrameWriter (V2) mit Lake Formation Formation-Anmeldeinformationen im Anfügemodus in bestehende Hive- und Iceberg-Tabellen schreiben. Bei Überschreibvorgängen oder beim Erstellen neuer Tabellen verwendet EMR die Anmeldeinformationen der Runtime-Rolle, um Tabellendaten zu ändern.

  • Die folgenden Einschränkungen gelten, wenn Ansichten oder zwischengespeicherte Tabellen als Quelldaten verwendet werden (diese Einschränkungen gelten nicht für AWS Glue Data Catalog-Ansichten):

    • Für MERGE-, DELETE- und UPDATE-Operationen

      • Unterstützt: Verwenden von Ansichten und zwischengespeicherten Tabellen als Quelltabellen.

      • Nicht unterstützt: Verwendung von Ansichten und zwischengespeicherten Tabellen in Zuweisungs- und Bedingungsklauseln.

    • Für die Operationen CREATE OR REPLACE und REPLACE TABLE AS SELECT:

      • Nicht unterstützt: Verwenden von Ansichten und zwischengespeicherten Tabellen als Quelltabellen.

  • Delta Lake-Tabellen mit UDFs Quelldaten unterstützen MERGE-, DELETE- und UPDATE-Operationen nur, wenn der Löschvektor aktiviert ist.

Protokolle und Debugging

  • EMR Serverless schränkt den Zugriff auf Systemtreiber-Spark-Protokolle für Lake Formation-fähige Anwendungen ein. Da der Systemtreiber mit erhöhten Rechten ausgeführt wird, können Ereignisse und Protokolle, die der Systemtreiber generiert, vertrauliche Informationen enthalten. Um zu verhindern, dass unbefugte Benutzer oder Code auf diese sensiblen Daten zugreifen, deaktiviert EMR Serverless den Zugriff auf Systemtreiberprotokolle.

  • Systemprofilprotokolle werden immer im verwalteten Speicher gespeichert — dies ist eine obligatorische Einstellung, die nicht deaktiviert werden kann. Diese Protokolle werden sicher gespeichert und entweder mit einem vom Kunden verwalteten KMS-Schlüssel oder einem AWS verwalteten KMS-Schlüssel verschlüsselt.

Iceberg

Beachten Sie die folgenden Überlegungen bei der Verwendung von Apache Iceberg:

  • Sie können Apache Iceberg nur mit Sitzungskatalogen und nicht mit beliebig benannten Katalogen verwenden.

  • Iceberg-Tabellen, die in Lake Formation registriert sind, unterstützen nur die Metadatentabellen historymetadata_log_entries,snapshots,files,manifests, undrefs. Amazon EMR blendet die Spalten aus, die möglicherweise vertrauliche Daten wie partitionspath, und enthalten. summaries Diese Einschränkung gilt nicht für Iceberg-Tabellen, die nicht in Lake Formation registriert sind.

  • Tabellen, die nicht in Lake Formation registriert sind, unterstützen alle gespeicherten Iceberg-Prozeduren. Die Prozeduren register_table und migrate werden für keine Tabellen unterstützt.

  • Wir empfehlen, Iceberg DataFrameWriter V2 anstelle von V1 zu verwenden.