Expand description
§Stream SQL - SQL-like Query Language for Streams
This module provides a SQL-like query language specifically designed for stream processing, enabling developers to write familiar SQL queries for real-time data processing.
§Features
- SQL parsing and execution for streams
- Window functions (TUMBLING, SLIDING, SESSION)
- Aggregate functions (COUNT, SUM, AVG, MIN, MAX, STDDEV)
- Stream joins with temporal semantics
- Pattern matching in streams
- Query optimization
§Example
SELECT sensor_id, AVG(temperature) as avg_temp
FROM sensor_stream
WINDOW TUMBLING (SIZE 5 MINUTES)
GROUP BY sensor_id
HAVING AVG(temperature) > 30Structs§
- Column
Definition - Column definition
- Create
Stream Statement - CREATE STREAM statement
- Lexer
- Lexer for SQL tokenization
- Order
ByItem - ORDER BY specification
- Parser
- Parser for SQL queries
- Query
Result - Query result
- Result
Row - Query result row
- Select
Item - SELECT column specification
- Select
Statement - SELECT statement AST
- Stream
Metadata - Stream metadata
- Stream
SqlConfig - Configuration for Stream SQL engine
- Stream
SqlEngine - Stream SQL engine
- Stream
SqlStats - Stream SQL statistics
- Window
Spec - Window specification
Enums§
- Aggregate
Function - Aggregate functions
- Binary
Operator - Binary operators
- Data
Type - SQL data types
- Expression
- Expression in SQL AST
- From
Clause - FROM clause item
- Join
Type - Join types
- Query
Type - SQL query types
- SqlValue
- SQL value types
- Token
- SQL token types for lexer
- Unary
Operator - Unary operators
- Window
Type - Window types