Время выполнения jdbcloader влияет на скорость запроса - PullRequest
0 голосов
/ 01 ноября 2018

Я не использую jdbcloader, что время запроса составляет 140 мс, это очень быстро. Но запустите jdbcloader, время запроса 480 мс, пожалуйста, дайте мне решение.

Кстати: эта скорость jdbcloader составляет 47000 строк / с Tks

1 Ответ

0 голосов
/ 01 ноября 2018

К сожалению, это похоже на ожидаемое поведение. Jdbcloader вставляет десятки тысяч записей в секунду, поэтому время вашего запроса будет снижено. Это очень похоже на разницу между ездой по пустой дороге и в пробке в час пик.

Лучшее решение этой проблемы - не запускать Jdbcloader одновременно с другими вашими запросами. Но если вы должны сделать это, вы можете попробовать использовать аргумент --batch Jdbcloader. По умолчанию 200; Вы можете попробовать использовать число, намного меньшее этого, чтобы увидеть, поможет ли это.

В качестве альтернативы, вы можете использовать аргумент --procedure = TABLE.insert (где TABLE - имя вашей таблицы). Это заставляет Jdbcloader использовать вставки из одной строки вместо целых пакетов, что может позволить вашим другим вставкам работать лучше.

Обратите внимание, что --batch и --procedure являются взаимоисключающими аргументами. См. Этот раздел документации для получения дополнительной информации:

https://docs.voltdb.com/UsingVoltDB/clijdbcloader.php

Возможно, что другие перечисленные здесь аргументы Jdbcloader также могут быть полезны.

Полное раскрытие: я работаю в VoltDB.

...