FAQ
  1. What is StreamSQL?
  2. What type of applications are best suited for StreamSQL?
  3. What is a "stream"?
  4. Who created StreamSQL?
  5. How can I learn more about StreamSQL?
What is StreamSQL?
StreamSQL is a next-generation query language for complex event processing (CEP) applications. StreamSQL extends the industry-standard Structured Query Language (SQL), to empower the processing of real-time data streams. Just as the inherent value of SQL is its ability to issue queries against stored data, this same querying capability must also exist for data streams.

In order to go beyond finite stored dataset records, StreamSQL manages continuous event streams and time-based records. StreamSQL retains the capabilities of SQL while adding new capabilities such as a rich windowing system, the ability to mix stored data with streaming data, and the power to extend the primitives to include custom logic, such as analytic functions.
What types of applications are best-suited for StreamSQL?
Applications that are the best fit for StreamSQL involve real-time data, where the goals are fast processing on commodity hardware along with rapid prototyping and deployment.
  • Financial Services: In the financial services industry, best applications involve market data feed processing, data enrichment (e.g. VWAP, Black-Scholes), automated trading, and real-time compliance.
  • Telco/Networking: In the telco/networking industry, applications include network monitoring, IP log processing, intrusion prevention, and fraud detection. E-businesses use StreamBase for real-time transaction and clickstream monitoring.
  • Government/Federal: In the federal sector, applications include intelligence and surveillance, homeland security, and battlefield sensor monitoring.
What is a "stream"?
In the StreamSQL context, a stream is a sequence of data messages that can run continuously. Each data message contains one or more fields. StreamSQL statements perform user-defined work on streaming data, such as aggregating windows of data streams, merging streams, or retrieving shared data from a table.
Who created StreamSQL?
StreamSQL was written and specified by computer science and data management experts representing the two most significant academic initiatives to define stream processing languages and infrastructure, the Stanford "STREAMS" project and the MIT/Brown/Brandeis "Aurora" project.  Development of StreamSQL was funded by StreamBase Systems.
How can I learn more about StreamSQL?
 
More information about the StreamSQL language is available on the Documentation page. The StreamBase stream processing engine supports the StreamSQL standard.

For details about using the StreamBase implementation of StreamSQL in real-time applications, see the StreamBase Developer Zone. On that site, you can also download a StreamBase evaluation kit ("Developer Edition"), read the full documentation, and access other resources. The kit includes StreamSQL demos and sample apps.