Skip to content

Releases: moliva/gcm-streaming

Basic Application Runner + Sentiment Analyzer

24 Jun 19:09
Compare
Choose a tag to compare
  • Added a reusable Basic Application Runner to the main source.
  • Added Sentiment Analyzer example application.
    • Added Twitter Streaming In Tap operator.
    • Added a dictionary-based Sentiment Classifier operator.
  • Added tests to most of the base framework components.

Version with configurable windows

09 Jun 13:17
Compare
Choose a tag to compare

This version includes Tumbling windows in both count and time flavors and also Sliding windows with configurable eviction and trigger policies, both in count and time flavors.

Multiple source operators support

09 Jun 13:19
Compare
Choose a tag to compare

In this version the multiple source operators where refactored from composite operators to simpler primitive operators with a controller as interceptor for routing each input source into its proper queue.
This version features:

  • Single tuple operator base implementation for developers creating new operators processing one tuple at a time just for simplicity's sake
  • Combinators (multiple source operators) are introduced, first implementation grouped three components into one big composite (two handling the inputs and converting them to a multiple in stream routing the inputs and the last one taking care of the functional side) and the last implementation for this release changed this scheme into a simpler one component version taking advantage of an interceptor controller to act as router before the calls are actually made
  • The notion of multiple in streams is introduced in the framework (being able to route inputs to different sources in an operator) and later was generalized dropping the notion of single in streams, now every node is susceptible of receiving different inputs and the routing of them will define where they are queued (by default it will always be the input 0)

Windows as first-class citizens

10 Jun 09:07
Compare
Choose a tag to compare

Logic of windowing and triggering is decoupled completely from every operation and is introduced as a first-class citizen in the form of an Operator.
Operations are now formed by single components differing in class contents.

Multicasting and multiple streams support added

10 Jun 08:46
Compare
Choose a tag to compare

From this version on all of the components have the ability to feed more than one following operator in the graph.
The concept of window is still handled by a MailBox, but it is now optional for both Operators and OutTaps.
InTaps are now composed of two components composite, dropping the buffer that's in between the functional implementation and the mailbox.

First version of Framework for single streamed apps

10 Jun 08:31
Compare
Choose a tag to compare

The framework has its first version to be used by app developers.
All three concepts of InTap, Operator and OutTap have base abstract versions to simplify the development of new functional operations to be added by user developers extending the framework.
InTaps are based in a three component composite with a mailbox for triggering the window, a functional part to deliver new tuples and a buffer that stores these tuples until the trigger is activated.
There is a notion of InnerProcessor for the components that receive tuples but are not aware of when to trigger them (implementations of Operators and OutTaps and InTaps' buffers).

Word Count app completed

10 Jun 08:10
Compare
Choose a tag to compare

First example with the new framework completed.
Operators are added to the framework in the same way as OutTaps work (composite with two primitives: mailbox for handling the window and implementation of the functional logic).
InTaps are still coupled with the window logic, but now they run as active objects without needing an extra method to be called (startStreaming) from the application logic.

Introduction of MailBoxes

09 Jun 15:37
Compare
Choose a tag to compare

First to consider windows (just tumbling with milliseconds between each batch) in both InTap and OutTap (no operator exist still).
MailBox component is introduced for OutTap in a 2 component schema with a mailbox and an impl inside a composite.
The InTap is still a one component that couples the logic of the window with the functional aspect of the operation.

First streaming from a file to the console

09 Apr 09:51
Compare
Choose a tag to compare

First version, using two different components to read from a file on a per line basis and writing each one in the console.
Each component accepts the configuration for a batch interval window, but this is now implemented currently (tuples are processed as soon as they are received).
The concept of tuples is a generic Object interface.