Find details on the SPL language, toolkits, APIs, commands, and more.
Streams Processing Language (SPL) is a distributed data flow composition language that is used in Teracloud® Streams. SPL has primitive types, program structures, and definitions that are tailored for streaming data.
Learn about the core capabilities of Teracloud® Streams, its architecture, and key concepts.
Use this information to install, upgrade, and uninstall the Teracloud® Streams product.
Create a basic or an enterprise domain which is a single point for configuring and managing common resources, security, and instances.
Administer the product by using the Teracloud® Streams graphical user interface, APIs, or the streamtool command-line interface.
streamtool
Develop stream applications with the Streams Processing Language (SPL), Java, and Python.
Resolve problems with Teracloud® Streams using the troubleshooting tools provided with the product as well as the resources offered by Teracloud Support.
Application programming interfaces (APIs) provide functions that simplify applications development.
You can specify or change configuration parameters when you use the submitjob or updateoperators operations. The settings control submission constraints, host constraints and locations, and operator status. Parameters are captured and updated in the configuration JSON file. When you change the values in the job configuration overlay file, the changes override any previously set values.
submitjob
updateoperators
Teracloud® Streams provides a number of commands you use to perform tasks.
An operator model is an XML document that describes the basic properties of a primitive operator.
SPL contains types, expressions, statements, functions, clauses, and other elements of a programming language.
This language specification adopts a flavor of Backus-Naur Form (BNF) to describe the syntax of language features.
SPL defines a set of rules to determine the syntax of a program.
Here is the SPL grammar syntax, with references to the sections that contain the semantics.
Though SPL is a streaming language, there are many places where it uses expressions that are found in traditional imperative or functional languages.
Operators can be annotated. Annotations influence the run time behavior of stream applications.
SPL has several primitive types that are tailored for streaming, and a few composite types that are inspired by scripting languages but statically checked. The following topics describe the types, how to define them, and how to convert values between different types.
Operators process tuples in an incoming stream and produce an output stream as a result. SPL supports two kinds of operators: primitive operators and composite operators. A primitive operator is written in C++ or Java™. A composite operator is written in SPL and contains a reusable stream subgraph.
SPLDOC comments start with /** and end with */. These comments are a form of embedded documentation, similar to Doxygen (C), docstrings (Python), or Javadoc™ (Java™). SPLDOC comments are a special form of delimited comments that contain an extra asterisk (*) in the opening tag.
The config clause specifies hints and directives that influence how the compiler builds an operator invocation, or how the runtime system runs it.
config
A toolkit is a set of SPL artifacts, which are organized into a package. Toolkits make SPL or native functions and primitive or composite operators reusable across different applications.
You can use SPLDOC markup in the descriptions associated with the SPL artifacts in a toolkit. The spl-make-doc command generates HTML documentation from the marked up artifacts.
Use this glossary to find terms and definitions for Teracloud® Streams.