“Server-side processing” stands for the type of tables when all the data interaction operations (searching, filtering, switching pages, sorting) aren’t done by your site visitor’s browser (with JS), but by MySQL server on your site instead.
One of the main benefits of MySQL DB engine is fast data processing, which means that when you need to sort whole table by one of the columns, or filter by some value, it will be done fast even when it contains several hundreds, or thousands or even millions of records. What is the key difference between “usual” wpDataTables and wpDataTables with server-side processing turned on? When should the first and the second option be used?
- wpDataTables with server-side processing enabled fetch only the amount of rows needed on the page at this exact moment. By default it equals to the number of rows that administrator defines for the table in the “Display length” setting, then the front-user can change it. E.g. if the table is configured to show 10 rows by default, only 10 rows would be queried from MySQL; and when the user switches to the next page, sorts the table by some column, filters by some column, an AJAX-request is sent to the server, query is processed by MySQL, and 10 rows are returned again. This may slow down smaller tables, but for larger tables this may be the only option.
There’s no “official” rule for the size of the tables from different input sources, since it very much depends on the hosting, bandwidth, and the device of the front-end user, but I’d say, in general, file-based (Excel, CSV, XML, JSON) tables could be freely used for tables that don’t have more then 2000-3000 cells (columns * rows), MySQL table type can be used for any limits; but server-side processing feature is mandatory for data sets larger then 3000-4000 rows.