KendoUi Grid page size performance issue - kendo-ui

I am using kendoUi Grid with 20k records, When i am changing page size 20 to 200 grid taking 40 to 50 sec to work. some times it taking min. paging is client side only.

For large datasets, it's better to use server paging, mainly because:
Faster loads
Avoid wasting memory
Avoid unnecessary database and network loads, database just gives you the number of records of the current page
You should consider enabling server paging at datasource level, and then read pagination values on backend side before performing the query to the database.
http://docs.telerik.com/kendo-ui/api/javascript/data/datasource#configuration-serverPaging

good question, i am also faced this type of issue.
Please use MVVM logic instance of MVC for bind the grid,
for more please find this below link.
http://demos.telerik.com/kendo-ui/grid/mvvm

Related

How Pagination works internally in JQ grid?

Is JQgrid create all records in DOM or store locally in JavaScript object show records on pagination event?
Thanks
We tried JQ grid in our project experience slowness rendering table for large number of records (10,000) with page size of 50.
jqGrid stores the local data in array and display in DOM only the portion set in rowNum parameter.
Personally I think that loading 10k records locally is to big for any grid component. This will consume a lot of memory and will slow dawn any operation in the application.
The best is to store the data on server and request only the portion you want. Look here how we deal with 1 million records

Browser crashes while binding 25k-100k records

In one of the application, I need a grid to load 100k records without pagination by using Kendo Grid virtualization.
Technologies used: SQL server 2012, asp.net web app, angular.
I have 15 columns in the grid, up to 10K records, browser is loading between 20,000-100,000 records and the browser crashes.
Can I bind 100k records in a Kendo Grid without pagination?
Is there any other way to load the 100k records without pagination?
What is the maximum data size browsers (Chrome, Firefox) support?
According to: http://demos.telerik.com/kendo-ui/grid/virtualization-local-data
They loaded 500K with 5 columns. If you notice in the code they do limit to smaller data on certain browsers. It likely comes down to JavaScript memory and how fast JS can process the volume.
My recommendation:
Use the Grid with server pagination, but also allow server sorting and filtering. I used OData for this at 100 rows at a time, makes the server part easy.
Offer the option to export the data to CSV or Excel.

Binding MVC grid to stored procedure with large amount of data

Binding MVC grid to stored procedure with large amount of data:
I want to bind MVC grid to an object result that returned from SP
Normally the grid request only data needed to be shown to the user and that will be very good when binding to a table with large amount of data that lets the grid fast and its performance would be good.
i have 2 ways to bind MVC grid with SP:
Bind to SP without using .ToList() it gives me an error "The result of a query can not be enumerated more than once."
Bind to sp using .ToList() will resolve that error but it will loads all records from database first and the performance will be bad and the grid loading, paging, sorting and filtering would be very slow.
Please tell me a solution to bind MVC grid with SP that returns large amount of data with good performance.
Thank you
I have used jqgrid in the past, jqgrid implements paging so not all the content of the grid is actually displayed at once, you pick the number of rows per page and jqgrid automatically will hook the navigation to your controller. There are a lot of examples of this on the web. If you click the next page it will retrieve the appropriate data for that page and so forth.
The jqgrid page has a lot of examples in loading data that ilustrate this: http://www.trirand.com/blog/jqgrid/jqgrid.html, here is another page that talks how that is implemented at the server side using mvc http://www.codersource.net/AspNet/ASPNetAdvanced/jqGridPaginginaspnetmvc.aspx, I'm sure if you look around you'll find a lot of information on how to go about this approach.
Finally I usually avoid showing the user a lot of data anyways, mainly because it is hard for a human been to make any sense of more than 100 rows of data having a way to search further in it. So I rather try and attempt to shrink the data size giving them a way to filter it down further, but this is not always possible.
Hope this helps.

capabilities jqGrid - Max no of rows it can render (paging off and virtual scrolling off)

I have a question regarding capabilities jqGrid. We want to turn paging off and load all the data on the client side without implementing virtual scrolling (paging turned off as well). How many records can the jqGrid handle realistically as we have been trying to load 50,000 records * 20 columns and it seems to blow up (Note: Virtual Scrolling turned off and Paging turned off)
I don't think that it's good idea. No user are able to look through 1 million cells. So you want to send 99,9% (or more) unneeded data to the client. What you really need is implementation of the subject oriented filtering of the data.
The performance of the grid will be mostly depend from the JavaScript engine of the web browser which you use. Nobody can get you common recommendation for IE6 and Chrome 19 because of very different JavaScript performance.
In any way I am sure that you have to implement paging, sorting and filtering on the server side. I think it's really required in case of 1 million cells of data.

Telerik MVC grid paging bringing back a certain number of records at a time

I am using the latest version of Telerik MVC extensions, ASP.NET MVC 3 with the Razor view engine. I am using entiry framework 4.1 code first with no stored procedures.
I worked through the example at http://demos.telerik.com/aspnet-mvc/grid/paging and I'm not sure if this is what I am looking for.
I am trying to implement paging. The amount of rows on my grid is 50. When the grid loads for the first time it must do a database table call and fetch the first 50 records. When you go to the next 50 rows, then it must return the next set of 50 records.
The sample ueses view data, I'm not comfortable using view data. It's not safe? Isn't there a decent example to be used on the net?
Also, if I have loaded the first 50 records, and I go to the next page, is there a way of caching the previous records so that it is there?
Implementing a caching solution for Entity framework is completely your own choice, it is definitely possible although I'm becoming less convinced of the value in doing this.
You don't need to use ViewData to provide data to the Telerik grid and one of the huge bonuses of using their grid is that if you have an IQueryable<T> data source it will automagically provide paging, sorting, filtering functionality straight out of the box.
You didn't state if you are using server or client binding, so i haven't attempted to write any code.
Sounds like you might be using server-side binding though.

Resources