У меня проблема с запросом к моей базе данных в Google Cloud SQL (mysql второго поколения): всякий раз, когда я выполняю запрос, его результат получается в относительно большое количество времени, и я заметил, что это проблема выборки. данные, а не выполнение запроса, потому что эта продолжительность меняется каждый раз, когда я повторяю один и тот же запрос на тех же данных подчеркивания.
Мой экземпляр SQL - это db-n1-standard-1, и использование ЦП или ОЗУ не приближается даже к аппаратным ограничениям. Я увеличил дисковое пространство до 50 ГБ (SSD), чтобы увеличить пропускную способность, но ничего не изменилось.
Например, если я запрашиваю 6 МБ данных, я получаю ответ через ~ 600 мс ~ ~ 1 с, когда я ожидаю получить его примерно через 300 мс, учитывая, что самая низкая пропускная способность на SSD составляет 24 МБ / с, а пропускная способность сети составляет не имеет значения при 250 МБ / с. Это происходит как при подключении к экземпляру SQL с моего компьютера, так и из Google App Engine (я изолировал журнал для точного определения только запроса + время передачи данных), БД находится в Бельгии, сервер App Engine находится в Лондоне.
Если я запускаю запрос с активным профилированием mysql, я вижу, что фактический запрос (сумма всех длительностей шагов) занимает около 3 мс, поэтому я предполагаю, что существует проблема с переносом данных. Я использую некоторые преобразования JSON_OBJECT при выборе, но я предполагаю, что это уже должно учитываться на некоторых этапах результата профилирования?
Не могли бы вы помочь мне определить и решить проблему?