Хранение видео в базе данных SQLite - ужасная идея. Не делай этого.
Не помещайте большие BLOB-объекты в базу данных. Поместите их в файловую систему рядом с файлом базы данных, а затем запишите имена файлов или URL в базу данных. Это будет намного быстрее, будет намного эффективнее использовать базу данных, минимизирует ввод-вывод (в этом случае видео не нужно будет разбивать на схему подкачки базы данных и упростит управление видео ( файловая система delete
файла на тонна быстрее, чем база данных, требующая вырезать кучу страниц, содержащих большой двоичный объект).
Помещение BLOB-объектов в базу данных ужасно неэффективно и, вполне возможно, также приведет к потере памяти вашим приложением (если вы не нашли способ передавать данные из базы данных в видеодекодер).
Это потребует дополнительных операций ввода-вывода, увеличения энергопотребления, а производительность, как правило, пойдет к черту, когда вы будете хранить больше элементов в базе данных. Если вы смешиваете большие двоичные объекты в базе данных, вы можете легко получить патологически фрагментированную базу данных. Авто-пылесос поможет, но это еще больше неэффективно, больше ввода-вывода и больше времени автономной работы.
<Ч />
Да, есть базы данных, которые справляются с BLOB достаточно хорошо. И они совершенно не имеют отношения к этому вопросу, чей единственный тег - «iPhone».
Обратите внимание, что для ответа на вопрос "обрабатывает большие двоичные объекты и потоковую передачу мультимедиа лучше, чем файловую систему", почти всегда требуется, чтобы вы использовали базу данных, которая считывает / записывает на / с необработанного устройства - раздел на жестком диске это не что иное, как содержимое базы данных. Любое другое решение обязательно будет слоем поверх существующей файловой системы, и это будет стоить затрат, даже если поставщик базы данных выполнил всю инженерную работу (и она огромна), чтобы максимально совместить доступ к вводу-выводу базы данных с семантика базовой файловой системы.