<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: About Apache NiFi and ESP integration in Streaming Analytics</title>
    <link>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/453680#M43</link>
    <description>&lt;P&gt;Hi Andy&lt;/P&gt;&lt;P&gt;Thanks very much for your reply. I was planning to call a NiFi process flow with the HandleHTTP request and HandleHTTPResponse at the start and end of the flow. This would be called from a web server, and within the flow, there will be :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;-&amp;nbsp;A PutESP processor which will publish the request to the source ESP window&lt;/P&gt;&lt;P&gt;- A ListenESP which will search for a response from the output / last window in the ESP model (this will be a ModelScore window)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, from your answer, I&amp;nbsp;get the impression we can accomplish the same objective even without NiFi, such as :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- Make a POST request from the web server to the ESP source window using a publish/subscribe API or a&amp;nbsp; Web socket publisher (with the data along with an id value)&lt;/P&gt;&lt;P&gt;-&amp;nbsp;Follow this up with another POST request from the web server to the ESP model through the dfesp_rest_subscriber (with&amp;nbsp;the same id value)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The browser (or the search bar component in the browser) shall communicate with the server through an Ajax&amp;nbsp;request, so that just the search bar container can be refreshed with the result.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Would this be possible?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Sundar&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 12 Apr 2018 17:44:34 GMT</pubDate>
    <dc:creator>SundareshS</dc:creator>
    <dc:date>2018-04-12T17:44:34Z</dc:date>
    <item>
      <title>About Apache NiFi and ESP integration</title>
      <link>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/452132#M39</link>
      <description>&lt;P&gt;Hi all&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Apologies that this query is more to do with a ESP related use case, rather than IoT. I am banking on the abundance of ESP knowledge to be found here.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SAS and Hortonworks have integrated SAS ESP with Apache NiFi (&lt;A href="https://hortonworks.com/blog/moving-streaming-analytics-out-of-the-data-center/" target="_blank"&gt;https://hortonworks.com/blog/moving-streaming-analytics-out-of-the-data-center/&lt;/A&gt;) , and I wanted to see if this will lend itself well to a "auto-suggest" / recommendation type capability on a software application.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Using some javascript/html services to capture an entered term, I can ingest this into an ESP window which then scores based on a model, but&amp;nbsp;I&amp;nbsp;don't want to write the result to some database / file. Rather, I want to direct it back to the same&amp;nbsp;input form (much like the auto-complete features you see on a website)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Will the NiFi integration help in solving the last part of the problem - i.e. getting the results back ? Or, can we already accomplish this directly between the website and ESP?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;Sundar&lt;/P&gt;</description>
      <pubDate>Fri, 06 Apr 2018 22:56:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/452132#M39</guid>
      <dc:creator>SundareshS</dc:creator>
      <dc:date>2018-04-06T22:56:39Z</dc:date>
    </item>
    <item>
      <title>Re: About Apache NiFi and ESP integration</title>
      <link>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/452605#M40</link>
      <description>&lt;P&gt;Hi Sundar,&lt;/P&gt;
&lt;P&gt;I'm not sure if Apache NiFi is the right tool or not.&amp;nbsp; What piece of Apache NiFi would you use to return the suggestion to the browser?&amp;nbsp; Would this be completely implemented on the browser side or would the browser make a request to a web server to get the scoring?&amp;nbsp; If the web server is used, I'm wondering if the dfesp_rest_subscriber could be used to POST the webserver with the results of the scoring event in ESP.&amp;nbsp; Then, that response could be given back to the browser.&amp;nbsp; Another option, assuming ESP 5.1 is being used, would be to use the &lt;A href="http://go.documentation.sas.com/?cdcId=espcdc&amp;amp;cdcVersion=5.1&amp;amp;docsetId=espws&amp;amp;docsetTarget=n0xidxlafchwwqn1lzymm92qqjs6.htm&amp;amp;locale=en" target="_self"&gt;Websocket API&lt;/A&gt; to subscribe to the ESP model from the browser and receive the result back that way.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks,&lt;/P&gt;
&lt;P&gt;Andy&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 09 Apr 2018 19:02:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/452605#M40</guid>
      <dc:creator>AndyT_SAS</dc:creator>
      <dc:date>2018-04-09T19:02:12Z</dc:date>
    </item>
    <item>
      <title>Re: About Apache NiFi and ESP integration</title>
      <link>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/453680#M43</link>
      <description>&lt;P&gt;Hi Andy&lt;/P&gt;&lt;P&gt;Thanks very much for your reply. I was planning to call a NiFi process flow with the HandleHTTP request and HandleHTTPResponse at the start and end of the flow. This would be called from a web server, and within the flow, there will be :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;-&amp;nbsp;A PutESP processor which will publish the request to the source ESP window&lt;/P&gt;&lt;P&gt;- A ListenESP which will search for a response from the output / last window in the ESP model (this will be a ModelScore window)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, from your answer, I&amp;nbsp;get the impression we can accomplish the same objective even without NiFi, such as :&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- Make a POST request from the web server to the ESP source window using a publish/subscribe API or a&amp;nbsp; Web socket publisher (with the data along with an id value)&lt;/P&gt;&lt;P&gt;-&amp;nbsp;Follow this up with another POST request from the web server to the ESP model through the dfesp_rest_subscriber (with&amp;nbsp;the same id value)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The browser (or the search bar component in the browser) shall communicate with the server through an Ajax&amp;nbsp;request, so that just the search bar container can be refreshed with the result.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Would this be possible?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;Sundar&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 12 Apr 2018 17:44:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/453680#M43</guid>
      <dc:creator>SundareshS</dc:creator>
      <dc:date>2018-04-12T17:44:34Z</dc:date>
    </item>
    <item>
      <title>Re: About Apache NiFi and ESP integration</title>
      <link>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/454457#M44</link>
      <description>&lt;P&gt;Yes, an Ajax request could be sent to the webserver, which could post an event to ESP, then process the response from the POST request received from the dfesp_rest_subscriber.&amp;nbsp; This would eliminate the use of web sockets from the browser to ESP since all of the communication would be from the webserver to the ESP server.&amp;nbsp; The browser wouldn't need to know any information about the ESP server.&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Apr 2018 15:14:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/454457#M44</guid>
      <dc:creator>AndyT_SAS</dc:creator>
      <dc:date>2018-04-16T15:14:57Z</dc:date>
    </item>
    <item>
      <title>Re: About Apache NiFi and ESP integration</title>
      <link>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/454470#M45</link>
      <description>&lt;P&gt;Thanks very much. That makes things clear.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The only pending action would be to add some additional&amp;nbsp;process for a fall back option - the two POST requests (for publish and subscribe) are asynchronous, therefore it is possible that there might not be an answer ready when&amp;nbsp;&lt;SPAN&gt;dfesp_rest_subscriber is requested. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;My feeling is that this may not be something that SAS can handle, one might need to write a program in JS/ web-server to fall back against a standard (less accurate) response - and return whichever response comes back faster - would that be correct?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;regards&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Sundar&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Apr 2018 15:28:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/454470#M45</guid>
      <dc:creator>SundareshS</dc:creator>
      <dc:date>2018-04-16T15:28:36Z</dc:date>
    </item>
    <item>
      <title>Re: About Apache NiFi and ESP integration</title>
      <link>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/454507#M46</link>
      <description>&lt;P&gt;The dfesp_rest_subscriber adapter should always be running.&amp;nbsp; This way, whenever an event arrives from the window being subscribed to, the POST request can be made to the HTTP endpoint.&amp;nbsp; That would be better than having the adapter start/stop frequently.&lt;/P&gt;
&lt;P&gt;I agree you will want a fallback mechanism to send a response if the POST request from the dfesp_rest_subscriber is not received in the required interval.&amp;nbsp; This way the browser always receives a response to the initial request.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Apr 2018 16:38:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Streaming-Analytics/About-Apache-NiFi-and-ESP-integration/m-p/454507#M46</guid>
      <dc:creator>AndyT_SAS</dc:creator>
      <dc:date>2018-04-16T16:38:52Z</dc:date>
    </item>
  </channel>
</rss>

