我正在考虑为域名模型实现分页策略,该域名模型的数量已达数十万。我最感兴趣的是性能良好的网站是如何实现这一目标的。
答案 0 :(得分:1)
答案 1 :(得分:1)
以下是我在SQL Server 2008表中使用的具有20亿行数据的内容(我更改了表名和列名)
执行50行的页面需要6到10毫秒,每页5000行需要大约60毫秒
; with cte as(select ROW_NUMBER()over(order by Column1,Column2) as RowNumber,
<<Other columns here>>
from Table1 p
join Table2 i on i.ID = p.ID
and i.ID2 = p.ID2
join dbo.Table3 c on i.ID2 = p.ID2
where Column2 between @StartDate and @EndDate
and p.ID = @ID
)
select *,(select MAX(RowNumber) from cte) as MaxRow
from cte
where RowNumber between @StartRow and (@StartRow + @RowsPerPage) -1
order by Col3
我在数据库,窄表和索引上使用页面级压缩
那是在数据库上,在我们使用ExtJS网格的网站上,它只是对调用数据库的服务的Ajax调用