Как улучшить время запроса от AWS Aurora (RDS) при использовании Python 3, выполняемого в AWS EC2 Amazon Linux - PullRequest
0 голосов
/ 13 мая 2019

Я использую Python 3 с пакетом pymysql для запроса необработанных данных из AWS Aurora при выполнении из EC2 с Amazon Linux. И я хотел бы значительно улучшить производительность.

Пока мне удалось выполнить задание, но для получения результатов 2,3 миллиона строк мне понадобилось 150 секунд, используя следующий код:

import pandas as pd
import pymysql

conn = pymysql.connect(host, user=user,port=port,
                       passwd=password, db=dbname)

myQuery = '''
    SELECT * FROM fEvents f  
    Left Join fParams fp  
    on f.id = fp.id 
    WHERE f.DateTime BETWEEN '2019-01-24' and '2019-02-28' 
    '''

df = pd.read_sql(myQuery, con=conn) 

Когда мы попытались выполнить тот же запрос из того же EC2, используя node.js, мы получили объект с 2,3 миллионами результатов в течение всего за 20 секунд! Поскольку остальная часть кода написана на Python 3, я изо всех сил пытаюсь улучшить производительность моего Python API.

Буду признателен за любые предложения или объяснения, пожалуйста.

...