Out of Memory exception using pivot grid bound to relational query with only few K records

Hi there,

I am using the updated PivotGrid of Syncfusion suite for the first time. I figure out myself how to bound it to relational data browsing near any sample and post in forum, sdk, and demo also.

Now I have set up a Grid with a bounch of data taken from a static table: that works basically. Before continue to detail, I need to know the component can handle the load which the "old" (other) library did manage: we are speaking of a bounch of milion record with many columns.

So I have upsized a little the "TOP" clause of the select, still limited to a few fields, and received this error:
"ExceptionType":"System.OutOfMemoryException","StackTrace":"   in System.Text.StringBuilder.ToString()\r\n   in System.Web.Script.Serialization.JavaScriptSerializer.Serialize(Object obj, SerializationFormat serializationFormat)\r\n   in System.Web.Script.Serialization.JavaScriptSerializer.Serialize(Object obj)\r\n   in Syncfusion.JavaScript.PivotUtils.GenerateJSONData(PivotReport pivotReport, PivotEngine pivotEngine)\r\n   in Syncfusion.JavaScript.PivotGrid.GenerateJSONData(PivotReport pivotReport, PivotEngine pivotCellInfos)\r\n   in Syncfusion.JavaScript.PivotGrid.GetJsonData(String action, Object dataSource, String gridLayout, String cellPosition, String headerInfo, String sortedHeaders, String filterParams)\r\n   in Syncfusion.JavaScript.PivotGrid.GetJsonData(String action, Object dataSource, String sortedHeaders)\r\n   in MVCSampleBrowser.RelationalGridController.InitializeGrid(Dictionary`2 jsonResult) in 

basically where the pivot engine tries to figure out how the grid may looks like.
This point I reach with 20k record, each of 5 field. In real-world situation I need to scale up to milion of records of any size, sometimes huge itselves.

My point is:
* I don't mean to use OLAP in this POC, I just want to know if there are limits and where they are documented, for I need to provide them to the decision maker;
* I don't mean to make any use of ORM, for this is out-of-scenary case which we simply don't mind to;

With these premise: Is SyncFusion PivotGrid still a suitable component for _my_ scenario? 
If it is, how do I get rid of such problems?

Thanks for help,

Simone

1 Reply

MM Manikandan Murugesan Syncfusion Team February 22, 2018 06:54 PM UTC

Hi Simone, 
 
 
Please find the response below. 
 
S.No 
Query 
Comments 
1. 
I am using the updated PivotGrid of Syncfusion suite for the first time. I figure out myself how to bound it to relational data browsing near any sample and post in forum, sdk, and demo also. 
 
Now I have set up a Grid with a bounch of data taken from a static table: that works basically. Before continue to detail, I need to know the component can handle the load which the "old" (other) library did manage: we are speaking of a bounch of milion record with many columns. 
 
So I have upsized a little the "TOP" clause of the select, still limited to a few fields, and received this error: 
"ExceptionType":"System.OutOfMemoryException","StackTrace":"   in System.Text.StringBuilder.ToString()\r\n   in System.Web.Script.Serialization.JavaScriptSerializer.Serialize(Object obj, SerializationFormat serializationFormat)\r\n   in System.Web.Script.Serialization.JavaScriptSerializer.Serialize(Object obj)\r\n   in Syncfusion.JavaScript.PivotUtils.GenerateJSONData(PivotReport pivotReport, PivotEngine pivotEngine)\r\n   in Syncfusion.JavaScript.PivotGrid.GenerateJSONData(PivotReport pivotReport, PivotEngine pivotCellInfos)\r\n   in Syncfusion.JavaScript.PivotGrid.GetJsonData(String action, Object dataSource, String gridLayout, String cellPosition, String headerInfo, String sortedHeaders, String filterParams)\r\n   in Syncfusion.JavaScript.PivotGrid.GetJsonData(String action, Object dataSource, String sortedHeaders)\r\n   in MVCSampleBrowser.RelationalGridController.InitializeGrid(Dictionary`2 jsonResult) in  
We have analysed your scenario and suspect that this problem may occurred due to lack of RAM in machine. So, we kindly request you to increase the RAM (or) check this same scenario after clearing RAM in your machine. 
 
Meanwhile, we suggest you to use paging option to handle large records. And, please find the below links for UG documentation and online demo for paging feature. 
 
 
2. 
basically where the pivot engine tries to figure out how the grid may looks like. 
This point I reach with 20k record, each of 5 field. In real-world situation I need to scale up to milion of records of any size, sometimes huge itselves. 
 
My point is: 
* I don't mean to use OLAP in this POC, I just want to know if there are limits and where they are documented, for I need to provide them to the decision maker; 
* I don't mean to make any use of ORM, for this is out-of-scenary case which we simply don't mind to; 
 
With these premise: Is SyncFusion PivotGrid still a suitable component for _my_ scenario?  
If it is, how do I get rid of such problems? 
Currently, we don’t have documentation for these performance metrics. We will consider this in future release. 
 
 
 
 
Thanks, 
Manikandan. 


Loader.
Up arrow icon