HTML表格中有多少行数据被认为是“太多”?

4
好的,我之前问过这个问题,被投票否决了,每个人都告诉我需要分页。但现在,我知道了问题所在。
我有一个包含大约500行数据并使用 DataTables 的项目。它在开始时会有一些滞后,但搜索非常快。甚至比服务器端处理还要快。
另一个项目有20,000行数据,每次渲染时都会使客户机卡顿。
为什么不在服务器上进行分页呢?因为这很困难。发送到客户端的数据已经被过滤。使用复杂的逻辑,例如:
where columnA = 1 and columnB = 2 or ColumnC = 3. 

我们正在使用ORM。所以在试图将“where”与“and”和“or”分组时会遇到一些障碍。如果我们发送搜索查询,我们将添加更复杂的内容。

columnD like "%asd%" or columnE like "%asd%" and columnF like "%asd"

对于查询来说,如果服务器的逻辑条件过多,很难做到正确。因此,我认为在开发时应该将责任分离到服务器和客户端之间。就像服务器对客户端说:

好的,我已经过滤了“列A”、“列B”和“列C”。如果你想在“列D”、“列E”和“列F”中进行搜索,请自行处理。

所以请原谅我如果我太蠢,问你有关html表格中多少行才算太多(无论是使用插件还是不使用插件)的经验。


你的问题的意义何在?你想知道那个限制有什么作用?假如每个人都告诉你最大可容纳的行数为1000,你会怎么处理这个数字? - Little Santi
我之所以问这个问题,是因为我担心我现在开发的Web应用程序的性能。如果他们说1000是可以容忍的数字,我会说,当它达到大约800行数据时,我们将再次讨论它。 - egon12
1个回答

3

经过在互联网上的调查,我得到了一些插件提供的数字。

Angular UI Grid声称可以处理大型数据集,例如10,000+行。

http://ui-grid.info/

DataTables声称可以处理5,000行的表格形式数据,只有在我们想要处理超过一百万行时,才需要从ajax源服务器获取50,000条数据。

http://datatables.net/faqs/#General-initialisation

我进行了使用d3 js的实验,使用2.4MB的json数据,其中包含20,000多个非结构化数据。因此,在性能方面可能有一些结论。

我认为在html表格中使用1,000行表格并不算太多。虽然在开始时浏览器渲染速度慢了一些,但是我们应该明智地进行一些客户端分页处理。因为即使浏览器可以渲染出来,人类也无法真正有效地消费它。

最好将数据和演示内容分开。您不必进行服务器处理。当数据量很小时,这样做会增加更多的请求。而且更多的请求会导致浏览器延迟更高。通过保留源数据并将其保存在内存中,您的浏览器不必快速渲染它,但是可以在内存中快速搜索。


1
是的,我曾经开发过1000行和25列以上的JSP网页(大约10年前),并且它呈现得相当好(纯HTML呈现,没有JavaScript)。而且最重要的是你自己说过:对于人类来说,大量的行数是无法阅读的。但最终,最好通过容量测试自己测试页面的性能。 - Little Santi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接