Extension operators (UDF, UDX, Transform Plugins)
SQLstream allows an application to define its own extension operators. These include:
•User-defined functions (UDFs). You use these in a SELECT expression (or in a WHERE clause). For more detail, see the topics SELECT and WHERE clause in the s-Server Streaming SQL Reference Guide. A UDF is a row-by-row operation, and so is unaffected by rowtime bounds, which it automatically passes downstream.
•Foreign streams, generated by an adapter coded in Java. Such streams are very general-purpose. The algorithms they express can make use of rowtime bounds and should be responsible for passing them downstream. A plugin can see and emit rowtime bounds as part of the com.sqlstream.plugin.RowSink interface that all plugins use to read and write data. A client application can see and emit rowtime bounds as part of the SQLstream implementation of JDBC.
•User-defined transforms (UDXs). You code these in Java. They read an input stream and produce an output stream. When writing a UDX (User-Defined Transformation), you need to be aware of rowtime bounds. See the topic Rowtime Bounds and UDXs in the Integration Guide for more details.