Я работаю с некоторыми многогигабайтными текстовыми файлами и хочу провести с ними потоковую обработку с помощью PowerShell. Это просто: анализировать каждую строку и извлекать некоторые данные, а затем сохранять их в базе данных.
К сожалению, get-content | % {something ($ _)}
, похоже, сохраняет в памяти весь набор строк на этом этапе конвейера. К тому же это на удивление медленно, ведь на то, чтобы все это прочитать, уходит очень много времени.
Итак, мой вопрос состоит из двух частей:
get-content
, кажется, в 100 раз медленнее, чем сценарий C #. Я надеюсь, что я здесь что-то тупо делаю, например, пропустил -LineBufferSize
параметр или что-то в этом роде ...