You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@zeppelin.apache.org by kant kodali <ka...@gmail.com> on 2016/09/07 07:39:37 UTC
How to use web sockets with Zeppellin
HI Guys,
I have a server which can handle websocket connections. Now I would like to
see if there is a way to tell apache zeppellin to create to websocket
connect to my server and display the whatever it received?
Thanks,
Kant
Re: How to use web sockets with Zeppellin
Posted by "spacewalkman@163.com" <sp...@163.com>.
@kan kodali, i’m not a front guy either.i’v got the same requirement as you recently, i have to separate zeppelin backend and frontend to different servers, i did as what the previous mail says,i works.
for you questions:
1. AFAK,is not configurable. if you are familiar with Grunt ,maybe a custom property can do.(i’m not sure)
2. zeppelin use Websocket to handle bidirectional communication with backend and frontend. Once is Websocket connection is done, backend run you sql, and send result data as json back to frontend, which handling rendering.
3. let me elaborate on my procedure to achieve separating zeppelin backend and frontend to different servers。
1)host1,as zeppelin backend, install zeppelin-xxx.tar.gz(the distribution binary), bin/zeppelin-daemon.sh start. then, you got your zeppelin backend done, which has a frontend bundled with it . but you would use it.
2) host2 , as zeppelin frontend. Grab zeppelin-web module(src code),install node.js and Grunt,change zeppelin-web/src/components/baseUrl/baseUrl.service.js like this, which reference you zeppelin backend address:
this.getWebsocketUrl = function() {
var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
return wsProtocol + ‘//host1:' + this.getPort() + skipTrailingSlash(location.pathname) + '/ws';
};
this.getRestApiBase = function() {
return location.protocol + ‘//host1:' + this.getPort() + skipTrailingSlash(location.pathname) +
'/api';
};
3) in host2, run " grunt serve “ in zeppelin-web folder.
Done
> 在 2016年9月8日,02:30,kant kodali <ka...@gmail.com> 写道:
>
> Hi! Thanks for this but I still see the big picture. I have not used Angular before nor I am a frontend guy. so I have the following questions.
>
> Why do we need to change the source code? isn't this configurable or isn't there a way to pass url as a parameter? If you think it is the easiest way sure I can change that.
> How change this let me grab data from my websocket server and display it with the charts/graphs (simple to graphs we see when we run sql on Zeppelin notebook)
> if there is a simple example that would be awesome.
> Thanks again!
>
>
>
>
>
> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com spacewalkman@163.com <ma...@163.com> wrote:
> @kant kodali
>
> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js like this:
>
> this.getWebsocketUrl = function() {
> var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
> return wsProtocol + ‘//your_ip_address:' + this.getPort() + skipTrailingSlash(location.pathname) + '/ws';
> };
>
> this.getRestApiBase = function() {
> return location.protocol + '//your_ip_address:' + this.getPort() + skipTrailingSlash(location.pathname) +
> '/api';
> };
>> 在 2016年9月7日,15:39,kant kodali <kanth909@gmail.com <ma...@gmail.com>> 写道:
>>
>> HI Guys,
>>
>> I have a server which can handle websocket connections. Now I would like to see if there is a way to tell apache zeppellin to create to websocket connect to my server and display the whatever it received?
>>
>> Thanks,
>> Kant
Re: How to use web sockets with Zeppellin
Posted by Corneau Damien <co...@gmail.com>.
There might actually be another way to do that using python or scala code.
I don't have experience in those, but I guess the overall idea behind it
would be to have this type of code in a paragraph that you run:
// Include python websocket library
// pythonWebsocketOpenConnection(myServerWithData)
// pythonWebsocketEventListener(event) {
// transform data to be in the format "product\tprice\nbanana\t12\
napple\t8"
// print("%table " + event.data )
//}
This example is for the result of a single paragraph (the one with the
code),
However if you receive result for multiple graphs in that hook, you could
probably prepare other paragraphs with something like:
// print("%table " + graphData1 )
and change the original hook in previous example to do
// pythonWebsocketEventListener(event) {
// graphData1 = event.data.graph1 (transformed in the format
"product\tprice\nbanana\t12\napple\t8")
// z.runParagraph(paragrpahID) (The one with the graphData1, the ID is in
the paragraph dropdown settings)
// etc...
//}
On Thu, Sep 8, 2016 at 5:31 PM, Corneau Damien <co...@gmail.com> wrote:
> To reply to 1)
>
> The type of charts and its options are set in the UI, and saved as
> settings in the note.
> So the queries do not have any effect on it.
>
> The front-end receive data as a result of a query.
>
> for example:
>
> You can type
>
> ```
> %sql
> select * from bank
> ```
>
> And the front-end will receive a table like result in the form of:
>
> "product\tprice\nbanana\t12\napple\t8"
>
> It will first show it as a Table, but the UI allows you to change the
> visualization type.
>
>
> To reply to 2)
>
> I don't have any knowledge of a websocket interpreter.
>
> However like I explained before in the Zeppelin workflow,
> Zeppelin Server send a Query through an interpreter to whatever type of
> backend, and gets a result back.
> It then send back that result to the UI.
>
> A Spark interpreter is used to query Spark,
> A JDBC interpreter is used to query SQL server
> and so on...
> (We even have a shell interpreter)
>
> If you are using something custom outside of the existing data
> processing/data store technology we have,
> and you want to make Zeppelin communicate with it to render data, you will
> need to create a custom interpreter.
>
> On Thu, Sep 8, 2016 at 4:20 PM, kant kodali <ka...@gmail.com> wrote:
>
>> @Corneau The links you have pointed out doesnt show how I can retrieve
>> messages through websocket and tie to chars. I would stress again and say
>> how do i tie all this up to charts?
>>
>> On Thu, Sep 8, 2016 at 12:17 AM, kant kodali <ka...@gmail.com> wrote:
>>
>>> Hi Corneau,
>>>
>>> I appreciate the responses but again I am really looking for a specific
>>> answer
>>>
>>> 1. "This protocol looks interesting but how do I construct messages
>>> such that I can see different visualizations of charts?" This question
>>> is not being addressed.
>>>
>>> 2. How can I use an existing interpreter and achieve my goal otherwords
>>> again how can I tie all this thing to charts (I just haven't heard any
>>> answer related to that)? If I were to write my own interpreter then I might
>>> as well create my own UI.
>>>
>>> It is ok if you guys say it is not possible and I would understand that
>>> and probably pick a different route.
>>>
>>> Thanks much,
>>> Kant
>>>
>>>
>>> On Thu, Sep 8, 2016 at 12:10 AM, Corneau Damien <co...@gmail.com>
>>> wrote:
>>>
>>>> You will probably need to make an interpreter for it, or use an
>>>> existing one.
>>>>
>>>> https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/manual/inter
>>>> preters.html
>>>>
>>>> You will find the list of existing interpreters in the menu.
>>>>
>>>> If you do need to create one, then you can refer to this guide
>>>> https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/development/
>>>> writingzeppelininterpreter.html
>>>>
>>>> On Thu, Sep 8, 2016 at 3:56 PM, kant kodali <ka...@gmail.com> wrote:
>>>>
>>>>> @spacewalkman Just an FYI I don't have anything to do with Spark at
>>>>> the moment. I just have a node.js server which is capable of websocket
>>>>> connections and ready to push data needed for charts.
>>>>>
>>>>> This protocol looks interesting but how do I construct messages such
>>>>> that I can see different visualizations of charts? I am pretty sure I have
>>>>> articulated my question clearly it will great if I can see a bit
>>>>> detailed description or a simple example.
>>>>>
>>>>> I believe that I am asking for a very simple feature.
>>>>>
>>>>> Thanks a ton,
>>>>> Kant
>>>>>
>>>>> On Wed, Sep 7, 2016 at 8:52 PM, spacewalkman@163.com <
>>>>> spacewalkman@163.com> wrote:
>>>>>
>>>>>> maybe a custom SparkStreamingInterpreter can handle this.
>>>>>>
>>>>>> zeppelin WS protocol is defined in:
>>>>>>
>>>>>>
>>>>>> 1. https://github.com/apache/zeppelin/blob/master/zeppelin-zeng
>>>>>> ine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java
>>>>>> <https://github.com/apache/zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java>
>>>>>>
>>>>>>
>>>>>> every [c-s] message is handled by zeppelin backend, [s-c] is handled
>>>>>> by zeppelin frontend.All you have to do is when new streaming data is
>>>>>> there, triigger a [s-c] message from backend, a frontend event handler may
>>>>>> also required.
>>>>>>
>>>>>>
>>>>>> 在 2016年9月8日,11:39,kant kodali <ka...@gmail.com> 写道:
>>>>>>
>>>>>> ok here is a concrete example. I am still trying to connect the
>>>>>> dots..If I were to split Zeppelin as both front end and backend then I
>>>>>> wouldn't choose to use Zeppelin in the first place. The main motivation for
>>>>>> me to explore Zeppelin is that I don't have to spend time developing
>>>>>> different visualiztions. I have used tableau before I see Zeppelin to be
>>>>>> similar in some ways. ok now here is the problem I am trying to solve and
>>>>>> any help I can get will be great!
>>>>>>
>>>>>> say I am trying to build a time series graph(bar graph or whatever
>>>>>> works) where my x axis represent time and y axis represent total number of
>>>>>> transactions and say every second I get updates through web socket from my
>>>>>> server and I need the graph to be updated every second. thats it.
>>>>>>
>>>>>> please let me know if that is feasible.
>>>>>>
>>>>>> Thanks,
>>>>>> Kant
>>>>>>
>>>>>> On Wed, Sep 7, 2016 at 6:59 PM, spacewalkman@163.com <
>>>>>> spacewalkman@163.com> wrote:
>>>>>>
>>>>>>> i thought it was a separating zeppelin backend and frontend problem,
>>>>>>> but what @corneadoug say is a high-level WS description, maybe i
>>>>>>> misinterpretation @kant kodali’s issue
>>>>>>>
>>>>>>>
>>>>>>> 在 2016年9月8日,09:48,Corneau Damien <co...@gmail.com> 写道:
>>>>>>>
>>>>>>> This change wouldn't solve your issue, it is the address where the
>>>>>>> front-end send his API requests and listen to WS (zeppelin server)
>>>>>>> I guess your requirements are different.
>>>>>>>
>>>>>>> The way Zeppelin works is usually pretty simple:
>>>>>>>
>>>>>>> 1) You type your code in the front-end
>>>>>>> 2) That code is sent to Zeppelin server to be run
>>>>>>> 3) The server send it to the right processing engine
>>>>>>> 4) Processing engine send back the result
>>>>>>> 5) Zeppelin Server send a websocket event
>>>>>>> 6) Front-end show whatever he receives
>>>>>>>
>>>>>>> You might be able to find a few Notebook examples on how some people
>>>>>>> used Spark Streaming here:
>>>>>>> https://www.zeppelinhub.com/viewer/showcases/Streaming
>>>>>>>
>>>>>>> On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <ka...@gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hi! Thanks for this but I still see the big picture. I have not
>>>>>>>> used Angular before nor I am a frontend guy. so I have the following
>>>>>>>> questions.
>>>>>>>>
>>>>>>>>
>>>>>>>> 1. Why do we need to change the source code? isn't this
>>>>>>>> configurable or isn't there a way to pass url as a parameter? If you think
>>>>>>>> it is the easiest way sure I can change that.
>>>>>>>> 2. How change this let me grab data from my websocket server
>>>>>>>> and display it with the charts/graphs (simple to graphs we see when we run
>>>>>>>> sql on Zeppelin notebook)
>>>>>>>> 3. if there is a simple example that would be awesome.
>>>>>>>>
>>>>>>>> Thanks again!
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com
>>>>>>>> spacewalkman@163.com wrote:
>>>>>>>>
>>>>>>>>> @kant kodali
>>>>>>>>>
>>>>>>>>> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js
>>>>>>>>> like this:
>>>>>>>>>
>>>>>>>>> this.getWebsocketUrl = function() {
>>>>>>>>> var wsProtocol = location.protocol === 'https:' ? 'wss:' :
>>>>>>>>> 'ws:';
>>>>>>>>> return wsProtocol + ‘//your_ip_address:' + this.getPort() +
>>>>>>>>> skipTrailingSlash(location.pathname) + '/ws';
>>>>>>>>> };
>>>>>>>>>
>>>>>>>>> this.getRestApiBase = function() {
>>>>>>>>> return location.protocol + '//your_ip_address:' +
>>>>>>>>> this.getPort() + skipTrailingSlash(location.pathname) +
>>>>>>>>> '/api';
>>>>>>>>> };
>>>>>>>>>
>>>>>>>>> 在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
>>>>>>>>>
>>>>>>>>> HI Guys,
>>>>>>>>>
>>>>>>>>> I have a server which can handle websocket connections. Now I
>>>>>>>>> would like to see if there is a way to tell apache zeppellin to create to
>>>>>>>>> websocket connect to my server and display the whatever it received?
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> Kant
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
Re: How to use web sockets with Zeppellin
Posted by Corneau Damien <co...@gmail.com>.
To reply to 1)
The type of charts and its options are set in the UI, and saved as
settings in the note.
So the queries do not have any effect on it.
The front-end receive data as a result of a query.
for example:
You can type
```
%sql
select * from bank
```
And the front-end will receive a table like result in the form of:
"product\tprice\nbanana\t12\napple\t8"
It will first show it as a Table, but the UI allows you to change the
visualization type.
To reply to 2)
I don't have any knowledge of a websocket interpreter.
However like I explained before in the Zeppelin workflow,
Zeppelin Server send a Query through an interpreter to whatever type of
backend, and gets a result back.
It then send back that result to the UI.
A Spark interpreter is used to query Spark,
A JDBC interpreter is used to query SQL server
and so on...
(We even have a shell interpreter)
If you are using something custom outside of the existing data
processing/data store technology we have,
and you want to make Zeppelin communicate with it to render data, you will
need to create a custom interpreter.
On Thu, Sep 8, 2016 at 4:20 PM, kant kodali <ka...@gmail.com> wrote:
> @Corneau The links you have pointed out doesnt show how I can retrieve
> messages through websocket and tie to chars. I would stress again and say
> how do i tie all this up to charts?
>
> On Thu, Sep 8, 2016 at 12:17 AM, kant kodali <ka...@gmail.com> wrote:
>
>> Hi Corneau,
>>
>> I appreciate the responses but again I am really looking for a specific
>> answer
>>
>> 1. "This protocol looks interesting but how do I construct messages such
>> that I can see different visualizations of charts?" This question is not
>> being addressed.
>>
>> 2. How can I use an existing interpreter and achieve my goal otherwords
>> again how can I tie all this thing to charts (I just haven't heard any
>> answer related to that)? If I were to write my own interpreter then I might
>> as well create my own UI.
>>
>> It is ok if you guys say it is not possible and I would understand that
>> and probably pick a different route.
>>
>> Thanks much,
>> Kant
>>
>>
>> On Thu, Sep 8, 2016 at 12:10 AM, Corneau Damien <co...@gmail.com>
>> wrote:
>>
>>> You will probably need to make an interpreter for it, or use an existing
>>> one.
>>>
>>> https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/manual/interpreters.html
>>>
>>> You will find the list of existing interpreters in the menu.
>>>
>>> If you do need to create one, then you can refer to this guide
>>> https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/development/
>>> writingzeppelininterpreter.html
>>>
>>> On Thu, Sep 8, 2016 at 3:56 PM, kant kodali <ka...@gmail.com> wrote:
>>>
>>>> @spacewalkman Just an FYI I don't have anything to do with Spark at
>>>> the moment. I just have a node.js server which is capable of websocket
>>>> connections and ready to push data needed for charts.
>>>>
>>>> This protocol looks interesting but how do I construct messages such
>>>> that I can see different visualizations of charts? I am pretty sure I have
>>>> articulated my question clearly it will great if I can see a bit
>>>> detailed description or a simple example.
>>>>
>>>> I believe that I am asking for a very simple feature.
>>>>
>>>> Thanks a ton,
>>>> Kant
>>>>
>>>> On Wed, Sep 7, 2016 at 8:52 PM, spacewalkman@163.com <
>>>> spacewalkman@163.com> wrote:
>>>>
>>>>> maybe a custom SparkStreamingInterpreter can handle this.
>>>>>
>>>>> zeppelin WS protocol is defined in:
>>>>>
>>>>>
>>>>> 1. https://github.com/apache/zeppelin/blob/master/zeppelin-zeng
>>>>> ine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java
>>>>> <https://github.com/apache/zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java>
>>>>>
>>>>>
>>>>> every [c-s] message is handled by zeppelin backend, [s-c] is handled
>>>>> by zeppelin frontend.All you have to do is when new streaming data is
>>>>> there, triigger a [s-c] message from backend, a frontend event handler may
>>>>> also required.
>>>>>
>>>>>
>>>>> 在 2016年9月8日,11:39,kant kodali <ka...@gmail.com> 写道:
>>>>>
>>>>> ok here is a concrete example. I am still trying to connect the
>>>>> dots..If I were to split Zeppelin as both front end and backend then I
>>>>> wouldn't choose to use Zeppelin in the first place. The main motivation for
>>>>> me to explore Zeppelin is that I don't have to spend time developing
>>>>> different visualiztions. I have used tableau before I see Zeppelin to be
>>>>> similar in some ways. ok now here is the problem I am trying to solve and
>>>>> any help I can get will be great!
>>>>>
>>>>> say I am trying to build a time series graph(bar graph or whatever
>>>>> works) where my x axis represent time and y axis represent total number of
>>>>> transactions and say every second I get updates through web socket from my
>>>>> server and I need the graph to be updated every second. thats it.
>>>>>
>>>>> please let me know if that is feasible.
>>>>>
>>>>> Thanks,
>>>>> Kant
>>>>>
>>>>> On Wed, Sep 7, 2016 at 6:59 PM, spacewalkman@163.com <
>>>>> spacewalkman@163.com> wrote:
>>>>>
>>>>>> i thought it was a separating zeppelin backend and frontend problem,
>>>>>> but what @corneadoug say is a high-level WS description, maybe i
>>>>>> misinterpretation @kant kodali’s issue
>>>>>>
>>>>>>
>>>>>> 在 2016年9月8日,09:48,Corneau Damien <co...@gmail.com> 写道:
>>>>>>
>>>>>> This change wouldn't solve your issue, it is the address where the
>>>>>> front-end send his API requests and listen to WS (zeppelin server)
>>>>>> I guess your requirements are different.
>>>>>>
>>>>>> The way Zeppelin works is usually pretty simple:
>>>>>>
>>>>>> 1) You type your code in the front-end
>>>>>> 2) That code is sent to Zeppelin server to be run
>>>>>> 3) The server send it to the right processing engine
>>>>>> 4) Processing engine send back the result
>>>>>> 5) Zeppelin Server send a websocket event
>>>>>> 6) Front-end show whatever he receives
>>>>>>
>>>>>> You might be able to find a few Notebook examples on how some people
>>>>>> used Spark Streaming here:
>>>>>> https://www.zeppelinhub.com/viewer/showcases/Streaming
>>>>>>
>>>>>> On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <ka...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Hi! Thanks for this but I still see the big picture. I have not used
>>>>>>> Angular before nor I am a frontend guy. so I have the following questions.
>>>>>>>
>>>>>>>
>>>>>>> 1. Why do we need to change the source code? isn't this
>>>>>>> configurable or isn't there a way to pass url as a parameter? If you think
>>>>>>> it is the easiest way sure I can change that.
>>>>>>> 2. How change this let me grab data from my websocket server and
>>>>>>> display it with the charts/graphs (simple to graphs we see when we run sql
>>>>>>> on Zeppelin notebook)
>>>>>>> 3. if there is a simple example that would be awesome.
>>>>>>>
>>>>>>> Thanks again!
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com
>>>>>>> spacewalkman@163.com wrote:
>>>>>>>
>>>>>>>> @kant kodali
>>>>>>>>
>>>>>>>> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js
>>>>>>>> like this:
>>>>>>>>
>>>>>>>> this.getWebsocketUrl = function() {
>>>>>>>> var wsProtocol = location.protocol === 'https:' ? 'wss:' :
>>>>>>>> 'ws:';
>>>>>>>> return wsProtocol + ‘//your_ip_address:' + this.getPort() +
>>>>>>>> skipTrailingSlash(location.pathname) + '/ws';
>>>>>>>> };
>>>>>>>>
>>>>>>>> this.getRestApiBase = function() {
>>>>>>>> return location.protocol + '//your_ip_address:' +
>>>>>>>> this.getPort() + skipTrailingSlash(location.pathname) +
>>>>>>>> '/api';
>>>>>>>> };
>>>>>>>>
>>>>>>>> 在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
>>>>>>>>
>>>>>>>> HI Guys,
>>>>>>>>
>>>>>>>> I have a server which can handle websocket connections. Now I would
>>>>>>>> like to see if there is a way to tell apache zeppellin to create to
>>>>>>>> websocket connect to my server and display the whatever it received?
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Kant
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>
Re: How to use web sockets with Zeppellin
Posted by kant kodali <ka...@gmail.com>.
@Corneau The links you have pointed out doesnt show how I can retrieve
messages through websocket and tie to chars. I would stress again and say
how do i tie all this up to charts?
On Thu, Sep 8, 2016 at 12:17 AM, kant kodali <ka...@gmail.com> wrote:
> Hi Corneau,
>
> I appreciate the responses but again I am really looking for a specific
> answer
>
> 1. "This protocol looks interesting but how do I construct messages such
> that I can see different visualizations of charts?" This question is not
> being addressed.
>
> 2. How can I use an existing interpreter and achieve my goal otherwords
> again how can I tie all this thing to charts (I just haven't heard any
> answer related to that)? If I were to write my own interpreter then I might
> as well create my own UI.
>
> It is ok if you guys say it is not possible and I would understand that
> and probably pick a different route.
>
> Thanks much,
> Kant
>
>
> On Thu, Sep 8, 2016 at 12:10 AM, Corneau Damien <co...@gmail.com>
> wrote:
>
>> You will probably need to make an interpreter for it, or use an existing
>> one.
>>
>> https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/manual/interpreters.html
>>
>> You will find the list of existing interpreters in the menu.
>>
>> If you do need to create one, then you can refer to this guide
>> https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/development/
>> writingzeppelininterpreter.html
>>
>> On Thu, Sep 8, 2016 at 3:56 PM, kant kodali <ka...@gmail.com> wrote:
>>
>>> @spacewalkman Just an FYI I don't have anything to do with Spark at the
>>> moment. I just have a node.js server which is capable of websocket
>>> connections and ready to push data needed for charts.
>>>
>>> This protocol looks interesting but how do I construct messages such
>>> that I can see different visualizations of charts? I am pretty sure I have
>>> articulated my question clearly it will great if I can see a bit
>>> detailed description or a simple example.
>>>
>>> I believe that I am asking for a very simple feature.
>>>
>>> Thanks a ton,
>>> Kant
>>>
>>> On Wed, Sep 7, 2016 at 8:52 PM, spacewalkman@163.com <
>>> spacewalkman@163.com> wrote:
>>>
>>>> maybe a custom SparkStreamingInterpreter can handle this.
>>>>
>>>> zeppelin WS protocol is defined in:
>>>>
>>>>
>>>> 1. https://github.com/apache/zeppelin/blob/master/zeppelin-zeng
>>>> ine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java
>>>> <https://github.com/apache/zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java>
>>>>
>>>>
>>>> every [c-s] message is handled by zeppelin backend, [s-c] is handled by
>>>> zeppelin frontend.All you have to do is when new streaming data is there,
>>>> triigger a [s-c] message from backend, a frontend event handler may also
>>>> required.
>>>>
>>>>
>>>> 在 2016年9月8日,11:39,kant kodali <ka...@gmail.com> 写道:
>>>>
>>>> ok here is a concrete example. I am still trying to connect the
>>>> dots..If I were to split Zeppelin as both front end and backend then I
>>>> wouldn't choose to use Zeppelin in the first place. The main motivation for
>>>> me to explore Zeppelin is that I don't have to spend time developing
>>>> different visualiztions. I have used tableau before I see Zeppelin to be
>>>> similar in some ways. ok now here is the problem I am trying to solve and
>>>> any help I can get will be great!
>>>>
>>>> say I am trying to build a time series graph(bar graph or whatever
>>>> works) where my x axis represent time and y axis represent total number of
>>>> transactions and say every second I get updates through web socket from my
>>>> server and I need the graph to be updated every second. thats it.
>>>>
>>>> please let me know if that is feasible.
>>>>
>>>> Thanks,
>>>> Kant
>>>>
>>>> On Wed, Sep 7, 2016 at 6:59 PM, spacewalkman@163.com <
>>>> spacewalkman@163.com> wrote:
>>>>
>>>>> i thought it was a separating zeppelin backend and frontend problem,
>>>>> but what @corneadoug say is a high-level WS description, maybe i
>>>>> misinterpretation @kant kodali’s issue
>>>>>
>>>>>
>>>>> 在 2016年9月8日,09:48,Corneau Damien <co...@gmail.com> 写道:
>>>>>
>>>>> This change wouldn't solve your issue, it is the address where the
>>>>> front-end send his API requests and listen to WS (zeppelin server)
>>>>> I guess your requirements are different.
>>>>>
>>>>> The way Zeppelin works is usually pretty simple:
>>>>>
>>>>> 1) You type your code in the front-end
>>>>> 2) That code is sent to Zeppelin server to be run
>>>>> 3) The server send it to the right processing engine
>>>>> 4) Processing engine send back the result
>>>>> 5) Zeppelin Server send a websocket event
>>>>> 6) Front-end show whatever he receives
>>>>>
>>>>> You might be able to find a few Notebook examples on how some people
>>>>> used Spark Streaming here:
>>>>> https://www.zeppelinhub.com/viewer/showcases/Streaming
>>>>>
>>>>> On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <ka...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hi! Thanks for this but I still see the big picture. I have not used
>>>>>> Angular before nor I am a frontend guy. so I have the following questions.
>>>>>>
>>>>>>
>>>>>> 1. Why do we need to change the source code? isn't this
>>>>>> configurable or isn't there a way to pass url as a parameter? If you think
>>>>>> it is the easiest way sure I can change that.
>>>>>> 2. How change this let me grab data from my websocket server and
>>>>>> display it with the charts/graphs (simple to graphs we see when we run sql
>>>>>> on Zeppelin notebook)
>>>>>> 3. if there is a simple example that would be awesome.
>>>>>>
>>>>>> Thanks again!
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com
>>>>>> spacewalkman@163.com wrote:
>>>>>>
>>>>>>> @kant kodali
>>>>>>>
>>>>>>> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js
>>>>>>> like this:
>>>>>>>
>>>>>>> this.getWebsocketUrl = function() {
>>>>>>> var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
>>>>>>> return wsProtocol + ‘//your_ip_address:' + this.getPort() +
>>>>>>> skipTrailingSlash(location.pathname) + '/ws';
>>>>>>> };
>>>>>>>
>>>>>>> this.getRestApiBase = function() {
>>>>>>> return location.protocol + '//your_ip_address:' +
>>>>>>> this.getPort() + skipTrailingSlash(location.pathname) +
>>>>>>> '/api';
>>>>>>> };
>>>>>>>
>>>>>>> 在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
>>>>>>>
>>>>>>> HI Guys,
>>>>>>>
>>>>>>> I have a server which can handle websocket connections. Now I would
>>>>>>> like to see if there is a way to tell apache zeppellin to create to
>>>>>>> websocket connect to my server and display the whatever it received?
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Kant
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>
>
Re: How to use web sockets with Zeppellin
Posted by kant kodali <ka...@gmail.com>.
Hi Corneau,
I appreciate the responses but again I am really looking for a specific
answer
1. "This protocol looks interesting but how do I construct messages such
that I can see different visualizations of charts?" This question is not
being addressed.
2. How can I use an existing interpreter and achieve my goal otherwords
again how can I tie all this thing to charts (I just haven't heard any
answer related to that)? If I were to write my own interpreter then I might
as well create my own UI.
It is ok if you guys say it is not possible and I would understand that and
probably pick a different route.
Thanks much,
Kant
On Thu, Sep 8, 2016 at 12:10 AM, Corneau Damien <co...@gmail.com>
wrote:
> You will probably need to make an interpreter for it, or use an existing
> one.
>
> https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/manual/interpreters.html
>
> You will find the list of existing interpreters in the menu.
>
> If you do need to create one, then you can refer to this guide
> https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/development/
> writingzeppelininterpreter.html
>
> On Thu, Sep 8, 2016 at 3:56 PM, kant kodali <ka...@gmail.com> wrote:
>
>> @spacewalkman Just an FYI I don't have anything to do with Spark at the
>> moment. I just have a node.js server which is capable of websocket
>> connections and ready to push data needed for charts.
>>
>> This protocol looks interesting but how do I construct messages such that
>> I can see different visualizations of charts? I am pretty sure I have
>> articulated my question clearly it will great if I can see a bit
>> detailed description or a simple example.
>>
>> I believe that I am asking for a very simple feature.
>>
>> Thanks a ton,
>> Kant
>>
>> On Wed, Sep 7, 2016 at 8:52 PM, spacewalkman@163.com <
>> spacewalkman@163.com> wrote:
>>
>>> maybe a custom SparkStreamingInterpreter can handle this.
>>>
>>> zeppelin WS protocol is defined in:
>>>
>>>
>>> 1. https://github.com/apache/zeppelin/blob/master/zeppelin-zeng
>>> ine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java
>>> <https://github.com/apache/zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java>
>>>
>>>
>>> every [c-s] message is handled by zeppelin backend, [s-c] is handled by
>>> zeppelin frontend.All you have to do is when new streaming data is there,
>>> triigger a [s-c] message from backend, a frontend event handler may also
>>> required.
>>>
>>>
>>> 在 2016年9月8日,11:39,kant kodali <ka...@gmail.com> 写道:
>>>
>>> ok here is a concrete example. I am still trying to connect the dots..If
>>> I were to split Zeppelin as both front end and backend then I wouldn't
>>> choose to use Zeppelin in the first place. The main motivation for me to
>>> explore Zeppelin is that I don't have to spend time developing different
>>> visualiztions. I have used tableau before I see Zeppelin to be similar in
>>> some ways. ok now here is the problem I am trying to solve and any help I
>>> can get will be great!
>>>
>>> say I am trying to build a time series graph(bar graph or whatever
>>> works) where my x axis represent time and y axis represent total number of
>>> transactions and say every second I get updates through web socket from my
>>> server and I need the graph to be updated every second. thats it.
>>>
>>> please let me know if that is feasible.
>>>
>>> Thanks,
>>> Kant
>>>
>>> On Wed, Sep 7, 2016 at 6:59 PM, spacewalkman@163.com <
>>> spacewalkman@163.com> wrote:
>>>
>>>> i thought it was a separating zeppelin backend and frontend problem,
>>>> but what @corneadoug say is a high-level WS description, maybe i
>>>> misinterpretation @kant kodali’s issue
>>>>
>>>>
>>>> 在 2016年9月8日,09:48,Corneau Damien <co...@gmail.com> 写道:
>>>>
>>>> This change wouldn't solve your issue, it is the address where the
>>>> front-end send his API requests and listen to WS (zeppelin server)
>>>> I guess your requirements are different.
>>>>
>>>> The way Zeppelin works is usually pretty simple:
>>>>
>>>> 1) You type your code in the front-end
>>>> 2) That code is sent to Zeppelin server to be run
>>>> 3) The server send it to the right processing engine
>>>> 4) Processing engine send back the result
>>>> 5) Zeppelin Server send a websocket event
>>>> 6) Front-end show whatever he receives
>>>>
>>>> You might be able to find a few Notebook examples on how some people
>>>> used Spark Streaming here:
>>>> https://www.zeppelinhub.com/viewer/showcases/Streaming
>>>>
>>>> On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <ka...@gmail.com> wrote:
>>>>
>>>>> Hi! Thanks for this but I still see the big picture. I have not used
>>>>> Angular before nor I am a frontend guy. so I have the following questions.
>>>>>
>>>>>
>>>>> 1. Why do we need to change the source code? isn't this
>>>>> configurable or isn't there a way to pass url as a parameter? If you think
>>>>> it is the easiest way sure I can change that.
>>>>> 2. How change this let me grab data from my websocket server and
>>>>> display it with the charts/graphs (simple to graphs we see when we run sql
>>>>> on Zeppelin notebook)
>>>>> 3. if there is a simple example that would be awesome.
>>>>>
>>>>> Thanks again!
>>>>>
>>>>>
>>>>>
>>>>> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com spacewalkman@163.com
>>>>> wrote:
>>>>>
>>>>>> @kant kodali
>>>>>>
>>>>>> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js
>>>>>> like this:
>>>>>>
>>>>>> this.getWebsocketUrl = function() {
>>>>>> var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
>>>>>> return wsProtocol + ‘//your_ip_address:' + this.getPort() +
>>>>>> skipTrailingSlash(location.pathname) + '/ws';
>>>>>> };
>>>>>>
>>>>>> this.getRestApiBase = function() {
>>>>>> return location.protocol + '//your_ip_address:' + this.getPort()
>>>>>> + skipTrailingSlash(location.pathname) +
>>>>>> '/api';
>>>>>> };
>>>>>>
>>>>>> 在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
>>>>>>
>>>>>> HI Guys,
>>>>>>
>>>>>> I have a server which can handle websocket connections. Now I would
>>>>>> like to see if there is a way to tell apache zeppellin to create to
>>>>>> websocket connect to my server and display the whatever it received?
>>>>>>
>>>>>> Thanks,
>>>>>> Kant
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>
>>>
>>
>
Re: How to use web sockets with Zeppellin
Posted by Corneau Damien <co...@gmail.com>.
You will probably need to make an interpreter for it, or use an existing
one.
https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/manual/interpreters.html
You will find the list of existing interpreters in the menu.
If you do need to create one, then you can refer to this guide
https://zeppelin.apache.org/docs/0.7.0-SNAPSHOT/development/writingzeppelininterpreter.html
On Thu, Sep 8, 2016 at 3:56 PM, kant kodali <ka...@gmail.com> wrote:
> @spacewalkman Just an FYI I don't have anything to do with Spark at the
> moment. I just have a node.js server which is capable of websocket
> connections and ready to push data needed for charts.
>
> This protocol looks interesting but how do I construct messages such that
> I can see different visualizations of charts? I am pretty sure I have
> articulated my question clearly it will great if I can see a bit
> detailed description or a simple example.
>
> I believe that I am asking for a very simple feature.
>
> Thanks a ton,
> Kant
>
> On Wed, Sep 7, 2016 at 8:52 PM, spacewalkman@163.com <spacewalkman@163.com
> > wrote:
>
>> maybe a custom SparkStreamingInterpreter can handle this.
>>
>> zeppelin WS protocol is defined in:
>>
>>
>> 1. https://github.com/apache/zeppelin/blob/master/zeppelin-zeng
>> ine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java
>> <https://github.com/apache/zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java>
>>
>>
>> every [c-s] message is handled by zeppelin backend, [s-c] is handled by
>> zeppelin frontend.All you have to do is when new streaming data is there,
>> triigger a [s-c] message from backend, a frontend event handler may also
>> required.
>>
>>
>> 在 2016年9月8日,11:39,kant kodali <ka...@gmail.com> 写道:
>>
>> ok here is a concrete example. I am still trying to connect the dots..If
>> I were to split Zeppelin as both front end and backend then I wouldn't
>> choose to use Zeppelin in the first place. The main motivation for me to
>> explore Zeppelin is that I don't have to spend time developing different
>> visualiztions. I have used tableau before I see Zeppelin to be similar in
>> some ways. ok now here is the problem I am trying to solve and any help I
>> can get will be great!
>>
>> say I am trying to build a time series graph(bar graph or whatever works)
>> where my x axis represent time and y axis represent total number of
>> transactions and say every second I get updates through web socket from my
>> server and I need the graph to be updated every second. thats it.
>>
>> please let me know if that is feasible.
>>
>> Thanks,
>> Kant
>>
>> On Wed, Sep 7, 2016 at 6:59 PM, spacewalkman@163.com <
>> spacewalkman@163.com> wrote:
>>
>>> i thought it was a separating zeppelin backend and frontend problem, but
>>> what @corneadoug say is a high-level WS description, maybe i
>>> misinterpretation @kant kodali’s issue
>>>
>>>
>>> 在 2016年9月8日,09:48,Corneau Damien <co...@gmail.com> 写道:
>>>
>>> This change wouldn't solve your issue, it is the address where the
>>> front-end send his API requests and listen to WS (zeppelin server)
>>> I guess your requirements are different.
>>>
>>> The way Zeppelin works is usually pretty simple:
>>>
>>> 1) You type your code in the front-end
>>> 2) That code is sent to Zeppelin server to be run
>>> 3) The server send it to the right processing engine
>>> 4) Processing engine send back the result
>>> 5) Zeppelin Server send a websocket event
>>> 6) Front-end show whatever he receives
>>>
>>> You might be able to find a few Notebook examples on how some people
>>> used Spark Streaming here:
>>> https://www.zeppelinhub.com/viewer/showcases/Streaming
>>>
>>> On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <ka...@gmail.com> wrote:
>>>
>>>> Hi! Thanks for this but I still see the big picture. I have not used
>>>> Angular before nor I am a frontend guy. so I have the following questions.
>>>>
>>>>
>>>> 1. Why do we need to change the source code? isn't this
>>>> configurable or isn't there a way to pass url as a parameter? If you think
>>>> it is the easiest way sure I can change that.
>>>> 2. How change this let me grab data from my websocket server and
>>>> display it with the charts/graphs (simple to graphs we see when we run sql
>>>> on Zeppelin notebook)
>>>> 3. if there is a simple example that would be awesome.
>>>>
>>>> Thanks again!
>>>>
>>>>
>>>>
>>>> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com spacewalkman@163.com
>>>> wrote:
>>>>
>>>>> @kant kodali
>>>>>
>>>>> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js like
>>>>> this:
>>>>>
>>>>> this.getWebsocketUrl = function() {
>>>>> var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
>>>>> return wsProtocol + ‘//your_ip_address:' + this.getPort() +
>>>>> skipTrailingSlash(location.pathname) + '/ws';
>>>>> };
>>>>>
>>>>> this.getRestApiBase = function() {
>>>>> return location.protocol + '//your_ip_address:' + this.getPort()
>>>>> + skipTrailingSlash(location.pathname) +
>>>>> '/api';
>>>>> };
>>>>>
>>>>> 在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
>>>>>
>>>>> HI Guys,
>>>>>
>>>>> I have a server which can handle websocket connections. Now I would
>>>>> like to see if there is a way to tell apache zeppellin to create to
>>>>> websocket connect to my server and display the whatever it received?
>>>>>
>>>>> Thanks,
>>>>> Kant
>>>>>
>>>>>
>>>>>
>>>
>>>
>>
>>
>
Re: How to use web sockets with Zeppellin
Posted by kant kodali <ka...@gmail.com>.
@spacewalkman Just an FYI I don't have anything to do with Spark at the
moment. I just have a node.js server which is capable of websocket
connections and ready to push data needed for charts.
This protocol looks interesting but how do I construct messages such that I
can see different visualizations of charts? I am pretty sure I have
articulated my question clearly it will great if I can see a bit
detailed description or a simple example.
I believe that I am asking for a very simple feature.
Thanks a ton,
Kant
On Wed, Sep 7, 2016 at 8:52 PM, spacewalkman@163.com <sp...@163.com>
wrote:
> maybe a custom SparkStreamingInterpreter can handle this.
>
> zeppelin WS protocol is defined in:
>
>
> 1. https://github.com/apache/zeppelin/blob/master/zeppelin-
> zengine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java
> <https://github.com/apache/zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java>
>
>
> every [c-s] message is handled by zeppelin backend, [s-c] is handled by
> zeppelin frontend.All you have to do is when new streaming data is there,
> triigger a [s-c] message from backend, a frontend event handler may also
> required.
>
>
> 在 2016年9月8日,11:39,kant kodali <ka...@gmail.com> 写道:
>
> ok here is a concrete example. I am still trying to connect the dots..If I
> were to split Zeppelin as both front end and backend then I wouldn't choose
> to use Zeppelin in the first place. The main motivation for me to explore
> Zeppelin is that I don't have to spend time developing different
> visualiztions. I have used tableau before I see Zeppelin to be similar in
> some ways. ok now here is the problem I am trying to solve and any help I
> can get will be great!
>
> say I am trying to build a time series graph(bar graph or whatever works)
> where my x axis represent time and y axis represent total number of
> transactions and say every second I get updates through web socket from my
> server and I need the graph to be updated every second. thats it.
>
> please let me know if that is feasible.
>
> Thanks,
> Kant
>
> On Wed, Sep 7, 2016 at 6:59 PM, spacewalkman@163.com <spacewalkman@163.com
> > wrote:
>
>> i thought it was a separating zeppelin backend and frontend problem, but
>> what @corneadoug say is a high-level WS description, maybe i
>> misinterpretation @kant kodali’s issue
>>
>>
>> 在 2016年9月8日,09:48,Corneau Damien <co...@gmail.com> 写道:
>>
>> This change wouldn't solve your issue, it is the address where the
>> front-end send his API requests and listen to WS (zeppelin server)
>> I guess your requirements are different.
>>
>> The way Zeppelin works is usually pretty simple:
>>
>> 1) You type your code in the front-end
>> 2) That code is sent to Zeppelin server to be run
>> 3) The server send it to the right processing engine
>> 4) Processing engine send back the result
>> 5) Zeppelin Server send a websocket event
>> 6) Front-end show whatever he receives
>>
>> You might be able to find a few Notebook examples on how some people used
>> Spark Streaming here:
>> https://www.zeppelinhub.com/viewer/showcases/Streaming
>>
>> On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <ka...@gmail.com> wrote:
>>
>>> Hi! Thanks for this but I still see the big picture. I have not used
>>> Angular before nor I am a frontend guy. so I have the following questions.
>>>
>>>
>>> 1. Why do we need to change the source code? isn't this configurable
>>> or isn't there a way to pass url as a parameter? If you think it is the
>>> easiest way sure I can change that.
>>> 2. How change this let me grab data from my websocket server and
>>> display it with the charts/graphs (simple to graphs we see when we run sql
>>> on Zeppelin notebook)
>>> 3. if there is a simple example that would be awesome.
>>>
>>> Thanks again!
>>>
>>>
>>>
>>> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com spacewalkman@163.com
>>> wrote:
>>>
>>>> @kant kodali
>>>>
>>>> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js like
>>>> this:
>>>>
>>>> this.getWebsocketUrl = function() {
>>>> var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
>>>> return wsProtocol + ‘//your_ip_address:' + this.getPort() +
>>>> skipTrailingSlash(location.pathname) + '/ws';
>>>> };
>>>>
>>>> this.getRestApiBase = function() {
>>>> return location.protocol + '//your_ip_address:' + this.getPort() +
>>>> skipTrailingSlash(location.pathname) +
>>>> '/api';
>>>> };
>>>>
>>>> 在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
>>>>
>>>> HI Guys,
>>>>
>>>> I have a server which can handle websocket connections. Now I would
>>>> like to see if there is a way to tell apache zeppellin to create to
>>>> websocket connect to my server and display the whatever it received?
>>>>
>>>> Thanks,
>>>> Kant
>>>>
>>>>
>>>>
>>
>>
>
>
Re: How to use web sockets with Zeppellin
Posted by "spacewalkman@163.com" <sp...@163.com>.
maybe a custom SparkStreamingInterpreter can handle this.
zeppelin WS protocol is defined in:
https://github.com/apache/zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java <https://github.com/apache/zeppelin/blob/master/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/socket/Message.java>
every [c-s] message is handled by zeppelin backend, [s-c] is handled by zeppelin frontend.All you have to do is when new streaming data is there, triigger a [s-c] message from backend, a frontend event handler may also required.
> 在 2016年9月8日,11:39,kant kodali <ka...@gmail.com> 写道:
>
> ok here is a concrete example. I am still trying to connect the dots..If I were to split Zeppelin as both front end and backend then I wouldn't choose to use Zeppelin in the first place. The main motivation for me to explore Zeppelin is that I don't have to spend time developing different visualiztions. I have used tableau before I see Zeppelin to be similar in some ways. ok now here is the problem I am trying to solve and any help I can get will be great!
>
> say I am trying to build a time series graph(bar graph or whatever works) where my x axis represent time and y axis represent total number of transactions and say every second I get updates through web socket from my server and I need the graph to be updated every second. thats it.
>
> please let me know if that is feasible.
>
> Thanks,
> Kant
>
> On Wed, Sep 7, 2016 at 6:59 PM, spacewalkman@163.com <ma...@163.com> <spacewalkman@163.com <ma...@163.com>> wrote:
> i thought it was a separating zeppelin backend and frontend problem, but what @corneadoug say is a high-level WS description, maybe i misinterpretation @kant kodali’s issue
>
>
>> 在 2016年9月8日,09:48,Corneau Damien <corneadoug@gmail.com <ma...@gmail.com>> 写道:
>>
>> This change wouldn't solve your issue, it is the address where the front-end send his API requests and listen to WS (zeppelin server)
>> I guess your requirements are different.
>>
>> The way Zeppelin works is usually pretty simple:
>>
>> 1) You type your code in the front-end
>> 2) That code is sent to Zeppelin server to be run
>> 3) The server send it to the right processing engine
>> 4) Processing engine send back the result
>> 5) Zeppelin Server send a websocket event
>> 6) Front-end show whatever he receives
>>
>> You might be able to find a few Notebook examples on how some people used Spark Streaming here:
>> https://www.zeppelinhub.com/viewer/showcases/Streaming <https://www.zeppelinhub.com/viewer/showcases/Streaming>
>>
>> On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <kanth909@gmail.com <ma...@gmail.com>> wrote:
>> Hi! Thanks for this but I still see the big picture. I have not used Angular before nor I am a frontend guy. so I have the following questions.
>>
>> Why do we need to change the source code? isn't this configurable or isn't there a way to pass url as a parameter? If you think it is the easiest way sure I can change that.
>> How change this let me grab data from my websocket server and display it with the charts/graphs (simple to graphs we see when we run sql on Zeppelin notebook)
>> if there is a simple example that would be awesome.
>> Thanks again!
>>
>>
>>
>>
>>
>> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com <ma...@163.com> spacewalkman@163.com <ma...@163.com> wrote:
>> @kant kodali
>>
>> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js like this:
>>
>> this.getWebsocketUrl = function() {
>> var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
>> return wsProtocol + ‘//your_ip_address:' + this.getPort() + skipTrailingSlash(location.pathname) + '/ws';
>> };
>>
>> this.getRestApiBase = function() {
>> return location.protocol + '//your_ip_address:' + this.getPort() + skipTrailingSlash(location.pathname) +
>> '/api';
>> };
>>> 在 2016年9月7日,15:39,kant kodali <kanth909@gmail.com <ma...@gmail.com>> 写道:
>>>
>>> HI Guys,
>>>
>>> I have a server which can handle websocket connections. Now I would like to see if there is a way to tell apache zeppellin to create to websocket connect to my server and display the whatever it received?
>>>
>>> Thanks,
>>> Kant
>>
>>
>
>
Re: How to use web sockets with Zeppellin
Posted by kant kodali <ka...@gmail.com>.
ok here is a concrete example. I am still trying to connect the dots..If I
were to split Zeppelin as both front end and backend then I wouldn't choose
to use Zeppelin in the first place. The main motivation for me to explore
Zeppelin is that I don't have to spend time developing different
visualiztions. I have used tableau before I see Zeppelin to be similar in
some ways. ok now here is the problem I am trying to solve and any help I
can get will be great!
say I am trying to build a time series graph(bar graph or whatever works)
where my x axis represent time and y axis represent total number of
transactions and say every second I get updates through web socket from my
server and I need the graph to be updated every second. thats it.
please let me know if that is feasible.
Thanks,
Kant
On Wed, Sep 7, 2016 at 6:59 PM, spacewalkman@163.com <sp...@163.com>
wrote:
> i thought it was a separating zeppelin backend and frontend problem, but
> what @corneadoug say is a high-level WS description, maybe i
> misinterpretation @kant kodali’s issue
>
>
> 在 2016年9月8日,09:48,Corneau Damien <co...@gmail.com> 写道:
>
> This change wouldn't solve your issue, it is the address where the
> front-end send his API requests and listen to WS (zeppelin server)
> I guess your requirements are different.
>
> The way Zeppelin works is usually pretty simple:
>
> 1) You type your code in the front-end
> 2) That code is sent to Zeppelin server to be run
> 3) The server send it to the right processing engine
> 4) Processing engine send back the result
> 5) Zeppelin Server send a websocket event
> 6) Front-end show whatever he receives
>
> You might be able to find a few Notebook examples on how some people used
> Spark Streaming here:
> https://www.zeppelinhub.com/viewer/showcases/Streaming
>
> On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <ka...@gmail.com> wrote:
>
>> Hi! Thanks for this but I still see the big picture. I have not used
>> Angular before nor I am a frontend guy. so I have the following questions.
>>
>>
>> 1. Why do we need to change the source code? isn't this configurable
>> or isn't there a way to pass url as a parameter? If you think it is the
>> easiest way sure I can change that.
>> 2. How change this let me grab data from my websocket server and
>> display it with the charts/graphs (simple to graphs we see when we run sql
>> on Zeppelin notebook)
>> 3. if there is a simple example that would be awesome.
>>
>> Thanks again!
>>
>>
>>
>> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com spacewalkman@163.com
>> wrote:
>>
>>> @kant kodali
>>>
>>> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js like
>>> this:
>>>
>>> this.getWebsocketUrl = function() {
>>> var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
>>> return wsProtocol + ‘//your_ip_address:' + this.getPort() +
>>> skipTrailingSlash(location.pathname) + '/ws';
>>> };
>>>
>>> this.getRestApiBase = function() {
>>> return location.protocol + '//your_ip_address:' + this.getPort() +
>>> skipTrailingSlash(location.pathname) +
>>> '/api';
>>> };
>>>
>>> 在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
>>>
>>> HI Guys,
>>>
>>> I have a server which can handle websocket connections. Now I would like
>>> to see if there is a way to tell apache zeppellin to create to websocket
>>> connect to my server and display the whatever it received?
>>>
>>> Thanks,
>>> Kant
>>>
>>>
>>>
>
>
Re: How to use web sockets with Zeppellin
Posted by "spacewalkman@163.com" <sp...@163.com>.
i thought it was a separating zeppelin backend and frontend problem, but what @corneadoug say is a high-level WS description, maybe i misinterpretation @kant kodali’s issue
> 在 2016年9月8日,09:48,Corneau Damien <co...@gmail.com> 写道:
>
> This change wouldn't solve your issue, it is the address where the front-end send his API requests and listen to WS (zeppelin server)
> I guess your requirements are different.
>
> The way Zeppelin works is usually pretty simple:
>
> 1) You type your code in the front-end
> 2) That code is sent to Zeppelin server to be run
> 3) The server send it to the right processing engine
> 4) Processing engine send back the result
> 5) Zeppelin Server send a websocket event
> 6) Front-end show whatever he receives
>
> You might be able to find a few Notebook examples on how some people used Spark Streaming here:
> https://www.zeppelinhub.com/viewer/showcases/Streaming <https://www.zeppelinhub.com/viewer/showcases/Streaming>
>
> On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <kanth909@gmail.com <ma...@gmail.com>> wrote:
> Hi! Thanks for this but I still see the big picture. I have not used Angular before nor I am a frontend guy. so I have the following questions.
>
> Why do we need to change the source code? isn't this configurable or isn't there a way to pass url as a parameter? If you think it is the easiest way sure I can change that.
> How change this let me grab data from my websocket server and display it with the charts/graphs (simple to graphs we see when we run sql on Zeppelin notebook)
> if there is a simple example that would be awesome.
> Thanks again!
>
>
>
>
>
> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com <ma...@163.com> spacewalkman@163.com <ma...@163.com> wrote:
> @kant kodali
>
> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js like this:
>
> this.getWebsocketUrl = function() {
> var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
> return wsProtocol + ‘//your_ip_address:' + this.getPort() + skipTrailingSlash(location.pathname) + '/ws';
> };
>
> this.getRestApiBase = function() {
> return location.protocol + '//your_ip_address:' + this.getPort() + skipTrailingSlash(location.pathname) +
> '/api';
> };
>> 在 2016年9月7日,15:39,kant kodali <kanth909@gmail.com <ma...@gmail.com>> 写道:
>>
>> HI Guys,
>>
>> I have a server which can handle websocket connections. Now I would like to see if there is a way to tell apache zeppellin to create to websocket connect to my server and display the whatever it received?
>>
>> Thanks,
>> Kant
>
>
Re: How to use web sockets with Zeppellin
Posted by Corneau Damien <co...@gmail.com>.
This change wouldn't solve your issue, it is the address where the
front-end send his API requests and listen to WS (zeppelin server)
I guess your requirements are different.
The way Zeppelin works is usually pretty simple:
1) You type your code in the front-end
2) That code is sent to Zeppelin server to be run
3) The server send it to the right processing engine
4) Processing engine send back the result
5) Zeppelin Server send a websocket event
6) Front-end show whatever he receives
You might be able to find a few Notebook examples on how some people used
Spark Streaming here:
https://www.zeppelinhub.com/viewer/showcases/Streaming
On Thu, Sep 8, 2016 at 3:30 AM, kant kodali <ka...@gmail.com> wrote:
> Hi! Thanks for this but I still see the big picture. I have not used
> Angular before nor I am a frontend guy. so I have the following questions.
>
>
> 1. Why do we need to change the source code? isn't this configurable
> or isn't there a way to pass url as a parameter? If you think it is the
> easiest way sure I can change that.
> 2. How change this let me grab data from my websocket server and
> display it with the charts/graphs (simple to graphs we see when we run sql
> on Zeppelin notebook)
> 3. if there is a simple example that would be awesome.
>
> Thanks again!
>
>
>
> On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com spacewalkman@163.com
> wrote:
>
>> @kant kodali
>>
>> change zeppelin-web\ src\components\baseUrl\baseUrl.service.js like
>> this:
>>
>> this.getWebsocketUrl = function() {
>> var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
>> return wsProtocol + ‘//your_ip_address:' + this.getPort() +
>> skipTrailingSlash(location.pathname) + '/ws';
>> };
>>
>> this.getRestApiBase = function() {
>> return location.protocol + '//your_ip_address:' + this.getPort() +
>> skipTrailingSlash(location.pathname) +
>> '/api';
>> };
>>
>> 在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
>>
>> HI Guys,
>>
>> I have a server which can handle websocket connections. Now I would like
>> to see if there is a way to tell apache zeppellin to create to websocket
>> connect to my server and display the whatever it received?
>>
>> Thanks,
>> Kant
>>
>>
>>
Re: How to use web sockets with Zeppellin
Posted by kant kodali <ka...@gmail.com>.
Hi! Thanks for this but I still see the big picture. I have not used Angular
before nor I am a frontend guy. so I have the following questions.
1. Why do we need to change the source code? isn't this configurable or isn't
there a way to pass url as a parameter? If you think it is the easiest way
sure I can change that.
2. How change this let me grab data from my websocket server and display it
with the charts/graphs (simple to graphs we see when we run sql on Zeppelin
notebook)
3. if there is a simple example that would be awesome.
Thanks again!
On Wed, Sep 7, 2016 5:05 AM, spacewalkman@163.com spacewalkman@163.com
wrote:
@kant kodali
change zeppelin-web\src\components\baseUrl\baseUrl.service.js like this:
this.getWebsocketUrl = function() { var wsProtocol = location.protocol ===
'https:' ? 'wss:' : 'ws:'; return wsProtocol + ‘//your_ip_address:' +
this.getPort() + skipTrailingSlash(location.pathname) + '/ws'; };
this.getRestApiBase = function() { return location.protocol + '//
your_ip_address:' + this.getPort() + skipTrailingSlash(location.pathname) +
'/api'; };在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
HI Guys,
I have a server which can handle websocket connections. Now I would like to see
if there is a way to tell apache zeppellin to create to websocket connect to my
server and display the whatever it received?
Thanks,Kant
Re: How to use web sockets with Zeppellin
Posted by "spacewalkman@163.com" <sp...@163.com>.
@kant kodali
change zeppelin-web\ src\components\baseUrl\baseUrl.service.js like this:
this.getWebsocketUrl = function() {
var wsProtocol = location.protocol === 'https:' ? 'wss:' : 'ws:';
return wsProtocol + ‘//your_ip_address:' + this.getPort() + skipTrailingSlash(location.pathname) + '/ws';
};
this.getRestApiBase = function() {
return location.protocol + '//your_ip_address:' + this.getPort() + skipTrailingSlash(location.pathname) +
'/api';
};
> 在 2016年9月7日,15:39,kant kodali <ka...@gmail.com> 写道:
>
> HI Guys,
>
> I have a server which can handle websocket connections. Now I would like to see if there is a way to tell apache zeppellin to create to websocket connect to my server and display the whatever it received?
>
> Thanks,
> Kant