1. 程式人生 > >Marginally Interesting: Download the streamdrill demo

Marginally Interesting: Download the streamdrill demo

A few days ago, we’ve released the beta version of streamdrill, the real-time event analysis engine which we’ve extracted from our the social media analysis codebase.

The past few days, Leo has been busy working his maven-magic to create a downloadable jar of streamdrill. Just go to

streamdrill.com/register and select the “Download” option.

You can then start the jar simply with java. First try

$ java -jar streamdrill.jar -h

to show some of the options, or simply start it with

$ java -Xmx2g -jar streamdrill.jar

to start it on localhost:9669.

Next, get the Python client like this:

$ git clone https://github.com/thinkberg/streamdrill-client.git

and start a example session like this:

$ cd streamdrill-client/streamdrill-python
$ ipython
Python 2.7.3 (default, Sep 26 2012, 21:51:14) 
Type "copyright", "credits" or "license" for more information.

IPython 0.13.1.rc2 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

In [1]: import streamdrill

In [2]: c = streamdrill.StreamDrillClient("http://localhost:9669")

In [3]: c.create("test", "user", 100, "hour")
Out[3]: u'1c182c7f-40f0-45ca-8d55-7c5fad930173'

In [4]: c.update("test", ["frank"])

In [5]: c.update("test", ["paul"])

In [6]: c.update("test", ["felix"])

In [7]: c.query("test")
[([u'felix'], 1.0),
 ([u'paul'], 0.9994225441413808),
 ([u'frank'], 0.998460858626963)]

Some more things to try

help(streamdrill.StreamDrillClient) show some help on the client.

Define a trend with more than one entity:

c.create("page-views", "page:referer", 100, "day")

and query with filter:

c.query("page-views", 10, filter={'page': '/index.html'})

The demo has no restrictions on the analysis features, but you’re not able to take snapshots of your data (so all data is lost on each restart), and you cannot configure the API key and secret, so you’d probably wouldn’t want to use this in production ;)

If you have more questions, don’t hesitate to contact us under [email protected].

Posted by Mikio L. Braun at 2012-12-17 15:08:00 +0100

blog comments powered by Disqus