JMeter вставляет все записи из CSV в базу данных sql - PullRequest
0 голосов
/ 18 января 2020

У меня есть большой объем данных из главной БД, которые я читаю и записываю в CSV, применяя некоторые логики c для очистки данных. Это большой набор данных более 100К. Я использую бобовую оболочку для записи в CSV, что очень быстро.

Теперь конечная цель - записать эти данные в следующую mySQL БД.

В идеале я бы не хотел, чтобы CSV включался и напрямую пишите в mySQL DB, но это может иметь проблему, заключающуюся в том, что тогда мне нужно будет добавить шаг JDB C, чтобы вызвать его для записей 100k.

Так что я думаю, что все еще пишу в CSV и оттуда я хотел бы разделить записи на 1000 или 2000, чтобы уменьшить нагрузку на SQL запрос.

Примечание: я не могу удалить часть бобовой оболочки, потому что я анализирую JSON ответ, а затем запись в CSV, чтобы с ним что-то было решено.

Любые решения по предложению будут высоко оценены.

1 Ответ

0 голосов
/ 20 января 2020

Если вам нужно вставить весь CSV в базу данных MySQL, самый быстрый и простой способ - использовать оператор LOAD DATA , например:

LOAD DATA INFILE '/path/to/your/file.csv' INTO TABLE YOUR_TABLE_NAME_HERE FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\\r\\n'

Я также рекомендовал бы пересмотреть ваш подход "beanshell", начиная с JMeter 3.1, рекомендуется использовать тестовые элементы JSR223 и Groovy язык для сценариев, Groovy работает намного лучше и имеет встроенная JSON поддержка (а также SQL поддержка ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...