Последовательность действий: Перевод зарегистрированного каталога растров из двоичного типа в SQL тип

Уровень сложности: Средний Требования к данным: Используйте собственные данные Задача: Рассказывается, как перевести растровые данные в Oracle, PostgreSQL или SQL Server, чтобы использовать тип хранения ST_Raster.

Имеющиеся растровые наборы данных, созданные с помощью двоичного типа ArcSDE, могут быть конвертированы в тип ST_Raster с помощью инструмента геообработки Изменить условия хранения (Migrate Storage) или операции перевода sdetable.

В ходе перевода, в бизнес-таблицу добавляется новый столбец ST_Raster, в который записываются метаданные канала растра, хранящиеся в таблице канала растра ArcSDE SDE_BND_<N>. Затем исходный целый столбец растра удаляется, а имя исходного столбца растра присваивается новому столбцу ST_Raster. Также удаляется таблица канала растра.

В большинстве случаев конвертация из двоичного типа в ST_Raster производится быстро и не нагружает систему. Кроме двух случаев: если конвертируемые растровые данные хранятся как LONG RAW в Oracle, или если конвертируемые растровые данные хранятся в столбце типа изображения в SQL Server.

В случае с Oracle столбец LONG RAW BLOCK_DATA в таблице растровых блоков ArcSDE (SDE_BLK_<N>) следует конвертировать из LONG RAW в BLOB прежде, чем проводить конвертацию в ST_Raster. В случае с SQL Server столбец изображения BLOCK_DATA в таблице растровых блоков ArcSDE (SDE_BLK_<N>) следует конвертировать в столбец varbinary.

ПодсказкаПодсказка:

Если производится перевод версионной таблицы или класса пространственных объектов, содержащего поле растра, необходимо сжать базу геоданных, прежде чем переводить данные. Хотя это и не обязательно, но если в дельта таблицах будет мало или совсем не будет неиспользованных состояний, перевод займет меньше времени.

Всегда следует создавать резервную копию базы геоданных перед тем, как переводить данные.

Сжатие базы геоданных

Администратор базы геоданных может сжать ее, используя команду Сжать (Compress) в ArcGIS for Desktop. Инструкции см. в разделе Сжатие многопользовательской базы геоданных.

Создание резервной копии базы данных

Администратор базы данных должен создать резервную копию базы геоданных, прежде чем переводить какие-либо данные. В этом случае, если перевод не удастся или вас не устроят новые данные, всегда можно вернуться к исходным данным.

Процесс перевода сделан возобновляемым. Если перевод по каким-либо причинам не удался, необходимо устранить проблему, ставшую причиной неудачи, и перезапустить перевод. Если по каким-либо причинам завершить перевод в данный момент невозможно, можно восстановить данные из резервной копии.

Резервные копии базы данных создаются инструментами системы управления базой данных (СУБД). Инструкции см. в документации по СУБД.

Установка типа ST_Raster

Прежде чем переводить столбцы растров в тип ST_Raster, необходимо сконфигурировать базу геоданных для хранения ST_Raster, запустив команды sdesetup и install_st_raster. Инструкции см. в разделе, относящемся к вашей инсталляции:

Перевод данных

За раз следует переводить только один каталог растра, набор растровых данных, набор данных мозаики, таблицу или класс пространственных объектов, содержащих поле растра.

Нужно быть владельцем набора данных, чтобы перевести его в другой тип хранения.

Установка параметра DBTUNE

В одном из ключевых слов конфигурации параметр RASTER_STORAGE должен быть задан как ST_Raster. Ключевое слово задается при запуске инструмента Изменить условия хранения (Migrate Storage) или команды sdetable при операции перевода.

Шаги:
  1. Чтобы добавить параметр RASTER_STORAGE и задать его как ST_RASTER, следует использовать один из следующих вариантов:

Теперь нужно запустить инструмент Изменить условия хранения (Migrate Storage) или команду sdetable, чтобы перевести каталоги растров или наборы растровых данных.

Использование инструмента геообработки Изменить условия хранения (Migrate Storage)

Можно применить инструмент геообработки Изменить условия хранения (Migrate Storage) сразу к группе каталогов растров, наборов растровых данных, наборов данных мозаики, таблиц или классов пространственных объектов, содержащих поле растра. Или можно написать скрипт перевода на языке Python для последовательного перевода группы файлов.

Шаги:
  1. В ArcCatalog или окне Каталог (Catalog) в ArcMap ищите инструмент геообработки Изменить условия хранения (Migrate Storage), расположенный в наборе инструментов Управление данными (Data Management).
  2. Укажите необходимую инструменту информацию. Это название и путь к каждому из каталогов растра или наборов растровых данных и ключевое слово конфигурации, используемое для перевода.

Использование команды sdetable при операции перевода

Можно использовать команду sdetable для перевода столбцов растра в отдельные каталоги растров, наборы растровых данных, наборы данных мозаики, таблицы или классы пространственных объектов, содержащие поле растра, или поместить несколько команд sdetable в файл .bat. Запускать команду следует с компьютера, на который установлен ArcSDE, лучше всего из директории bin в SDEHOME.

Шаги:
  1. Откройте командную строку DOS (Windows) или командную оболочку shell (UNIX или Linux).
  2. Выполните команду sdetable при операции перевода.

    Например:

    sdetable –o migrate –l watershed,raster –k ST_RASTER 
    –i sde:sqlserver:mainserver\ssdb –s mainserver –D mydb –u bjar –p mine.all.mine
    

    Не забудьте указать ключевое слово конфигурации, содержащее значение RASTER_STORAGE, в которое вы хотите конвертировать свои данные.

Связанные темы

5/25/2014