Вход
Регистрация

Войти c помощью аккаунта

Быстродействие Deductor: файлы данных (до 1 млн. строк)

На данном этапе тестирования анализировалась скорость импорта/экспорта уже не всех файловых источников данных, доступных в Deductor 5.3 : xlsx, dbf, txt, csv, ddf.

Тестирование проводилось для файлов с наборами данных от 200 тыс. до 1 млн. записей шагом 200 тыс.

В ходе тестирования было осуществлено около 1 тысячи прогонов, из них менее 50 прогонов оказались неудачными, и были исключены из анализа результатов.

Общее время выполнения процесса тестирования на этом этапе составило чуть меньше 7 часов непрерывной работы программы.

Время импорта/экспорта

В качестве примера производительности приведем средние показатели зависимости времени импорта/экспорта от количества записей в файле. Количество полей = 8 .

Рисунок 1. Время импорта из файловых источников (до 1 млн. записей). Рисунок 2. Время экспорта в файловые источники (до 1 млн. записей).

Графики получены путем агрегации полученных показателей для различных типов данных и отражают лишь общую (и весьма условную) зависимость времени импорта/экспорта от количества записей в файле. Для получения более детальной информации по производительности файловых источников на различных типах данных от анализа времени перейдём к анализу скорости, что позволит представить результаты всех измерений в наиболее компактном виде.

Скорость импорта/экспорта

Начальный анализ результатов тестов показывает, что наибольшим быстродействием, как и прежде, обладает вариант использования ddf-файлов. По скорости импорта/экспорта данных этот тип файлов превосходит «конкурентов» на порядок, в десятки раз (рисунки 3 и 4).

Рисунок 3. Скорость импорта – файлы данных (до 1 млн. записей). Рисунок 4. Скорость экспорта – файлы данных(до 1 млн. записей).

График скоростей импорта/экспорта ddf-файлов (Рисунок 5) показывает, что импорт осуществляется приблизительно в 2-3 раза быстрее экспорта.

При этом стоит обратить внимание на то, что скорости импорта/экспорта числовых типов данных и типа данных «дата» практически не отличаются, в то время как импорт строковых типов данных осуществляется заметно медленнее, приблизительно в 2-4 раза.

В силу того, что ddf-файлы не могут рассматриваться в качестве первичных источников информации, отдельный интерес представляют результаты оставшихся типов файлов.

Рисунок 6. Скорость импорта – стандартные файлы данных (до 1 млн. записей). Рисунок 7. Скорость экспорта – стандартные файлы данных ( до 1 млн. записей).

Наибольшей скоростью импорта обладают источники txt, csv и dbf.

Наибольшую скорость экспорта демонстрируют csv и txt-файлы. Наименьшую скорость импорта/экспорта показывают xlsx-файлы.

Из рисунка 8 видно, что у всех источников данных (кроме xlsx-файлов) скорость импорта превышает скорость экспорта.

Размеры файлов

Результаты анализа показывают, что наиболее компактный формат хранения – это, как и прежде, xlsx-файлы, в то время как файлы форматов dbf и txt в данном случае наоборот имеют наибольший размер (как и dbf-файлы в случае хранения строковых данных).

В качестве примера в таблице (Таблица 1) представлены данные о размерах (в Мб) файлов-источников в зависимости от формата данных. Данные представлены для файлов, содержащих 8 столбцов и 400 тысяч строк.

Формат данных Формат файлов
1.xlsx 3.dbf 4.txt 5.csv 6.ddf
1.Целые числа 28,21 46,16 49,59 30,56 27,47
2.Дробные числа 28,23 46,16 49,59 36,66 27,47
3.Даты 18,64 24,80 49,59 33,95 27,47
4.Строки: с повторениями 8,79 73,62 77,06 26,35 63,22
5.Строки: 50 случайных букв 56,32 152,97 156,40 156,02 175,48
Таблица 1. Размеры файлов в Мб (400 тысяч записей, 8 столбцов).

На рисунке 10 представлена зависимость размера файлов от количества записей при фиксированном количестве полей (8 полей). Графики получены агрегированием показателей для всех представленных типов данных.

Как видно из графиков, размер файлов линейно зависит от количества записей в файле. Наибольшую скорость роста размера файла демонстрируют txt-файлы, а наименьшую – xlsx-файлы.

Подписка на материалы сайта