Caching with pivot table

Answered
kumar asked on July 27, 2017

Hi,
We are using inline Json datasource for loading the pivot table. now a days, we began to load some huge data around 300k+ data.
Our clients reporting issues, some of the times the entire browser is hang while loading(intermittently). 
I would like to know the some recommendations from you and mentioned below questions:
1 - After loading the data into flexmonster, the browser automatically cache the data?
2 - Is there a way that we can avoid flexmonster not to cache the data into browser? Can we handle/any configurable option in flexmonster?
Please let me know if there is any other guidelines/recommendation that you can suggest.
Thanks & Regards,
Sunilkumar.V

10 answers

Public
Tanya Gryshko Tanya Gryshko Flexmonster July 28, 2017

Hello Sunilkumar.V,
Thank you for writing. Our component is client-side and the data is always stored in browser memory. Some huge data from inline JSON may be the cause of browser hanging. To avoid such situations we recommend loading JSON data from the file or server-side script which generates JSON data. This way the data is loaded much faster. Please consider this option and tell us whether it solves your problem.
Regards,
Tanya

Public
kumar July 31, 2017

Hi Tanya,
Our data would be always dynamic, that's why we generate JSON data/array on server side and return to the UI/browser from the back-end services. Is that you are suggesting above server-side script means? or Please let me know if it's something else?
Loading JSON would be possible only from the local right? as per the flexmonster feature list/demo. IS there any possibility that we can load the JSON file from server/remote like Remote CSV ? Please suggest.
Another one: if I use Remote CSV feature for loading the data, How flexmonster loads the data without using browser's memory?
Please clarify.
 
Thanks & Regards,
Sunilkumar.V

Public
Tanya Gryshko Tanya Gryshko Flexmonster August 1, 2017

Hello Sunilkumar.V,
Thank you for your questions. Please have a look at two ways in which JSON data may be passed to Flexmonster component for your case:

  1. Write some server-side script which generates JSON data and define filename property the following way: filename: "script_which_returns_json_file". Please keep in mind that if data is generated by the server-side script, dataSourceType should be defined explicitly.
  2. Load JSON file directly from the remote static file. You just need to specify the URL to the file with filename property.

As to your question about memory usage, Remote CSV means that the file is loaded from some remote resource. However, the data is still being stored in browser memory. Please contact me with any additional questions.
Regards,
Tanya

Public
kumar August 11, 2017

Thanks Tanya for clarification! In both the cases, The data will be stored in the browser memory(Inline Json or From File) as per your explanation above.
What is the difference? How the reading will take place from the file?
 
Thanks & Regards,
Sunilkumar.V

Public
Dmytro Zvazhii Dmytro Zvazhii Flexmonster August 14, 2017

Hello Sunilkumar.V,
Thank you for writing. To make sure that we are talking about the exact same things, please note that the Inline JSON is the JSON object which placed in HTML file between <script></script> tags. Placing a large amount of the JSON data into the HTML file increases the size of the file which is returned to the end user. As the result, it requires from browser more time to load this file and also may lead to browser's hanging. The component is optimized to load large amounts of data without hanging the browser. So when you load the data from the static file or the remote resource, the component will load the data partitioning it. Such approach allows preventing the browser from hanging.
Please let us know if it works for you.
Best regards,
Dmytro.

Public
kumar August 15, 2017

Hi Dmytro,
Thanks for the clarification. I will start implement your suggestions and get back to you if any questions.
 
Thanks & Regards,
Sunilkumar.V

Public
kumar August 17, 2017

Hello,
After some investigation, The problem that I see not with the browser memory. 
when I render the flexmonster control on the page and ran it multiple times 20-30 times, every-time, the browser memory is increasing 50 MB. I still tried using clear() before load the data(set report) and destroy() when closing. still, memory is leaking continuously.
we are using 2.3 version of flexmonster. Is it something multiple instances are running on background? or Any issue with Memory leaks with 2.3 component.
Please try reproduce it from your end and let me know if you need any more details from my side.
 
Thanks & Regards,
Sunilkumar.V

Public
Tanya Gryshko Tanya Gryshko Flexmonster August 18, 2017

Hello Sunilkumar.V,
Thank you for sharing your investigation results. We are familiar with memory leaks issue in version 2.3. This issue was fixed with our new major version 2.4. Please consider migration to this new version. Here is the migration guide with all the details. Let us know if this works for you.
Regards,
Tanya

Public
Sohan September 25, 2017

I am afraid to say this but this is still not resolved. Can you please look into it ?

Public
Tanya Gryshko Tanya Gryshko Flexmonster September 28, 2017

Hi!
We will keep answering in this thread http://www.flexmonster.com/question/memory-leak/

Please login or Register to Submit Answer