aKry (akry) wrote,
aKry
akry

Оптимизация баз Lightroom и Firefox

Спасибо ilya_ya за помощь.

Итак, идея в том, что Lightroom хранит свои базы в SQLite. А их можно оптимизировать минимум двумя способами: командой «VACUUM» и дефрагментацией.

Для первого способа нужно скачать SQLite (всего то около 300 килобайт) и поместить экзешник куда-нибудь, где он будет доступен. Например в директорию Windows.

Для второго нужна махонькая тулза по имени contig (качается отсюда). Она очень быстро дефрагментирует — но не весь диск, а только тот файл, который вы указали. Распаковываем, помещаем в системную папку, чтобы был в доступе из командной строки.

Делаем файл «optimize_lightroom.cmd» с таким содержимым:

@ECHO OFF & CLS

for /f "tokens=*" %%X IN ('dir /b *.lrcat') do (
    rename "%%X" "1.lrcat"

    echo "Optimizing DB '%%X'..."
    sqlite3 1.lrcat "VACUUM;"

    echo "Defragmenting '%%X'..."
    contig -v "1.lrcat"   

    rename "1.lrcat" "%%X"
)

echo "Done."

Сохраняем его в папку, где лежит нужный нам каталог лайтрума. Или опять же в системную папку.

Мне таки не удалось заставить sqlite понимать русские имена, зато workaround с переименованием работает отлично. Если кто разберётся, как без этого обойтись, пишите.

Запускаем файл (при выключенном Лайтруме). Проверяем — не тот ли это эффект, что достигается с помощью команды «Relaunch&Optimize» внутри Лайтрума? У меня размер файла получился меньше.  Кроме того Лайтрум наверняка ничего не дефрагментирует.

Теперь от Firefox.

Код почти такой же:

@ECHO OFF & CLS

for /f "tokens=*" %%X IN ('dir /b *.sqlite') do (
   
echo "Optimizing DB '%%X'..."
    sqlite3
"%%X" "VACUUM;"
   
    echo "Defragmenting '%%X'..."
    contig -v
"%%X"
)

echo "Done."

С тем отличием, что Firefox не использует русских имён и переименовывать ничего не надо.

Скрипт запускаем в папке профиля текущего пользователя. Что-то вроде «c:\Documents and Settings\ItsMe\Application Data\Mozilla\Firefox\Profiles\jkbhtp65.default». Там должно быть штук восемь файлов с расширением «sqlite» — это верный признак. Разумеется перед запуском выключите Firefox.

И создайте backup — хотя бы в первый раз, пока не убедитесь, что всё работает.

Ну как, стало быстрее?

 

p.s. Как бы написать программу, генерирующую превью без участия Lightroom… Сколько бы времени сэкономило бы!

Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 14 comments