Good day to all!

The data is output in the form of a table and it is necessary to implement a filter by fields (select or input). Previously, DataTables coped with the tasks set with a bang, but now there is a lot of data (about 20 000-30 000 lines), the page tries to display and hangs.

Are there more "lightweight" analogs of DataTables? In general, the functional needs paginator and search .

  • pliz and explain why do you immediately throw 20,000 lines on the client ?? I just can’t even imagine where nada is, in such a quantity the client will be lost) - Ale_x

2 answers 2

I use jqgrid

  • Yes, I know him. That's just it is not so simple. - Avtostopom_do_Raya
  • And what exactly do you think is difficult there? - Ale_x

I think it is not quite an adequate solution to unload 20k lines and force the frontend to process it all. Just imagine, iterate using JS 20k strings with standard string functions (which, in fact, DataTables does). With such a large amount of data, most of the processing should be done on the north side, transferring everything by ajax.

There is documentation on your own link how it works.

http://www.datatables.net/examples/data_sources/server_side.html

  • As far as I understand, now there is a tendency to reduce the server load and more densely use the power of the client machine. The server is 1, but there are many clients). About the fact that the user immediately throw 20 to the lines - it is generally something unintelligible - he is lost in them. ) Even if necessary, jqgrid can be scrolled to load the data. - Ale_x
  • I understand this, but here, apparently, the vehicle immediately loads 20k when generating the page. And, as I understand it, he is looking for a solution to handle this page in 20k lines. So I say that DataTables can load all of this in pieces, and then there is no need to generate a page of 20k lines. You rewrote my thought, but in your own words ... - barseon
  • > As I understand it, now there is a tendency to reduce server load and more densely use the power of the client machine. It is necessary to find a middle ground between using the server and the client. It all depends on the specific task. :) PS The bottleneck is the network. Therefore, you need to try to load it at a minimum, respectively, if a user of 10000 records needs 100, then it is better to send only these 100. Of course, if he doesn’t need another 100 in half a minute. from many factors. - iksuy