View a markdown version of this page

Abfragen konfigurierter Tabellen mithilfe einer SQL-Analysevorlage - AWS Clean Rooms

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.

Abfragen konfigurierter Tabellen mithilfe einer SQL-Analysevorlage

Dieses Verfahren zeigt, wie Sie eine Analysevorlage in der AWS Clean Rooms Konsole verwenden, um konfigurierte Tabellen mit der benutzerdefinierten Analyseregel abzufragen.

Um eine SQL-Analysevorlage zur Abfrage konfigurierter Tabellen mit dem zu verwenden Benutzerdefiniert Analyseregel
  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die AWS Clean Rooms Konsole unter https://console.aws.amazon.com/cleanrooms.

  2. Wählen Sie im linken Navigationsbereich Collaborations aus.

  3. Wählen Sie die Kollaboration aus, für die der Status Ihrer Mitgliederfähigkeiten den Status Abfragen ausführen lautet.

  4. Sehen Sie sich auf der Registerkarte Analyse im Abschnitt Tabellen die Tabellen und den zugehörigen Analyseregeltyp an (benutzerdefinierte Analyseregel).

    Anmerkung

    Wenn Sie die erwarteten Tabellen nicht in der Liste sehen, kann das folgende Gründe haben:

  5. Wählen Sie im Abschnitt Analyse für den Analysemodus die Option Analysevorlagen ausführen aus und wählen Sie dann die Analysevorlage aus der Dropdownliste aus.

  6. Die Parameter aus der SQL-Analysevorlage werden automatisch in die Definition übernommen.

  7. Geben Sie den unterstützten Worker-Typ und die Anzahl der Worker an.

    Ermitteln Sie anhand der folgenden Tabelle den Typ und die Anzahl der Mitarbeiter, die Sie für Ihren Anwendungsfall benötigen.

    Worker type (Worker-Typ) vCPU Speicher (GB) Speicher (GB) Number of workers (Anzahl der Worker) Gesamtzahl der Verarbeitungseinheiten für Reinräume (CRPU)
    CR.1X (Standard) 4 30 100 4 8
    128 256
    CR.4X 16 120 400 4 32
    32 256
    Anmerkung

    Verschiedene Arten von Arbeitnehmern und deren Anzahl sind mit Kosten verbunden. Weitere Informationen zu den Preisen finden Sie unter AWS Clean Rooms Preisgestaltung.

  8. Geben Sie die unterstützten Spark-Eigenschaften an.

    1. Wählen Sie Spark-Eigenschaften hinzufügen aus.

    2. Wählen Sie im Dialogfeld „Spark-Eigenschaften“ einen Eigenschaftsnamen aus der Dropdownliste aus und geben Sie einen Wert ein.

    Die folgenden Tabellen enthalten eine Definition für jede Eigenschaft.

    Weitere Informationen zu Spark-Eigenschaften finden Sie unter Spark-Eigenschaften in der Apache Spark-Dokumentation.

    Anmerkung

    Sie können maximal 50 Spark-Eigenschaften konfigurieren. Jeder Eigenschaftswert kann bis zu 500 Zeichen lang sein.

    Eigenschaftenname Description Standardwert

    spark.task.maxFailures

    Steuert, wie oft eine Aufgabe hintereinander fehlschlagen kann, bevor der Job fehlschlägt. Erfordert einen Wert größer oder gleich 1. Die Anzahl der zulässigen Wiederholungen entspricht diesem Wert minus 1. Die Anzahl der Fehlschläge wird zurückgesetzt, wenn ein Versuch erfolgreich ist. Fehler bei verschiedenen Aufgaben summieren sich nicht bis zu diesem Limit.

    4

    spark.sql.files.max PartitionBytes

    Legt die maximale Anzahl von Byte fest, die beim Lesen aus dateibasierten Quellen wie Parquet, JSON und ORC in eine einzelne Partition gepackt werden sollen.

    128 MB

    spark.hadoop.fs.s3.max versucht es erneut

    Legt die maximale Anzahl von Wiederholungsversuchen für Amazon S3 S3-Dateioperationen fest.

    (Keine)

    spark.network.timeout

    Legt das Standard-Timeout für alle Netzwerkinteraktionen fest. Setzt die folgenden Timeout-Einstellungen außer Kraft, wenn sie nicht konfiguriert sind:

    • spark.storage.block ManagerHeartbeatTimeoutMs

    • spark.shuffle.io.ConnectionTimeout

    • spark.rpc.AskTimeout

    • spark.rpc.LookupTimeout

    120 s

    spark.rdd.com/presse

    Gibt an, ob serialisierte RDD-Partitionen mit spark.io.compression.codec komprimiert werden sollen. Gilt für StorageLevel.MEMORY _ONLY_SER in Java und Scala oder StorageLevel.MEMORY _ONLY in Python. Reduziert den Speicherplatz, erfordert jedoch zusätzliche CPU-Verarbeitungszeit.

    false

    spark.shuffle.spill.com/press

    Gibt an, ob Shuffle-Spill-Daten mit spark.io.compression.codec komprimiert werden sollen.

    true

    spark.shuffle.com/press

    Gibt an, ob Map-Ausgabedateien komprimiert werden sollen. Bei der Komprimierung wird spark.io.compression.codec verwendet.

    true

    spark.shuffle.service.index.cache.size

    Legt die Cache-Größenbeschränkung in Byte fest, sofern nicht anders angegeben.

    100 m

    spark.shuffle.io.max versucht es erneut

    Legt die maximale Anzahl von Wiederholungen für Abrufe fest, die aufgrund von Ausnahmen fehlschlagen. IO-related

    3

    spark.shuffle.io.RetryWait

    Legt die Wartezeit zwischen Wiederholungsversuchen von Abrufen fest. Die maximale Verzögerung, die durch einen erneuten Versuch verursacht wird, beträgt standardmäßig 15 Sekunden, berechnet als MaxRetries * RetryWait.

    5s

    spark.shuffle.io.ConnectionTimeout

    Legt fest, dass das Timeout für hergestellte Verbindungen zwischen Shuffle-Servern und Clients als inaktiv markiert und geschlossen wird, wenn noch offene Abrufanforderungen, aber kein Verkehr auf dem Kanal vorhanden sind.

    (Wert von spark.network.timeout)

    spark.driver.max ResultSize

    Legt die Gesamtgrößenbeschränkung der serialisierten Ergebnisse aller Partitionen für jede Spark-Aktion in Byte fest. Sollte mindestens 1 MB oder 0 für unbegrenzt sein.

    1 g

    spark.memory.fraction

    Legt den Bruchteil von (Heap-Speicherplatz — 300 MB) fest, der für Ausführung und Speicherung verwendet wird. Je niedriger dieser Wert ist, desto häufiger kommt es zu Datenverlusten und zum Löschen zwischengespeicherter Daten. Es wird empfohlen, diesen Wert auf dem Standardwert zu belassen.

    0.6

    spark.scheduler.mode

    Legt den Zeitplanungsmodus zwischen Jobs fest, die an denselben Server weitergeleitet werden. SparkContext Kann auf FAIR gesetzt werden, um Fair Sharing zu verwenden, anstatt Jobs nacheinander in die Warteschlange zu stellen. Unterstützte Werte: FAIR, FIFO.

    FIFO

    spark.sql.adaptive.advisory PartitionSizeInBytes

    Legt die Zielgröße in Byte für Shuffle-Partitionen während der adaptiven Optimierung fest, wenn spark.sql.adaptive.enabled den Wert true hat. Steuert die Partitionsgröße beim Zusammenführen kleiner Partitionen oder beim Teilen schiefer Partitionen.

    (Wert von spark.sql.adaptive.shuffle.target) PostShuffleInputSize

    spark.sql.adaptive.auto BroadcastJoinThreshold

    Legt die maximale Tabellengröße in Byte für die Übertragung an Worker-Knoten bei Joins fest. Gilt nur im adaptiven Framework. Verwendet denselben Standardwert wie BroadcastJoinThreshold spark.sql.auto. Auf -1 setzen, um die Übertragung zu deaktivieren.

    (Keine)

    spark.sql.adaptive.coalesce Partitions.enabled

    Gibt an, ob zusammenhängende Shuffle-Partitionen, die auf spark.sql.adaptive.advisory basieren, zusammengeführt werden sollen, um die Aufgabengröße zu optimieren. PartitionSizeInBytes Erfordert, dass spark.sql.adaptive.enabled den Wert true hat.

    true

    spark.sql.adaptive.coalesce Partitions.initialPartitionNum

    Definiert die anfängliche Anzahl von Shuffle-Partitionen vor dem Zusammenführen. Erfordert, dass sowohl spark.sql.adaptive.enabled als auch spark.sql.adaptive.coalesce den Wert true haben. Partitions.enabled Der Standardwert ist der Wert von spark.sql.shuffle.partitions.

    (Keine)

    spark.sql.adaptive.coalesce Partitions.minPartitionSize

    Legt die Mindestgröße für zusammengeführte Shuffle-Partitionen fest, um zu verhindern, dass Partitionen während der adaptiven Optimierung zu klein werden.

    1 MB

    spark.sql.adaptive.coalesce Partitions.parallelismFirst

    Gibt an, ob die Partitionsgrößen beim Zusammenführen von Partitionen auf der Grundlage der Cluster-Parallelität und nicht auf der Grundlage von spark.sql.adaptive.advisory berechnet werden sollen. PartitionSizeInBytes Generiert kleinere Partitionsgrößen als die konfigurierte Zielgröße, um die Parallelität zu maximieren. Wir empfehlen, diesen Wert bei stark frequentierten Clustern auf „False“ zu setzen, um die Ressourcennutzung zu verbessern und übermäßig kleine Aufgaben zu vermeiden.

    true

    spark.sql.adaptive.enabled

    Gibt an, ob die adaptive Abfrageausführung aktiviert werden soll, um Abfragepläne während der Abfrageausführung auf der Grundlage genauer Laufzeitstatistiken erneut zu optimieren.

    true

    spark.sql.adaptive.force OptimizeSkewedJoin

    Gibt an, ob die Aktivierung OptimizeSkewedJoin erzwungen werden soll, auch wenn dadurch zusätzlicher Shuffle eingeführt wird.

    false

    spark.sql.adaptive.local ShuffleReader.enabled

    Gibt an, ob lokale Shuffle-Reader verwendet werden sollen, wenn die Shuffle-Partitionierung nicht erforderlich ist, z. B. nach der Konvertierung von Sort-Merge-Joins in Broadcast-Hash-Joins. Erfordert, dass spark.sql.adaptive.enabled den Wert true hat.

    true

    spark.sql.adaptive.max ShuffledHashJoinLocalMapThreshold

    Legt die maximale Partitionsgröße in Byte für die Erstellung lokaler Hash-Maps fest. Priorisiert gemischte Hash-Joins gegenüber Sort-Merge-Joins, wenn:

    • Dieser Wert entspricht oder übersteigt spark.sql.adaptive.advisory PartitionSizeInBytes

    • Alle Partitionsgrößen liegen innerhalb dieses Grenzwerts

    Setzt die Einstellung spark.sql.join.prefer SortMergeJoin außer Kraft.

    0 Byte

    spark.sql.adaptive.optimize SkewsInRebalancePartitions.enabled

    Gibt an, ob schiefe Shuffle-Partitionen optimiert werden sollen, indem sie auf der Grundlage von spark.sql.adaptive.advisory in kleinere Partitionen aufgeteilt werden. PartitionSizeInBytes Erfordert, dass spark.sql.adaptive.enabled den Wert true hat.

    true

    spark.sql.adaptive.rebalance PartitionsSmallPartitionFactor

    Definiert den Größenschwellenwert für das Zusammenführen von Partitionen beim Teilen. Partitionen, die kleiner sind als dieser Faktor multipliziert mit PartitionSizeInBytes spark.sql.adaptive.advisory, werden zusammengeführt.

    0.2

    spark.sql.adaptive.skew Join.enabled

    Gibt an, ob Datenverzerrungen in gemischten Verknüpfungen behandelt werden sollen, indem schiefe Partitionen aufgeteilt und optional repliziert werden. Gilt für Sort-Merge- und gemischte Hash-Joins. Erfordert, dass spark.sql.adaptive.enabled wahr ist.

    true

    spark.sql.adaptive.skew Join.skewedPartitionFactor

    Bestimmt den Größenfaktor, der den Partitionsversatz bestimmt. Eine Partition ist schief, wenn ihre Größe beide Werte überschreitet:

    • Dieser Faktor wird mit der mittleren Partitionsgröße multipliziert

    • Der Wert von spark.sql.adaptive.skew Join.skewedPartitionThresholdInBytes

    5

    spark.sql.adaptive.skew Join.skewedPartitionThresholdInBytes

    Legt den Größenschwellenwert in Byte zur Identifizierung schiefer Partitionen fest. Eine Partition ist schief, wenn ihre Größe beide Werte überschreitet:

    • Dieser Schwellenwert

    • Die mittlere Partitionsgröße multipliziert mit spark.sql.adaptive.skew Join.skewedPartitionFactor

    Wir empfehlen, diesen Wert größer als spark.sql.adaptive.advisory festzulegen. PartitionSizeInBytes

    256 MB

    spark.sql.BroadcastTimeout

    Steuert den Timeout-Zeitraum in Sekunden für die Broadcast-Operationen bei Broadcast-Joins.

    300 Sekunden

    spark.sql.cbo.enabled

    Gibt an, ob die kostenbasierte Optimierung (CBO) für die Schätzung von Planstatistiken aktiviert werden soll.

    false

    spark.sql.cbo.join Reorder.dp.star.filter

    Gibt an, ob bei der kostenbasierten Join-Aufzählung Heuristiken des Star-Join-Filters angewendet werden sollen.

    false

    spark.sql.cbo.join Reorder.dp.threshold

    Legt die maximale Anzahl verbundener Knoten fest, die im dynamischen Programmieralgorithmus zulässig sind.

    12

    spark.sql.cbo.join Reorder.enabled

    Gibt an, ob die Neuordnung von Verknüpfungen bei der kostenbasierten Optimierung (CBO) aktiviert werden soll.

    false

    spark.sql.cbo.plan Stats.enabled

    Gibt an, ob bei der Generierung logischer Pläne Zeilenanzahl und Spaltenstatistiken aus dem Katalog abgerufen werden sollen.

    false

    spark.sql.cbo.star SchemaDetection

    Gibt an, ob die Neuordnung von Verknüpfungen auf der Grundlage der Star-Schemaerkennung aktiviert werden soll.

    false

    spark.sql.files.max PartitionNum

    Legt die maximale Zielanzahl von geteilten Dateipartitionen für dateibasierte Quellen (Parquet, JSON und ORC) fest. Skaliert Partitionen neu, wenn die anfängliche Anzahl diesen Wert überschreitet. Dies ist ein empfohlenes Ziel, kein garantiertes Limit.

    (Keine)

    spark.sql.files.max RecordsPerFile

    Legt die maximale Anzahl von Datensätzen fest, die in eine einzelne Datei geschrieben werden können. Wenn der Wert auf Null oder einen negativen Wert gesetzt ist, gilt kein Limit.

    0

    spark.sql.files.min PartitionNum

    Legt die angestrebte Mindestanzahl von geteilten Dateipartitionen für dateibasierte Quellen (Parquet, JSON und ORC) fest. Die Standardeinstellung ist spark.sql.leaf. NodeDefaultParallelism Dies ist ein empfohlenes Ziel, kein garantiertes Limit.

    (Keine)

    spark.sql.in MemoryColumnarStorage.batchSize

    Steuert die Batchgröße für das spaltenförmige Caching. Eine Erhöhung der Größe verbessert die Speichernutzung und Komprimierung, erhöht jedoch das Risiko von Fehlern aufgrund unzureichender Speicherkapazität.

    10000

    spark.sql.in MemoryColumnarStorage.compressed

    Gibt an, ob Kompressionscodecs für Spalten auf der Grundlage von Datenstatistiken automatisch ausgewählt werden sollen.

    true

    spark.sql.in MemoryColumnarStorage.enableVectorizedReader

    Gibt an, ob vektorisiertes Lesen für das spaltenorientierte Zwischenspeichern aktiviert werden soll.

    true

    spark.sql.legacy.allow HashOnMapType

    Gibt an, ob Hash-Operationen für Map-Datenstrukturen zulässig sind. Diese Legacy-Einstellung gewährleistet die Kompatibilität mit der Map-Typ-Behandlung älterer Spark-Versionen.

    (Keine)

    spark.sql.legacy.allow NegativeScaleOfDecimal

    Gibt an, ob negative Skalenwerte in Dezimaltypdefinitionen zulässig sind. Diese ältere Einstellung gewährleistet die Kompatibilität mit älteren Spark-Versionen, die negative Dezimalskalen unterstützten.

    (Keine)

    spark.sql.legacy.cast ComplexTypesToString.enabled

    Gibt an, ob das veraltete Verhalten für die Umwandlung komplexer Typen in Zeichenketten aktiviert werden soll. Behält die Kompatibilität mit den Typkonvertierungsregeln älterer Spark-Versionen bei.

    (Keine)

    spark.sql.legacy.char VarcharAsString

    Gibt an, ob die Typen CHAR und VARCHAR als STRING-Typen behandelt werden sollen. Diese Legacy-Einstellung bietet Kompatibilität mit der Verarbeitung von String-Typen in älteren Spark-Versionen.

    (Keine)

    spark.sql.legacy.create EmptyCollectionUsingStringType

    Gibt an, ob leere Sammlungen mithilfe von Elementen vom Typ Zeichenfolge erstellt werden sollen. Diese Legacy-Einstellung gewährleistet die Kompatibilität mit dem Verhalten älterer Spark-Versionen bei der Initialisierung von Sammlungen.

    (Keine)

    spark.sql.legacy.exponent LiteralAsDecimal.enabled

    Gibt an, ob exponentielle Literale als Dezimaltypen interpretiert werden sollen. Diese Legacy-Einstellung gewährleistet die Kompatibilität mit der numerischen Literalverarbeitung älterer Spark-Versionen.

    (Keine)

    spark.sql.legacy.json.allow EmptyString.enabled

    Gibt an, ob leere Zeichenketten bei der JSON-Verarbeitung zulässig sind. Diese Legacy-Einstellung gewährleistet die Kompatibilität mit dem JSON-Parsing-Verhalten älterer Spark-Versionen.

    (Keine)

    spark.sql.legacy.parquet.int96 RebaseModelRead

    Gibt an, ob beim Lesen von Parquet-Dateien der alte INT96-Timestamp-Rebase-Modus verwendet werden soll. Diese Legacy-Einstellung gewährleistet die Kompatibilität mit der Zeitstempelverarbeitung älterer Spark-Versionen.

    (Keine)

    spark.sql.legacy.time ParserPolicy

    Steuert das Verhalten bei der Zeitanalyse aus Gründen der Abwärtskompatibilität. Diese ältere Einstellung bestimmt, wie Zeitstempel und Datumsangaben anhand von Zeichenketten analysiert werden.

    (Keine)

    spark.sql.legacy.type Coercion.datetimeToString.enabled

    Gibt an, ob das Zwangsverhalten älterer Typen bei der Konvertierung von Datetime-Werten in Zeichenketten aktiviert werden soll. Behält die Kompatibilität mit den Datetime-Konvertierungsregeln älterer Spark-Versionen bei.

    (Keine)

    spark.sql.max SinglePartitionBytes

    Legt die maximale Partitionsgröße in Byte fest. Der Planer führt Shuffle-Operationen für größere Partitionen ein, um die Parallelität zu verbessern.

    128 m

    spark.sql.MetadatacacheTTL Sekunden

    Steuert die Time-to-Live (TTL) für Metadaten-Caches. Gilt für Metadaten von Partitionsdateien und Sitzungskatalog-Caches. Erfordert:

    • Ein positiver Wert größer als Null

    • spark.sql.CatalogImplementation ist auf Hive gesetzt

    • PartitionFileCacheSize spark.sql.hive.filesource größer als Null

    • spark.sql.hive.manage auf true gesetzt FilesourcePartitions

    -1000 ms

    spark.sql.optimizer.collapse ProjectAlwaysInline

    Gibt an, ob benachbarte Projektionen und Inline-Ausdrücke ausgeblendet werden sollen, auch wenn dies zu Duplizierungen führt.

    false

    spark.sql.optimizer.dynamic PartitionPruning.enabled

    Gibt an, ob Prädikate für Partitionsspalten generiert werden sollen, die als Join-Schlüssel verwendet werden.

    true

    spark.sql.optimizer.enable CsvExpressionOptimization

    Gibt an, ob CSV-Ausdrücke im SQL-Optimizer optimiert werden sollen, indem unnötige Spalten aus from_csv-Vorgängen entfernt werden.

    true

    spark.sql.optimizer.enable JsonExpressionOptimization

    Gibt an, ob JSON-Ausdrücke im SQL-Optimizer wie folgt optimiert werden sollen:

    • Löschen unnötiger Spalten aus from_json-Vorgängen

    • Vereinfachung der Kombinationen from_json und to_json

    • Optimierung von named_struct-Operationen

    true

    spark.sql.Optimizer.ExcludedRules

    Definiert zu deaktivierende Optimizer-Regeln, identifiziert durch kommagetrennte Regelnamen. Einige Regeln können nicht deaktiviert werden, da sie aus Gründen der Richtigkeit erforderlich sind. Der Optimizer protokolliert, welche Regeln erfolgreich deaktiviert wurden.

    (Keine)

    spark.sql.optimizer.runtime.bloom Filter.applicationSideScanSizeThreshold

    Legt die minimale aggregierte Scangröße in Byte fest, die erforderlich ist, um einen Bloom-Filter auf der Anwendungsseite einzufügen.

    10 GB

    spark.sql.optimizer.runtime.bloom Filter.creationSideThreshold

    Definiert den maximalen Größenschwellenwert für das Einfügen eines Bloom-Filters auf der Erstellungsseite.

    10 MB

    spark.sql.optimizer.runtime.bloom Filter.enabled

    Gibt an, ob ein Bloom-Filter eingefügt werden soll, um Shuffle-Daten zu reduzieren, wenn eine Seite eines Shuffle-Joins ein selektives Prädikat hat.

    true

    spark.sql.optimizer.runtime.bloom Filter.expectedNumItems

    Definiert die Standardanzahl erwarteter Elemente im Runtime-Bloom-Filter.

    1000000

    spark.sql.optimizer.runtime.bloom Filter.maxNumBits

    Legt die maximale Anzahl von Bits fest, die im Runtime-Bloom-Filter zulässig sind.

    67108864

    spark.sql.optimizer.runtime.bloom Filter.maxNumItems

    Legt die maximale Anzahl erwarteter Elemente fest, die im Runtime-Bloom-Filter zulässig sind.

    4000000

    spark.sql.optimizer.runtime.bloom Filter.numBits

    Definiert die Standardanzahl von Bits, die im Runtime-Bloom-Filter verwendet werden.

    8388608

    spark.sql.optimizer.runtime.rowlevel OperationGroupFilter.enabled

    Gibt an, ob die Laufzeitgruppenfilterung für Operationen auf Zeilenebene aktiviert werden soll. Ermöglicht Datenquellen:

    • Löschen ganzer Datengruppen (wie Dateien oder Partitionen) mithilfe von Datenquellenfiltern

    • Führen Sie Laufzeitabfragen aus, um übereinstimmende Datensätze zu identifizieren

    • Verwerfen Sie unnötige Gruppen, um teure Neuschreibungen zu vermeiden

    Einschränkungen:

    • Nicht alle Ausdrücke können in Datenquellenfilter konvertiert werden

    • Einige Ausdrücke erfordern eine Spark-Auswertung (z. B. Unterabfragen)

    true

    spark.sql.optimizer.runtime Filter.number.threshold

    Legt die Gesamtzahl der injizierten Laufzeitfilter (ohne DPP) fest. Dies dient dazu, Treiber-OOMs mit zu vielen Bloom-Filtern zu verhindern.

    10

    spark.sql.optimizer.runtime Filter.semiJoinReduction.enabled

    Gibt an, ob ein Semi-Join eingefügt werden soll, um Shuffle-Daten zu reduzieren, wenn eine Seite eines Shuffle-Joins ein selektives Prädikat hat.

    false

    spark.sql.parquet.AggregatePushDown

    Gibt an, ob Aggregate zur Optimierung nach Parquet übertragen werden sollen. Unterstützt:

    • MIN und MAX für die Typen Boolean, Integer, Float und Date

    • COUNT für alle Datentypen

    Löst eine Ausnahme aus, wenn Statistiken in einer Fußzeile einer Parquet-Datei fehlen.

    false

    spark.sql.parquet.columnar ReaderBatchSize

    Steuert die Anzahl der Zeilen in jedem vektorisierten Parquet-Reader-Stapel. Wählen Sie einen Wert, der den Leistungsaufwand und die Speichernutzung in Einklang bringt, um Fehler bei unzureichendem Arbeitsspeicher zu vermeiden.

    4096

    spark.sql.parquet.enable VectorizedReader

    Gibt an, ob die vektorisierte Parquet-Decodierung aktiviert werden soll.

    true

    spark.sql.shuffle.partitions

    Legt die Standardanzahl von Partitionen für das Mischen von Daten bei Verknüpfungen oder Aggregationen fest. Kann zwischen Neustarts strukturierter Streaming-Abfragen von derselben Checkpoint-Position aus nicht geändert werden.

    200

    spark.sql.shuffled HashJoinFactor

    Definiert den Multiplikationsfaktor, der verwendet wird, um die Eignung für einen Shuffle-Hash-Join zu bestimmen. Ein Shuffle-Hash-Join wird ausgewählt, wenn die Datengröße der kleinen Seite multipliziert mit diesem Faktor kleiner als die Datengröße der großen Seite ist.

    3

    spark.sql.sources.parallel PartitionDiscovery.threshold

    Legt die maximale Anzahl von Pfaden für die treiberseitige Dateiauflistung mit dateibasierten Quellen (Parquet, JSON und ORC) fest. Wenn sie bei der Partitionserkennung überschritten werden, werden Dateien mithilfe eines separaten verteilten Spark-Jobs aufgelistet.

    32

    spark.sql.statistics.histogram.enabled

    Gibt an, ob bei der Berechnung der Spaltenstatistiken Histogramme mit gleicher Höhe generiert werden sollen, um die Schätzgenauigkeit zu verbessern. Erfordert einen zusätzlichen Tabellenscan, der über den für einfache Spaltenstatistiken erforderlichen hinausgeht.

    false

    spark.dynamic Allocation.executorIdleTimeout

    Legt fest, wie lange ein Executor inaktiv sein muss, bevor er entfernt wird, wenn die dynamische Zuweisung aktiviert ist.

    60er

    spark.dynamisch Allocation.schedulerBacklogTimeout

    Legt fest, wie lange ausstehende Aufgaben zurückgestellt werden müssen, bevor neue Executoren angefordert werden, wenn die dynamische Zuweisung aktiviert ist.

    1s

    spark.dynamisch Allocation.sustainedSchedulerBacklogTimeout

    Wie spark.dynamicAllocation.schedulerBacklogTimeout, wird aber nur für nachfolgende Executor-Anfragen verwendet.

    (Wert von spark.dynamic) Allocation.schedulerBacklogTimeout

    spark.scheduler.min RegisteredResourcesRatio

    Legt das Mindestverhältnis registrierter Ressourcen (registrierte Ressourcen zu erwarteten Gesamtressourcen) fest, auf das gewartet werden soll, bevor die Planung beginnt. Wird als Double zwischen 0,0 und 1,0 angegeben. Unabhängig davon, ob das Mindestverhältnis der Ressourcen erreicht wurde, wird die maximale Wartezeit bis zum Beginn der Planung von RegisteredResourcesWaitingTime spark.scheduler.max gesteuert.

    0.8

    spark.scheduler.max RegisteredResourcesWaitingTime

    Legt die maximale Wartezeit für die Registrierung von Ressourcen fest, bevor die Planung beginnt.

    30s

    spark.sql.hive.metastore PartitionPruningFallbackOnException

    Gibt an, ob auf das Abrufen aller Partitionen aus dem Hive-Metastore zurückgegriffen und Partitionsbereinigungen auf der Spark-Client-Seite durchgeführt werden sollen, wenn ein Zugriff aus dem Metastore erfolgt. MetaException

    false

    Eigenschaftenname Description Standardwert

    spark.sql.auto BroadcastJoinThreshold

    Legt die maximale Tabellengröße in Byte für die Übertragung an Worker-Knoten bei Joins fest. Auf -1 setzen, um die Übertragung zu deaktivieren.

    10 MB (-1 für CR.4X 32 Arbeiter)

    spark.dynamic Allocation.enabled

    Gibt an, ob die dynamische Ressourcenzuweisung verwendet werden soll, bei der die Anzahl der für diese Anwendung registrierten Executoren je nach Arbeitslast nach oben oder unten skaliert wird.

    true

    spark.io.compression.codec

    Legt den Codec fest, der zum Komprimieren interner Daten wie RDD-Partitionen, Ereignisprotokolle, Broadcast-Variablen und Shuffle-Ausgaben verwendet wird. Unterstützte Werte: lz4, snappy, zstd, gzip.

    snappy

    spark.sql.session.TimeZone

    Definiert die Sitzungszeitzone für die Verarbeitung von Zeitstempeln in Zeichenfolgenliteralen und die Konvertierung von Java-Objekten. Akzeptiert:

    • Region-based IDs im area/city Format (z. B. America/Los _Angeles)

    • Zonenversätze im HH:mm:ss Format (+/-) HH, (+/-) HH:mm oder (+/-) (z. B. -08 oder + 01:00)

    • UTC oder Z als Aliase für + 00:00

    UTC

  9. (Optional) Wählen Sie unter Compute Payer das Collaboration-Mitglied aus, das die Rechenkosten für Abfragen bezahlt.

    Anmerkung

    Wenn es in der Kollaboration nur einen Kandidaten für Query Compute gibt, wird standardmäßig dieser Zahler verwendet.

  10. Klicken Sie auf Ausführen.

    Anmerkung

    Sie können die Abfrage nicht ausführen, wenn das Mitglied, das Ergebnisse erhalten kann, die Einstellungen für die Abfrageergebnisse nicht konfiguriert hat.

  11. Passen Sie die Parameter weiter an und führen Sie Ihre Abfrage erneut aus, oder klicken Sie auf die Schaltfläche +, um eine neue Abfrage auf einer neuen Registerkarte zu starten.