Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

679
Views
¿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 answers
Answer question

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 Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!