SQLstream Components Overview

Guavus SQLstream consists of six major components:

  • s-Server is the core application. This aggregates and analyzes streaming and non-streaming data and executes streaming SQL. All other applications depend on s-Server to run. s-Server runs as a Java Virtual Machine called AspenVjdbcServer. s-Server features the Extensible Common Data Adapter, which lets you collect data from a variety of sources, including log files, network feeds, Amazon Kinesis, AMQP, Kafka, and so on.
  • WebAgent is a simple, miniature Web server. It accepts HTTP requests, sends these to s-Server over JDBC, and returns JSON objects.
  • s-Dashboard is a browser-based interface for viewing s-Server schema objects: streams, views, or tables graphically.
  • StreamLab is a browser-based application that lets you create and view stream applications. See Installing SQLstream StreamLab for more details.
  • s-Studio provides an Integrated Development Environment (IDE) for defining SQLstream objects and queries, as well as an integrated console for monitoring the active sessions and statements within SQLstream s-Server. s-Studio provides access to all the objects defined in an instance of the SQLstream s-Server, including streams, tables, views, adapters, pumps, and so on. Using SQLstream s-Studio, a developer can create, delete, view, or edit object definitions as well as inspect the data flowing through streams in real time. s-Studio can be installed separately and connect to an s-Server instance from another machine, and runs on either Linux or Windows. See Installing SQLstream s-Studio for details.
  • SQLstream Client Tools provides a suite of applications that let you communicate with, test, and maintain your s-Server installation. They include the SQLstream WebAgent, which allows s-Server to connect with a browser and the Extensible Common Data Agent, which lets you gather data on machines other than the one on which s-Server is running. s-Studio can be installed separately and connect to an s-Server instance from another machine. See Installing SQLstream Client Tools for details.

Client Tools Contents

Client Tools contains sqlline, mtsql, datagen, jdbc, Log File Agent, and WebAgent, as described below with links to further detail.

Tool Description Comments
SQLline SQLLine is a command-line tool for communicating with the SQLstream s-Server or with other servers or databases, a generic & open-source database client that works with any jdbc database. More information about SQLLine can be found at: - http://sqlline.sourceforge.net/SQLLine can be used interactively or to read a script. Its command language is SQL: it reads SQL statements and sends them to the server, gets the results, and prints the results. For the version in our client tools, the command line options are explained in the source file aspen/tools/sqlline. (See also the SQLline page in this manual.)Note that a streaming query can take a long time to complete — maybe forever.If SQLline executes a query, it prints all the rows in the result set.
mtsql The tool mtsql is like sqlline, but can run several SQL clients at the same time, in parallel, in separate threads of execution. You can use MTSQL to test and benchmark your applications by writing multi-threaded SQL scripts, synchronizing separate threads, and capturing output from each thread separately. Each thread executes a list of commands, in the mtsql language. The language is an extension of SQL which provides ways of coordinating the parallel clients. The point of mtsql is that one script runs as several parallel, coordinated clients. The command line options are simple and described in comments in aspen/tools/mtsql.
datagen Datagen generates test data for SQLstream applications, and pushes the data into SQLstream using the SQLstream JDBC Driver. The test data to be generated is described in XML files. DataGen processes DataSet and TupleRule XML definitions to generate streaming sample data for SQLstream. See also the DataGen section of the Concepts Guide.
JDBC JDBC (Java DataBase Connectivity) is a standard Java API for connecting to relational databases and other data sources that can produce relational data. See also the JDBC Driver section of the Enterprise Interface Guide, for a discussion of JDBC in the SQLstream context, where it is used by applications to get data into or out of SQLstream.
WebAgent WebAgent functions as a simple, miniature Web server. It accepts HTTP requests, sends these to s-Server, and returns JSON objects. See json.org for more details on JSON objects. SQLstream WebAgent is delivered as part of the SQLstream Client Tools, in the shell script webagent.sh. WebAgent is used by a number of SQLstream applications, including StreamLab and s-Dashboard. In order to use WebAgent with web applications, users need one of the following browsers.Microsoft Internet Explorer 11 (or later), Google Chrome 31 (or later), Mozilla Firefox 17 (or later), or Apple Safari 7 (or later).

Structure of the ClientTools.zip file

The following table shows the directory structure and contents of the ClientTools.zip file, with links to further descriptions for DATAGEN, JDBC, and how the trace.properties file is used. For more information, see the topics DATAGEN, and JDBC Driver in the Integration Guide.

Directory Next-level Contents Next-level Contents
bin/ mtsql, DATAGEN
datagen/conf/ datagen.propertiesDataSet.xsdTupleRule.xsdtrace.properties
datagen/conf/ sample/ sales.bids.linear.embedded.set.xmlsales.bids.linear.row.xmlsales.bids.linear.set.xmlsales.bids.random.row.xmlsales.bids.random.set.xml
datagen/doc/api/ allclasses-frame.html?toc=0allclasses-noframe.html?toc=0constant-values.html?toc=0deprecated-list.html?toc=0help-doc.html?toc=0index-all.html?toc=0index.html?toc=0overview-summary.html?toc=0overview-tree.html?toc=0package-listserialized-form.html?toc=0
datagen/doc/api/com/ sqlstream/ datagenAbstractDataRule.html?toc=0AbstractParser.html?toc=0CompoundDataRule.html?toc=0DataGenerator.html?toc=0DataGeneratorTest.html?toc=0DataRule.html?toc=0DataSet.CommitMode.html?toc=0Dataset.html?toc=0DataSet.PunctDeliveryStyle.html?toc=0DataSet.TupleDeliveryStyle.html?toc=0DataSetParser.html?toc=0DataSink.html?toc=0DoubleDataRule.html?toc=0LongDataRule.html?toc=0package-frame.html?toc=0package-summary.html?toc=0package-tree.html?toc=0ParserTest.html?toc=0RelativeDate.html?toc=0StreamDataSink.html?toc=0StringDataRule.html?toc=0TimeDataRule.html?toc=0TupleGeneratorTest.html?toc=0TupleRuleParser.html?toc=0
datagen/doc/api/com sqlstream/images DataSet_schema.pngTupleRule_schema.png
datagen/doc/api/com sqlstream/resources inherit.gif
datagen/lib DataGen.jar
datagen/jdbc DataSet_schema.pngTupleRule_schema.pngaspen-tools.jarjline.jarsREADMEssqlline.jarsSqlStreamJdbc.jarsSqlStreamJdbc_Complete.jar