Низкая производительность вставки Google Cloud SQL - PullRequest
0 голосов
/ 06 ноября 2019

У меня есть простое преобразование pentaho: один вход из SQL Server и два выхода, один для локального MySQL и другой для облачного Google MySQL. Общее количество строк из ввода составляет 3000 с шестью столбцами

Моя проблема в том, что в облаке Google выход MySQL слишком медленный, производительность составляет 6 минут, чтобы вставить 3000 строк !, однако при локальном выводе MySQL производительность равна 1секунда.

есть ли причина этой проблемы ?, Могу ли я ее исправить?.

Изображение преобразования Pentaho

Спасибо!

1 Ответ

1 голос
/ 11 ноября 2019

Вот несколько вещей, которые нужно проверить с точки зрения производительности Cloud SQL в этом случае:

  1. Включить мониторинг блокировки, который можно использовать для настройки производительности. Вот как
  2. При использовании экземпляра первого поколения использование асинхронного режима может быть намного быстрее. Вот как
  3. Проверьте местоположение автора и базы данных;отправка данных на большие расстояния приводит к задержке.
  4. Кэширование чрезвычайно важно для производительности чтения, которая может зависеть от запроса на вставку. Весь набор данных должен умещаться в 70% оперативной памяти экземпляра.
  5. Если запрос загружает процессор и составляет большую часть рабочей нагрузки, экземпляр может быть ограничен; увеличение уровня .
  6. Поскольку подключение к базе данных, похоже, выполняется из внешнего приложения, здесь, как правильно настроить это . Дополнительная информация о конфигурации соединения и операторе вставки необходима для определения того, действительно ли установлены соединения для каждого запроса, как подозревали другие.
  7. При использовании InnoDB ( обязательно для экземпляров 2-го поколения и рекомендуется для 1-го поколенияиз них ), вот некоторые рекомендации , которым нужно следовать для оптимизации производительности, из официальной документации MySQL.
...