Если размер изображения превышает 100 КБ, вы должны сохранить их в виде файла и сохранить путь к файлу в базе данных. Если они составляют около 100 КБ или менее, вы можете сохранить их в виде байтового массива в базе данных.
SQLite сам выполняет свое собственное кэширование, граница около 100 Кбайт основана на результатах согласно 35% быстрее, чем файловая система (т. Е. SQLite может быть более эффективным для хранения данных в виде байтовых массивов (BLOBS)) и также тот факт, что существует ограничение на окно курсора 2M для Android, поэтому если при извлечении данных из базы данных, если строка превышает это значение, произойдет сбой.
Разница между кэшированием и SQlite заключается в том, что SQLite сохраняется, то есть данные сохраняются на диск. Кэширование - это хранение данных в памяти, что не является постоянным. Однако SQLite сам использует кеширование. взгляните на PRAGMA schema.cache_size; .