Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

681
Vistas
¿Cómo paginar mi consulta mysql usando AWS rds-data usando boto3 y AWS-aurora?

Estoy consultando AWS Aurora (MySQL) sin servidor desde AWS Lambda usando Boto3. Quiero consultar una tabla que tiene más de 10k registros. Mi consulta puede obtener registros de más de 7k. Ahora, ¿cómo puedo paginar estos datos, a nivel de base de datos o de Lambda, para poder obtener menos datos por página y enviar ese pequeño conjunto de datos a la interfaz de usuario para que se muestre? No puedo enviar el conjunto de datos completo de 7k registros.

Aquí está mi código Python

 rdsDataClient.execute_statement(resourceArn=cluster_arn, secretArn=secret_arn, database='myTestDB', sql=sqlQuery, parameters = paramSet )

Conozco el LÍMITE de consulta SQL y el DESPLAZAMIENTO, pero quiero saber si hay alguna otra forma mejor de hacerlo. Por favor ayuda.

Gracias.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Sí, utilicé el enfoque de pasar el límite y el desplazamiento a sqlQuery. Aquí esta lo que hice

 def lambda_handler(event, context): queryParameters = event["queryStringParameters"] search = getQueryStringElement("search", queryParameters, '') pageSize = int(getQueryStringElement("pageSize", queryParameters, 5)) page = int(getQueryStringElement("page", queryParameters, 1)) limit = pageSize offset = (pageSize * page) - pageSize sqlQuery = sqlQuery + ' LIMIT {} OFFSET {} ;'.format(limit, offset) rdsDataClient.execute_statement(resourceArn=cluster_arn, secretArn=secret_arn, database='myTestDB', sql=sqlQuery, parameters = paramSet )

Esta solución funcionó perfectamente para mi caso de uso en el que solía mostrar la lista paginada de registros en la interfaz de usuario

Gracias

over 4 years ago · Santiago Trujillo Denunciar

0

Creo que la mejor manera es dejar que la base de datos maneje la paginación por varias razones:

  • La consulta es bastante simple de escribir, solo agregue un LÍMITE y una COMPENSACIÓN como sugirió.

  • Los datos transferidos entre la base de datos y el servicio/lambda serán mucho menores si están paginados, lo que ahorra tiempo y dinero.

  • La memoria necesaria para almacenar los datos en el servicio será menor, por lo que no necesitará una lambda más robusta para realizar el cálculo.

  • La capacidad de respuesta del servicio/lambda será mejor como resultado de lo anterior.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda