SASGIS

Веб-картография и навигация

SAS.Wiki

Веб-картография и навигация

Инструменты пользователя

Инструменты сайта


версионный_кэш

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
версионный_кэш [26/06/2013 21:34] 91.203.67.165версионный_кэш [04/03/2014 05:15] (текущий) – внешнее изменение 127.0.0.1
Строка 2: Строка 2:
  
 ====== Тайловый версионный кэш ====== ====== Тайловый версионный кэш ======
 +Здесь пока ничего не написано...
  
 ====== Версионный кэш Беркли ====== ====== Версионный кэш Беркли ======
-Сочетает в себе преимущества хранения относительно небольшого количества файлов и возможности работы с версиями снимков. Для создания версионного кэша Беркли необходимо воспользоваться функцией **Управления кэшем**. Возможны следующие варианты:+Сочетает в себе преимущества хранения относительно небольшого количества файлов и возможности работы с версиями снимков. 
 +====Создание версионного кэша "с нуля"==== 
 +Если мы хотим создать новый версионный кэш, который будем наполнять путём скачивания, нужно всего лишь указать в zmp параметры **CacheType=61** и **Version=//Название версии по умолчанию//**. Для хранения версионного кэша Беркли в программе предусмотрена папка cache_dbv, поэтому по умолчанию новый кэш будет создан в этой папке. Однако нет проблем поместить этот кэш и в основную папку cache, нужно лишь указать соответствующий путь в настройках программы. 
 +Перед скачиванием снимков нужно указать название версии, в которую будут помещаться тайлы. Это можно сделать в окне "Параметры карты". Обычно название версии представляет собой её номер в соответствии с нумерацией картсервиса. Скачав снимки указанной версии, мы будем иметь возможность в дальнейшем проверять идентичность скачиваемых тайлов тайлам, уже имеющимся в кэше, и в случае их совпадения не сохранять дублирующиеся тайлы. 
 +====Работа с версионным кэшем Беркли==== 
 +При выборе из списка карты с версионным кэшем Беркли будет автоматически установлена версия по умолчанию, указанная в zmp. В дальнейшем можно будет изменить "рабочую" версию, введя её название в поле **Версия** окна **Параметры карты**. В "рабочую" версию сохраняются скачиваемые тайлы, поэтому будьте внимательны и проверяйте URL перед тем, как начать скачивание. Для "рабочей" версии строится карта заполнения. 
 + 
 +При наличии в кэше нескольких версий снимков можно выбирать, тайлы какой из версий будут отображаться на экране. Для этого вызываем контекстное меню и выбираем пункт **Версия**. Если для данного места экрана существует несколько версий тайлов, их список будет виден в меню. Установив галку на нужной версии, мы будем видеть только тайлы этой версии. Чтобы видеть тайлы всех возможных версий для данного места, следует установить галку на опции **Отображать предыдущие версии**. Однако следует учитывать, что в данном случае карта заполнения будет строиться для всех доступных версий кэша. Если кликнуть на опции **Сбросить**, то ни одна из версий не будет "рабочей"
 + 
 +При скачивании каждый тайл проверяется на идентичность существующему, причём проверяются все доступные версии. Если тайла, идентичного скачанному, не существует, то скачанный тайл сохраняется, в противном случае - пропускается. Поэтому версия, скачанная первой, будет иметь наибольшее количество тайлов, а последующие версии - гораздо меньше (для одной и той же выделенной области, конечно). 
 +====Создание версионного кэша из ранее скачанного==== 
 +Целью данной операции является возможность дополнять имеющийся кэш новыми версиями. Для этого необходимо воспользоваться функцией **Управления кэшем**. Напомню, что данная функция обрабатывает весь кэш (или всю версию) целиком, в отличие от **Копирования**, при котором обрабатывается содержимое выделенной области. Возможны следующие варианты: 
 + 
 +==== Исходный кэш неверсионный (Беркли или любой другой) ==== 
 +Заполняем опции **Управления кэшем**, указывая в верхней части окна параметры исходного кэша, опцию **Process only tiles with version:** (Обрабатывать только тайлы версии:) и поле с названием версии оставляем пустыми, так как наш исходный кэш неверсионный. В нижней части окна указываем параметры целевого кэша, формат выбираем **BerkeleyDB (версионный)**, ставим галку на опции **Set same version for all processed tiles:** (Установить единую версию для всех обрабатываемых тайлов:) и записываем в соответствующее поле название версии. Папка целевого кэша должна быть создана заранее. Нажимаем "Начать" и ждём окончания процесса. Для нового кэша необходимо создать zmp, в котором должна быть запись **CacheType=61**. 
 + 
 +==== Исходный кэш версионный Беркли "старого образца" ==== 
 +Здесь процесс несколько сложнее. Версионный кэш "старого образца", как правило, содержит неверсионную часть, которая была скачана до появления возможности сохранять версии, и скачанные позднее версионные части. В зависимости от размеров каждой из частей наши действия могут быть разными. 
 + 
 +====Неверсионная часть кэша велика, а версионная часть мала либо её вообще нет==== 
 + 
 +В этом случае проще и быстрее будет перенести все части по очереди в новое версионное хранилище. При этом для неверсионной части опцию **Process only tiles with version:** и поле с названием версии оставляем пустыми, а в целевом кэше, наоборот, включаем опцию **Set same version for all processed tiles:** и вписываем название версии. Для версионных частей требуется указать как версию источника, так и версию назначения. Для нового версионного кэша необходимо создать zmp.
  
-===== Исходный кэш неверсионный (Беркли или любой другой) ===== +====Версионная часть кэша велика====
-Заполняем опции **Управления кэшем**, указывая в верхней части окна параметры исходного кэша, опцию "Process only tiles with version" и поле с названием версии оставляем пустыми, так как наш исходный кэш неверсионный. В нижней части окна указываем параметры целевого кэша, формат указываем "BerkeleyDB (версионный)", ставим галку на опции "Set same version for all processed tiles" и записываем в соответствующее поле название версии. Папка целевого кэша должна быть создана заранее. Нажимаем "Начать" и ждём окончания процесса. Для нового кэша необходимо создать zmp, в котором должна быть запись "CacheType=61".+
  
-===== Исходный кэш версионный Беркли "старого образца" ===== +В этом случае быстрее будет её не переносить в новое хранилище, а оставить в старом, преобразовав его в версионное нового образца. При этом неверсионную часть необходимо сначала переместить в другое хранилище, а затем из другого хранилища переместить в версионное, задав название версии.
-Здесь процесс несколько сложнее. Версионный кэш "старого образца" может содержать неверсионную часть, а может и не содержать. Если неверсионная часть есть и она важнапридётся немного повозиться.+
  
 Операция состоит из следующих этапов: Операция состоит из следующих этапов:
  
-====== Выделение неверсионной части кэша в отдельный кэш ====== +===== Выделение неверсионной части кэша в отдельный кэш ===== 
-Нам нужно извлечь неверсионную часть кэша и сохранить её на время. Удобнее воспользоваться целевым форматом SAS.Планета. Важно, чтобы тайлы **перемещались**, а не копировались, иначе не избежать дублирования+Нам нужно извлечь неверсионную часть кэша и сохранить её на время. Удобнее воспользоваться целевым форматом SAS.Планета. Важно, чтобы тайлы **перемещались**, а не копировались, иначе невозможно будет вставить ранее неверсионную часть обратно
-====== Обработка оставшегося версионного кэша ====== +===== Обработка оставшегося версионного кэша ===== 
-Далее нам понадобятся утилиты для работы с Беркли. Запускаем sdb_util, указываем наш исходный кэш и проводим над ним две операции: Recover environment и Prepare cache for backup (reset LSN). Затем перемещаем кэш в папку cache_dbv (если необходимо) и меняем расширения всех файлов *.sdb на *.sdbv, а всех файлов *.tne - на *.tnev. +Далее нам понадобятся утилиты для работы с Беркли. Запускаем **sdb_util.exe**, указываем наш исходный кэш и проводим над ним две операции: **Recover environment** и **Prepare cache for backup (reset LSN)**. Затем перемещаем кэш в папку cache_dbv (если необходимо) и меняем расширения всех файлов *.sdb на *.sdbv, а всех файлов *.tne - на *.tnev. 
-====== Вставляем выделенную неверсионную часть кэша обратно, но уже с обозначенной версией ======+===== Вставляем выделенную неверсионную часть кэша обратно, но уже с обозначенной версией =====
 Это сделать просто, см. **Исходный кэш неверсионный (Беркли или любой другой)**. Это сделать просто, см. **Исходный кэш неверсионный (Беркли или любой другой)**.
  
 +====Копирование в версионный кэш Беркли====
 +Усовершенствованная операция копирования позволяет указывать название версии, в которую будут скопированы или перемещены тайлы. Кроме того, опция **Make subfolder with map path name** (Создать вложенную папку с названием карты) может быть отключена, что позволяет копировать в один и тот же кэш отдельные снимки под одной (если они не накладываются друг на друга) или под разными версиями.
 +===Внимание!===
 +Нельзя применять операцию **перемещения** данных из одной версии кэша в другую версию **этого же** кэша. Это ведёт к невозвратимой потере данных, так как каждый перемещаемый тайл проверяется на идентичность существующему, то есть самому себе. Так как идентичность налицо, "вновь прибывший" тайл не сохраняется, а старый удаляется, потому что задано перемещение. В случае, когда задано копирование, кэш никак не изменится, но будет впустую потеряно время.
 +Чтобы переместить часть информации в другую версию того же кэша, следует сначала переместить её в отдельный кэш, а уже из него вернуть в первоначальный под другой версией.
/home/sasgisor/public_html/wikisasiya/data/attic/версионный_кэш.1372282458.txt.gz · Последнее изменение: (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki