Я строю запрос MySql, который пакет вставляет 4096 записей одновременно. Фактическая вставка довольно быстрая, но узкое место генерирует запрос. Любые подсказки по оптимизации этого? Генерация строк в настоящее время занимает примерно 18 раз дольше, чем запрос.Оптимизация конкатенации строк F #
let builder = StringBuilder(524288)
Printf.bprintf builder
"
INSERT INTO %s
(`ID`,
`Tag`,
`Port`,
`Excess`,
`Return`,
`StartDate`,
`EndDate`
)
values "
x.evaluationstable
evaluations
|> Seq.iter(fun (e) ->
Printf.bprintf builder
" (%d, '%s', '%s', %A, %A, %A, %A), "
e.ID
e.Tag
e.Port
e.Excess
e.Return
(e.StartDate.ToString(x.datetimeformat))
(e.EndDate.ToString(x.datetimeformat))
)
Ницца. Это работало очень хорошо, я вижу около 10-кратного увеличения скорости, но это включает открытие соединения и выполнение запроса. Благодаря! – MikeW