Qualification Tool — Supported Features#
Delta Lake Support#
This section outlines how the Qualification tool handles Delta Lake features and operations.
Version Compatibility
The Qualification tool takes a flexible approach to version compatibility:
No version validation: The tool does not validate Spark or Delta Lake versions because GPU and CPU clusters often run different software stacks.
No configuration validation: Spark configurations are not validated since GPU applications typically require different settings than CPU applications.
Reading Operations#
Delta Metadata Scans
The Qualification tool identifies Delta Lake metadata operations by detecting specific keywords (_delta_log, DeltaLogFileIndex) in file paths. When detected, the tool:
Marks the entire query as a Delta metadata scan (unsupported)
Flags the operation as unsupported on GPU
Parquet File Scans
When Delta Lake tables read their underlying Parquet files, the Qualification tool handles them as follows:
Treats as supported: These operations appear as standard Parquet reads in event logs and are marked as GPU-supported
Current limitations:
Cannot identify tables with deletion vectors (assumes all reads will work on GPU)
Does not recognize compaction operations
Write Operations#
The Qualification tool marks most write operations as supported on GPU, but has several current limitations:
General Limitations
Missing event log details: Some write operators lack sufficient information in Spark event logs
Table properties: Cannot identify table properties and configurations (assumes all operations will work on GPU)
Compaction operations: Does not recognize or properly handle compaction
Supported Write Operations
The following table shows which Delta Lake write operations are currently supported:
Operation |
Supported |
Detection Method |
Future Improvements |
|---|---|---|---|
AppendDataExecV1 |
☑️ Supported |
Detects |
|
OverwriteByExpressionExecV1 |
☑️ Supported |
Detects |
|
AtomicCreateTableAsSelect |
☑️ Supported |
Detects |
|
AtomicReplaceTableAsSelect |
☑️ Supported |
Detects |
|
SaveIntoDataSourceCommand |
☑️ Supported |
Basic detection (no specific pattern) |
Parse physical plan to extract arguments |
DeleteCommand |
☑️ Supported |
Basic detection (no specific pattern) |
Parse physical plan to extract arguments |
UpdateCommand |
☑️ Supported |
Basic detection (no specific pattern) |
Parse physical plan to extract arguments |
MergeIntoCommand |
☑️ Supported |
Basic detection (no specific pattern) |
Parse physical plan to extract arguments |
OptimizeTableCommand |
☑️ Supported |
Basic detection (no specific pattern) |
Parse physical plan to extract arguments |
DescribeDeltaHistoryCommand |
❌ Not Supported |
Not applicable |
None planned |
ShowPartitionsDeltaCommand |
❌ Not Supported |
Not applicable |
None planned |