Информация об изменениях

Сообщение Чтение небольших блобов из SQLite на 35% быстрее, чем из фай от 14.06.2017 7:15

Изменено 14.06.2017 7:17 wildwind

Чтение небольших блобов из SQLite на 35% быстрее, чем из фай
Возвращаясь к вечному вопросу "Хранить ли картинки в базе или в файловой системе?".

Команда SQLite провела небольшое исследование, сравнив производительность работы с небольшими (8-12 Кб) блобами, размещенными в базе SQLite и в файловой системе. Результаты, конечно, варьируются в зависимости от ОС, железа и настроек SQLite, но выигрыш SQLite достигал 35%. Основная причина, по мнению авторов — накладные расходы на открытие/закрытие файлов. В случае файловой системы они имеют место при каждой операции.

Пара графиков:


Chart 1: SQLite read latency relative to direct filesystem reads.
100K blobs, avg 10KB each, random order using SQL




Chart 4: SQLite write latency relative to direct filesystem writes.
10K blobs, avg size 10KB, random order,
WAL mode with synchronous NORMAL,
exclusive of checkpoint time
Чтение небольших блобов из SQLite на 35% быстрее, чем из фай
Возвращаясь к вечному вопросу "Хранить ли картинки в базе или в файловой системе?".

Команда SQLite провела небольшое исследование, сравнив производительность работы с небольшими (8-12 Кб) блобами, размещенными в базе SQLite и в файловой системе. Результаты, конечно, варьируются в зависимости от ОС, железа и настроек SQLite, но выигрыш SQLite достигал 35%. Основная причина, по мнению авторов — накладные расходы на открытие/закрытие файлов. В случае файловой системы они имеют место при каждой операции.

Пара графиков:


Chart 1: SQLite read latency relative to direct filesystem reads.
100K blobs, avg 10KB each, random order using SQL




Chart 4: SQLite write latency relative to direct filesystem writes.
10K blobs, avg size 10KB, random order,
WAL mode with synchronous NORMAL,
exclusive of checkpoint time