RapidMiner Server WebApp Live Update
Hi all,
at many customers we are faced with time series based data. This either comes from a standard database or a HBase / OpenTSDB based infrastructure. All data is near real time and is used to maintain overview of what's currently going on.
Within the agile data science projects, the RapidMiner WebApps present a very efficient way to built mockups for presenting data. As a feedback channel is often needed, I know several projects that are sticking to this way to present data instead of involve another layer of BI Tools.
All that is missing is a nice auto update of the contained data. I wrote a Java Script that implements a regular rerendering of RapidMiners Component with a data update, but this resets zoom and selection every time and flashes the screen. Highcharts are capable of live updates and I wonder, if RapidMiner could implement a simple delta update mechanism. It would just need to reexecute a particular update process with a given frequency and push the delta into the chart, rather than re-rendering the component.
With that in place, I really see RapidMiner Server being used not only for background computation...
Greetings,
Sebastian
Comments
Hi Sebastian,
I vaguely remember this, but please try it, I will try soon too.
I am honestly guessing you probably know this already.
If a chart is using an app object rather than a process, everytime the app object is updated, the charts are refreshed automatically.
In this case you cna schedule your workflows and keep updaing the app objects therby updating the charts too.
Not sure how it affect the zooming etc.
Hi,
scheduling is not possible as this would only create global states, but the user is selecting several options in my Web App. So I created a JavaScript component that calls a process every X second that then executes within the context of the App. However, this will re-render the component and overwrite selection and zoom behavior.
I'm refering more to this:
http://www.highcharts.com/stock/demo/dynamic-update
Greetings,
Sebastian
The HighStock API isn't included in RapidMiner Server (I think due to licence), but you can download it and include it pretty easily.
What you'd then need to try is writing an HTML component using the HighStock library and within the javascript of this component call the webservice to update the data within the data.push function.
Will likely take a couple of tries to get it working just right, but I think that might do it.
--
Hi John,
let me know how it works out!
It's really about time that RapidMiner does something about the WebApps. So many people are building some cool feature with a quirky workaround. Why not adding an extension mechanism like for operators? This way we could add our own Components easily, reusable and sustainable. We at OWC already created mechanisms for desinging forms, adding auto refresh, status and error messaging to user, etc, but all remains with bad usability as you always have to go through HTML components and options need to be passed via context of processes.
Having all the customized functionality as extension would be really cool...otherwise I see the day coming when I integrate the 72nd workaround and coding it entirely would have been far more efficient than working around missing functionality a 73rd time.
Greetings,
Sebastian