Релиз БД SQLite 3.7.0 с поддержкой журнала транзакций
22 июля 2010 года
После двух лет разработки представлен релиз новой ветки SQLite 3.7.0, легковесной базы данных, оформленной в виде подключаемой библиотеки. Код SQLite переведен в разряд общественного достояния (public domain), т.е. может использоваться без ограничений и безвозмездно в любых целях. Финансовую поддержку разработчиков SQLite осуществляет специально созданный консорциум, в который входят такие компании, как Adobe, Oracle, Mozilla, Symbian и Bloomberg.
Наиболее значительным улучшением в новой ветке является реализация WAL-журнала транзакций (Write-Ahead Log) в котором отражаются все происходящие с базой данных события, связанные с изменением данных и схемы их хранения. Ведение WAL-лога существенно повышает надежность хранения данных, гарантирует атомарность выполнения транзакций, дает возможность организовать откат изменений на определенное состояние в прошлом.
WAL-лог по сравнению с rollback-журналом повышает скорость выполнения операций, обеспечивает более оптимальный метод обработки конкурирующих запросов (запросы на чтение не блокируют запросы на запись и наоборот, т.е. операции чтения и записи могут выполняться параллельно), снижает число непоследовательных обращений к диску. Тем не менее с целью сохранения полной совместимости с прошлыми версиями по умолчанию в SQLite 3.7.0 по прежнему остается активным rollback-журнал, т.е. допустимо выполнение обновления версии SQLite без изменения формата БД.
Из других улучшений в SQLite 3.7.0 можно отметить:
- Улучшение работы планировщика запросов.
- Добавлена поддержка автоматического создания временных переходных индексов, что позволяет сократить время выполнения запросов.
- Отключение обработки "ORDER BY", когда в запросе уже используется выражение "GROUP BY", что позволяет добиться правильного порядка вывода.
- Добавлена поддержка параметра SQLITE_DBSTATUS_CACHE_USED для функции sqlite3_db_status(), для получения в реальном режиме времени информации о состоянии распределения памяти для всех областей, ассоциированных с заданным соединением к БД.
- Логический размер базы данных теперь сохраняется в заголовке, что позволяет добавлять новые данные в конец файла с БД без его повреждения, даже в системах не имеющих поддержки ftruncate().
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.