我正在寻找一种方法来获取运算符的规范表示(项目的数量和类型,选择,......)以及它们在Esper的EPL语句中使用的链接方式,如:
SELECT x,y,z,ts FROM AccelEvents WHERE vibe=0
SELECT x*x+y*y+z*z AS ed, ts FROM FilteredEvents
SELECT Math.pow(ed,0.5) as sqrted, ts FROM EdEvents
SELECT r1('ts') as ts FROM SqrtEdEvents
MATCH_RECOGNIZE (MEASURES A AS r1, B AS r2 PATTERN (A B)
DEFINE A AS (A.sqrted > THR), B AS (B.sqrted <= THR))
我会感谢类似Apache Calcite在解析查询时提供的内容:
LogicalTableModify(table=[[OverallSchema, EdEvents]], operation=[INSERT], updateColumnList=[[]], flattened=[true])
LogicalProject(ed=[+(+(*($0, $0), *($1, $1)), *($2, $2))], ts=[$3])
EnumerableTableScan(table=[[OverallSchema, FilteredEvents]])
但是,我无法从Esper's extensive documentation找到Esper中等效的指针,不幸的是,Calcite还没有提供我需要的功能级别,特别是对于流数据。
任何指针都会非常感激。
答案 0 :(得分:0)