Demandbase Connect

Echo Community Wiki / Echo StreamServer Functionality
View
 

Echo StreamServer Functionality

Page history last edited by Philippe 4 months, 2 weeks ago

 

 

Echo StreamServer - How it Works

 

 

 

 

StreamServer is essentially a highly scalable real-time database.

 

Ratings, Reviews, Comments, Likes, Shares, Page views, Video Plays, New users, New follows, Game plays, leveling up, new purchases and more. All of your activity data can be captured by StreamsServer.

 

Because of its high capacity, high throughput characteristics you can also capture the kind of data (at the kind of rate) you see from social networks such as Twitter, Facebook, Foursquare etc.

 

All of this data can be stored in one place to be processed, remixed, streamed and socialized.

 

You can submit items using the Submit API or using client-side applications like the submit form.

 

All data submitted to StreamServer is done through the open standard ActivityStreams.

 

 

A feature unique to StreamServer is that you can annotate items after they are created. This is generally done by running the items through any number of business processes to determine some additional metadata.

 

Examples might be detecting Spam, looking for "Bad Words", counting items for analytics or applying game mechanics. 

 

These annotations can be used during the Remix step (below).

 

Do this by searching items out and then submitting a transformation.

 

 

Once your items have been submitted to StreamServer and they have been properly annotated you can then query out precise search results based on structured values.

 

The Echo Query Language is a full featured 'SQL-esque' language that allows you to specify data using more than 15 predicates, braces, ANDs, ORs etc.

 

EQL is applied using the Search API

 

 

Scale

Another unique characteristic of StreamServer is its ability to serve queries at massive scale. 1000s of queries per second. That's millions of users. It is your production database.

 

Hierarchical Results

Beyond this, though, the search results are hierarchical. That means you don't just get a flat set of tweets, but all of its replies. Not just articles, but their comments. Not just comments, but their replies - and so on. This is incredibly powerful for creating threaded views of your data.

 

Live Updates

StreamServer also provides 'Live Updates' to search results. This means you can request a change-set (within 5 minutes) of a given result to update the UI for connected users. For real-time experiences you can request  updates as quickly as every 5 seconds. This is the default refresh rate of our bundled apps (described in the section below).

 

Open Standards

All data coming out of StreamServer is in open standards. In this case it is provided in JSON formatted ActivityStreams.

 

Streaming items is done through the Search API.

 

 

Along with the server-side API of StreamServer, Echo provides a series of free, Open Source client-side apps to help you get started quickly. These include a submit form, a stream client and a counter client.

 

Each of these apps are almost platforms in their own right since they provide a rich 'Client Extensions Framework' for extensibility. This is a combination of CSS classes, event hooks and renderers that allow you to modify the look, feel and behavior of the apps.

 

As a result, there is a growing number of plugins for these clients that allow you to quickly add features. Plugins can be found on each app's page (linked above or on the left navigation bar).

 

Some of these plugins include Reply, Like, Flag, Spam, Ban User etc.

 

In addition, 3rd parties (like you!) are writing new apps/visualizations for Echo StreamServer all the time.

 

Single signon between your site/app and Echo Clients is performed via the open standards Backplane.