As a front end, LiveView can connect to other tools as data sources. LiveView can connect to the following back-ends:
Other LiveView servers in a federated system.
TIBCO StreamBase Query Tables.
TIBCO ActiveSpaces spaces and metaspaces.
A user-written Custom Table Provider can provide access to an arbitrary source. See the TableProvider interface in the Java Client API Documentation for more information.
LiveView back-ends allow specific queries, based on their own capabilities. All table types can accept all simple predicates in queries.
|Back-end Type||Query Language||Query Type||Projections||Streaming Modifiers||Query Modifiers|
|Foreign LiveView Server||LiveQL||SNAPSHOT, CONTINUOUS, SNAPSHOT_AND_CONTINUOUS, DELETE||*, exact field name, aggregate expression||Time-delay, Time-window||Top-N|
|StreamBase Query Tables||StreamBase expression language||
SNAPSHOT, CONTINUOUS, SNAPSHOT_AND_CONTINUOUS (not DELETE)
See Details below.
|*, simple StreamBase expressions (which includes aliasing).||None||None|
|ActiveSpaces||ActiveSpaces query language||
SNAPSHOT, CONTINUOUS, SNAPSHOT_AND_CONTINUOUS, DELETE
See Details below.
*, exact field name.
ActiveSpaces query language does not accept single quotes around strings. Any strings must be delimited with double quotes.
|JDBC Tables||SQL||SNAPSHOT||SQL projections||None||None|
LiveView back ends support specific LiveView capabilities.
|Back-end Type||Publish||Alert||External host|
|Single Foreign LiveView Server||Y||Y||Y|
|Multiple Foreign LiveView servers||N||Y||Y|
|TIBCO StreamBase Query Table||N||N||Y|
LiveView ships with an ActiveSpaces sample that you can use to get started with the integration of LiveView and TIBCO ActiveSpaces.
All Rows deletes do not report delete events to LiveView clients, but instead issue a new snapshot.
The StreamBase Query operator
Delete All Rows option is an atomic operation that does not operate on individual rows, so there is only one event produced and reported
back to the LiveView. One key difference between a StreamBase row-by-row delete and an
All Rows delete is that the latter does not report the primary keys deleted, so there is no way for the LiveView layer to identify
which rows are deleted and report that to the client. The only reporting action LiveView can take is to report a new snapshot.
Also note that SNAPSHOT_BEGIN is used:
When a LiveView High Availability table becomes unavailable and the client is being moved to another copy of the table.
In the MulticonnectConfig Java client API to indicate the LiveView it was previously connected to became unavailable and the query is being moved to a different server.
There is no equivalent operation for native LiveView tables, so even running an lv-client clear
TableName command results in one update per row back to the client. This is an architectural difference between StreamBase query tables
and LiveView tables.
If individual row deletion events is important to a client, do not use
Delete All Rows. Instead design the StreamBase application to use a Query Delete by Primary Index with Match Expression set for
true. This reports each row deleted back to LiveView and reports individual delete events to any LiveView client application.
SNAPSHOT_AND_CONTINUOUS queries to an ActiveSpaces table can have their result sets truncated without an error indication if the result set size is larger than the configured ActiveSpaces space QueryLimit. SNAPSHOT-only and DELETE queries will correctly report an error if the result set has been truncated by the configured ActiveSpaces space QueryLimit. See the ActiveSpaces documentation on how to configure the QueryLimit on a space.