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

Param(s)

Numeric Types

Misc. Types

Date/Time Types

Complex Types

byte

short

int

long

float

double

decimal

string

bin

bool

null

tstamp

date

calendar

array

map

struct

udt

AggregateInPandasExec

To be supported soon

ArrowEvalPythonExec

To be supported soon

BatchScanExec

Output

BroadcastExchangeExec

Input/Output

BroadcastHashJoinExec

Input/Output

BroadcastNestedLoopJoinExec

To be supported soon

CartesianProductExec

To be supported soon

CoalesceExec

Input/Output

CollectLimitExec

To be supported soon

CollectMetricsExec

To be supported soon

CollectTailExec

To be supported soon

DataWritingCommandExec

To be supported soon

DebugExec

To be supported soon

ExpandExec

Input/Output

FileSourceScanExec (Parquet)

Output

FileSourceScanExec (JSON)

Output

FileSourceScanExec (ORC)

Output

FilterExec

Input/Output

FlatMapGroupsInPandasExec

To be supported soon

GenerateExec

Input/Output

GlobalLimitExec

To be supported soon

HashAggregateExec

Input/Output

InMemoryTableScanExec

To be supported soon

LocalLimitExec

To be supported soon

MapInPandasExec

To be supported soon

ObjectHashAggregateExec

Input/Output

ProjectExec

Input

Output

RangeExec

To be supported soon

SampleExec

To be supported soon

ShuffleExchangeExec

Input/Output

ShuffledHashJoinExec

Input/Output

SortAggregateExec

Input/Output

SortExec

Input/Output

SortMergeJoinExec

Input/Output

SubqueryBroadcastExec

Input/Output

SubqueryExec

To be supported soon

TakeOrderedAndProjectExec

Input/Output

UnionExec

Input/Output

WindowExec

To be supported soon

WindowInPandasExec

To be supported soon

WriteFilesExec

To be supported soon


Legend

Support Status Symbols

The following table describes the meaning of each status support symbol.

Symbol

Description

Supported

Unsupported at the moment

Not applicable (type does not apply to the corresponding plan or expression)

Undetermined

Data Type Symbols

The following table describes the meaning of each abbreviated type name in the table and a brief description of the type. See the official documentation for more information.

Type Name

Spark Type

Description

byte

ByteType

Represents 1-byte signed integer numbers.

short

ShortType

Represents 2-byte signed integer numbers.

int

IntType

Represents 4-byte signed integer numbers.

long

LongType

Represents 8-byte signed integer numbers.

float

FloatType

Represents 4-byte single-precision floating point numbers.

double

DoubleType

Represents 8-byte double-precision floating point numbers.

decimal

DecimalType

Represents arbitrary-precision signed decimal numbers.

string

StringType

VarCharType

CharType

Represents character string values.

bin

BinaryType

Represents byte sequence values.

bool

BooleanType

Represents boolean values.

tstamp

TimestampType

Represents values with year, month, day, hour, minute, and second fields.

date

DateType

Represents values with year, month and day fields, without a time zone.

calendar

CalendarInterval

Represents calendar intervals.

array

ArrayType

Represents a sequence of elements of a specific type.

map

MapType

Represents a set of key-value pairs.

struct

StructType

Represents a sequence of named fields.

udt

-

User-defined types and Java objects (non-standard SQL types).


Last update: May 21, 2025