Método para paginación - Cual es más optimo

Se trata sobre paginación en web.
Quiero saber que método resulta más óptimo en cuanto a tiempo de carga, cual es recomendable.
Si tengo n registros en una BD (por ejemplo trabajadores), llamar al total de estos registros al cargar la página y mostrarlos en un grid (usando javascript) según el tamaño de página que quiero usar, por ejemplo 10 registros en la primera página y al clickear en la 2da página mostrar los siguientes 10 y ocultar los 10 primeros y el resto, y así por el resto de páginas.
En este primer caso la llamada a la BD es una sola vez, la primera vez que carga la página y para mostrar los datos los oculto o los hago visibles, usando javascript, según crea necesario.
La segunda opción sería la siguiente: la primera vez que carga la página cargo en un grid el número de registros que indica mi tamaño de página, por ejemplo 20, es decir hago la consulta a la BD por los primeros 20 registros, y si clickean en la página 2 hago nuevamente la consulta a la BD por los siguientes 20 registros y así con el resto de páginas.
En este segundo caso se estaría accediendo a la base de datos por cada consulta a cada página, pero la cantidad de información que cargaría sería menor.
¿Cuál resulta más óptimo?.
También deseo saber cómo realiza la paginación el GridView del ASP, y el RADGridView del Telerik, ya que estos son objeto del servidor, si por cada vez que se hace click en un nro de página van al servidor, o es que hacen inicialmente la carga total de los datos y usan javascript para mostrar y ocultar datos.

1 respuesta

Respuesta
1
La mejor opción es la primera, en la cual vas una sola vez a la base de datos y luego en el cliente haces la paginación, aunque realmente esto no es que sea tan liviano pues en memoria tienes una colección con todos los datos y vas mostrando de acuerdo a la página que quieras.
Si la página va a tener un trafico alto creo que la mejor opción es la segunda, y si es posible que coloques unos criterios de filtrado para llenar la grilla y no llenarla con todos los registros de la tabla, los criterios más utilizados son las fechas, pero depende de la característica de tu data.
En ASP puedes utilizar Ajax o JQuery para que solo se recargue la parte necesaria de la página o se alo datos que cambian de una página a otra de la grilla, por ejemplo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas