<?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: Number of requests made to the SSE in Integration, Extension &amp; APIs</title>
    <link>https://community.qlik.com/t5/Integration-Extension-APIs/Number-of-requests-made-to-the-SSE/m-p/1706718#M14653</link>
    <description>&lt;P&gt;That's a really interesting observation.&amp;nbsp; I replicated your observation by testing with&amp;nbsp;&lt;A href="https://github.com/RobWunderlich/qcb-qlik-sse" target="_blank"&gt;https://github.com/RobWunderlich/qcb-qlik-sse&lt;/A&gt;&amp;nbsp;function "QCB.SampleScalar(field, 15)" which is a simple test function. Fours rows of data made one call and one data bundle.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I changed the expression to "QCB.SampleScalar(field, 15) + 1" and that made four calls, one data row per bundle.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I don't know why this is so, but I'm going to ask around.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/6446"&gt;@rbecher&lt;/a&gt;&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/8259"&gt;@Steven_Pressland&lt;/a&gt;&amp;nbsp;any thoughts?&lt;/P&gt;&lt;P&gt;-Rob&lt;/P&gt;</description>
    <pubDate>Sat, 30 May 2020 04:25:11 GMT</pubDate>
    <dc:creator>rwunderlich</dc:creator>
    <dc:date>2020-05-30T04:25:11Z</dc:date>
    <item>
      <title>Number of requests made to the SSE</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Number-of-requests-made-to-the-SSE/m-p/1702340#M14652</link>
      <description>&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;I observed the following behaviour. Can someone tell me if this is a known limitation, architectural design, known bug or something else entirely?&lt;/P&gt;&lt;P&gt;I simplified the problem for this forum.&lt;/P&gt;&lt;P&gt;Let’s say I have one SSE function: &lt;STRONG&gt;SSE.Increase&lt;/STRONG&gt;, which will increase a given field by 5.&lt;/P&gt;&lt;P&gt;Additionally, my datamodel has one table with &lt;U&gt;5000 rows&lt;/U&gt; and two fields:&lt;/P&gt;&lt;TABLE border="1" width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="50%"&gt;my_id&lt;/TD&gt;&lt;TD width="50%"&gt;my_number&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;with my_id being a dimension and my_number a measure.&lt;/P&gt;&lt;P&gt;Now, if I build a table in a QlikSense sheet with:&lt;/P&gt;&lt;TABLE border="1" width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="33.333333333333336%" height="25px"&gt;Column-Name&lt;/TD&gt;&lt;TD width="33.333333333333336%" height="25px"&gt;Type&lt;/TD&gt;&lt;TD width="33.333333333333336%" height="25px"&gt;Value&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="33.333333333333336%" height="25px"&gt;Column 1&lt;/TD&gt;&lt;TD width="33.333333333333336%" height="25px"&gt;Dimension&lt;/TD&gt;&lt;TD width="33.333333333333336%" height="25px"&gt;my_id&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="25px"&gt;Column 2&lt;/TD&gt;&lt;TD height="25px"&gt;Measure&lt;/TD&gt;&lt;TD height="25px"&gt;SSE.Increase(my_number)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;my SSE function will be called &lt;STRONG&gt;once with 5000 rows&lt;/STRONG&gt; =&amp;gt; high performance.&lt;/P&gt;&lt;P&gt;2nd try: I now change my table to:&lt;/P&gt;&lt;TABLE border="1" width="543px"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="176.867px" height="25px"&gt;Column-Name&lt;/TD&gt;&lt;TD width="177.4px" height="25px"&gt;Type&lt;/TD&gt;&lt;TD width="187.733px" height="25px"&gt;Value&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="176.867px" height="25px"&gt;Column 1&lt;/TD&gt;&lt;TD width="177.4px" height="25px"&gt;Dimension&lt;/TD&gt;&lt;TD width="187.733px" height="25px"&gt;my_id&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="176.867px" height="25px"&gt;Column 2&lt;/TD&gt;&lt;TD width="177.4px" height="25px"&gt;Measure&lt;/TD&gt;&lt;TD width="187.733px" height="25px"&gt;SSE.Increase(my_number) &lt;STRONG&gt;+ 1&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This will lead to my SSE function to be called &lt;STRONG&gt;5000 times with &lt;U&gt;1 row each&lt;/U&gt;&lt;/STRONG&gt; =&amp;gt; significant decrease in performance.&lt;/P&gt;&lt;P&gt;And lastly, another table:&lt;/P&gt;&lt;TABLE border="1" width="543px"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD width="176.867px" height="25px"&gt;Column-Name&lt;/TD&gt;&lt;TD width="177.4px" height="25px"&gt;Type&lt;/TD&gt;&lt;TD width="187.733px" height="25px"&gt;Value&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="176.867px" height="25px"&gt;Column 1&lt;/TD&gt;&lt;TD width="177.4px" height="25px"&gt;Dimension&lt;/TD&gt;&lt;TD width="187.733px" height="25px"&gt;my_id&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="176.867px" height="25px"&gt;Column 2&lt;/TD&gt;&lt;TD width="177.4px" height="25px"&gt;Measure&lt;/TD&gt;&lt;TD width="187.733px" height="25px"&gt;SSE.Increase(my_number)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="176.867px"&gt;Column 3&lt;/TD&gt;&lt;TD width="177.4px"&gt;Measure&lt;/TD&gt;&lt;TD width="187.733px"&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD width="176.867px"&gt;Column 4&lt;/TD&gt;&lt;TD width="177.4px"&gt;Measure&lt;/TD&gt;&lt;TD width="187.733px"&gt;[Column 2] + [Column 3]&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This time, again, QlikSense will call my SSE function &lt;STRONG&gt;just once with 5000 rows&lt;/STRONG&gt; =&amp;gt; high performance. This table will lead to the same results as table #2, but with a much better performance (and some additional columns...)&lt;/P&gt;&lt;P&gt;I tested this with the latest Qlik Sense Version.&lt;/P&gt;&lt;P&gt;As I stated in the beginning: Why?&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;Murat&lt;/P&gt;</description>
      <pubDate>Sat, 16 Nov 2024 02:26:11 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Number-of-requests-made-to-the-SSE/m-p/1702340#M14652</guid>
      <dc:creator>kavak</dc:creator>
      <dc:date>2024-11-16T02:26:11Z</dc:date>
    </item>
    <item>
      <title>Re: Number of requests made to the SSE</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Number-of-requests-made-to-the-SSE/m-p/1706718#M14653</link>
      <description>&lt;P&gt;That's a really interesting observation.&amp;nbsp; I replicated your observation by testing with&amp;nbsp;&lt;A href="https://github.com/RobWunderlich/qcb-qlik-sse" target="_blank"&gt;https://github.com/RobWunderlich/qcb-qlik-sse&lt;/A&gt;&amp;nbsp;function "QCB.SampleScalar(field, 15)" which is a simple test function. Fours rows of data made one call and one data bundle.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I changed the expression to "QCB.SampleScalar(field, 15) + 1" and that made four calls, one data row per bundle.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I don't know why this is so, but I'm going to ask around.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/6446"&gt;@rbecher&lt;/a&gt;&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/8259"&gt;@Steven_Pressland&lt;/a&gt;&amp;nbsp;any thoughts?&lt;/P&gt;&lt;P&gt;-Rob&lt;/P&gt;</description>
      <pubDate>Sat, 30 May 2020 04:25:11 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Number-of-requests-made-to-the-SSE/m-p/1706718#M14653</guid>
      <dc:creator>rwunderlich</dc:creator>
      <dc:date>2020-05-30T04:25:11Z</dc:date>
    </item>
    <item>
      <title>Re: Number of requests made to the SSE</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Number-of-requests-made-to-the-SSE/m-p/1706731#M14654</link>
      <description>&lt;P&gt;I guess it switches to an aggregation (only wrapped).&lt;/P&gt;</description>
      <pubDate>Sat, 30 May 2020 07:08:07 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Number-of-requests-made-to-the-SSE/m-p/1706731#M14654</guid>
      <dc:creator>rbecher</dc:creator>
      <dc:date>2020-05-30T07:08:07Z</dc:date>
    </item>
    <item>
      <title>Re: Number of requests made to the SSE</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Number-of-requests-made-to-the-SSE/m-p/1707119#M14655</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;You have run into a limitation. Nested SSE expressions are currently always evaluated per row. The optimizations which collects the data into a single bundle only kicks in for outer expressions, like &lt;FONT face="courier new,courier"&gt;SSE.Increase(my_number)&lt;/FONT&gt;.&lt;/P&gt;&lt;P&gt;Adding a + 1 may seem like a small thing, but it will&lt;SPAN&gt;&amp;nbsp;prevent this optimization since the SSE call becomes nested. You may not think of it like one, but´+´ is actually a function with some special syntax. The behavior might be clearer if you think of it like &lt;FONT face="courier new,courier"&gt;Add(SSE.Increase(my_number), 1)&lt;/FONT&gt;.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Hopefully further optimizations can be added at some point to handle cases such as this.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;I hope this helped, good luck with your future experiments!&lt;BR /&gt;Markus Helgesson&lt;/P&gt;</description>
      <pubDate>Mon, 01 Jun 2020 12:49:20 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Number-of-requests-made-to-the-SSE/m-p/1707119#M14655</guid>
      <dc:creator>Markus-Helgesson</dc:creator>
      <dc:date>2020-06-01T12:49:20Z</dc:date>
    </item>
  </channel>
</rss>

