Supported SQL Operators

This section documents all Xonai SQL operator support status. Operators not yet supported will fall back to the original Spark execution engine.

Operator

Parameters

Support

BatchScan

Output

Supported
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • calendar

  • year month

  • day time

  • array

  • struct

  • map

  • null

BroadcastExchange

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

unsupported types
  • calendar

  • array

  • struct

  • map

  • null

BroadcastHashJoin

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

unsupported types
  • calendar

  • array

  • struct

  • map

  • null

Coalesce

Input/Output

Supported
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • calendar

  • year month

  • day time

  • array

  • struct

  • map

  • null

Expand

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

unsupported types
  • calendar

  • array

  • struct

  • map

  • null

FileSourceScan (Parquet)

Output

Supported
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • calendar

  • year month

  • day time

  • array

  • struct

  • map

  • null

FileSourceScan (JSON)

Output

Supported
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • calendar

  • array

  • struct

  • map

  • null

FileSourceScan (ORC)

Output

Supported
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • calendar

  • array

  • struct

  • map

  • null

Filter

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

  • array of atomic types

  • struct

unsupported types
  • calendar

  • array of non atomic types

  • map

  • null

Generate

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • array of atomic types

unsupported types
  • calendar

  • array of non atomic types

  • struct

  • map

  • null

HashAggregate

Input

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

unsupported types
  • calendar

  • array

  • struct

  • map

  • null

Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

  • struct

unsupported types
  • calendar

  • array

  • map

  • null

ObjectHashAggregate

Input

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

unsupported types
  • calendar

  • array

  • struct

  • map

  • null

Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

  • struct

unsupported types
  • calendar

  • array

  • map

  • null

Project

Input

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • calendar

  • year month

  • day time

  • array

  • struct

  • map

unsupported types
  • null

Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • calendar

  • year month

  • day time

  • array of atomic types

  • struct

unsupported types
  • array of non atomic types

  • map

  • null

ShuffleExchange

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

  • array

  • struct

unsupported types
  • calendar

  • map

  • null

ShuffledHashJoin

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

unsupported types
  • calendar

  • array

  • struct

  • map

  • null

Sort

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

  • array

  • struct

unsupported types
  • calendar

  • map

  • null

SortAggregate

Input

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

unsupported types
  • calendar

  • array

  • struct

  • map

  • null

Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

  • struct

unsupported types
  • calendar

  • array

  • map

  • null

SortMergeJoin

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • array

  • struct

unsupported types
  • calendar

  • map

  • null

SubqueryBroadcast

Input/Output

Supported
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • calendar

  • array

  • struct

  • map

  • null

TakeOrderedAndProject

Input/Output

Partially Supported
supported types
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • year month

  • day time

unsupported types
  • calendar

  • array

  • struct

  • map

  • null

Union

Input/Output

Supported
  • boolean

  • byte

  • short

  • integer

  • long

  • float

  • double

  • decimal

  • string

  • binary

  • date

  • timestamp

  • calendar

  • array

  • struct

  • map

  • null

AggregateInPandas

available soon

ArrowEvalPython

available soon

BroadcastNestedLoopJoin

available soon

CartesianProduct

available soon

CollectLimit

available soon

CollectMetrics

available soon

CollectTail

available soon

DataWritingCommand

available soon

Debug

available soon

FlatMapGroupsInPandas

available soon

GlobalLimit

available soon

InMemoryTableScan

available soon

LocalLimit

available soon

LocalTableScan

available soon

MapInPandas

available soon

Range

available soon

Sample

available soon

Subquery

available soon

Window

available soon

WindowGroupLimit

available soon

WindowInPandas

available soon

WriteFiles

available soon


Last update: Jun 17, 2025