Чтобы снизить объем дискового пространства, требуемого для хранения данных, вы можете сжимать таблицы и векторные классы пространственных объектов файловой базы геоданных (далее они будут называться общим термином «наборы данных») в формат «только для чтения». После сжатия скорость отображения данных и обработки запросов сопоставима с таковой для несжатых данных. Вы можете заметить, что некоторые операции станут выполняться немного быстрее, а другие - немного медленнее.
Существует два типа сжатия, которые можно применить к файловой базе геоданных: с потерей качества и без потери качества. При сжатии данных без потерь никакая информация не теряется, независимо от системы координат данных и типов атрибутивных данных, которые содержит класс пространственных объектов или таблица. При этом сохраняются все значения с плавающей запятой. Сжатие с потерей данных (новая опция, доступная в ArcGIS for Desktop 10.1), позволяет сжать файловую базу геоданных на 20% лучше, но при этом значения с плавающей запятой изменяются. Сжатие с потерями — это удобная опция, если вам требуется максимальное сжатие, а данные не являются очень точными, или вам не нужно сохранить полную точность данных, например, при сжатии данных с масштабом 1:1000000 или больше.
Сжатые данные отличаются от несжатых при редактировании: сжатый набор данных доступен только для чтения, и его нельзя отредактировать. Можно только его переименовать, изменить атрибутивные индексы и метаданные.
После того, как набор данных был сжат, он выглядит в ArcCatalog и ArcMap точно так же, как и до сжатия. Помимо этого, ваша работа с набором данных будет проходить, не считая редактирования, точно так же. Сжатые данные имеют формат прямого доступа, так что для обеспечения доступа к ним вам не придется переводить их в несжатый формат: ArcGIS и ArcReader могут читать их напрямую.
Сжатие идеально подходит для готовых наборов данных, которые не требуют последующего редактирования. Однако, при необходимости восстановления исходного формата «чтение/запись» сжатые наборы данных могут быть всегда переведены в несжатый формат.
Сжать данные
Можно сжать базу геоданных, набор классов объектов, отдельный класс пространственных объектов или таблицу.
Чтобы сжать файловую базу геоданных, щелкните на ней правой кнопкой мыши в дереве Каталога и выберите Администрирование (Administration) > Сжать файловую базу геоданных (Compress File Geodatabase Data...) и нажмите кнопку OK.
Чтобы сжать набор классов объектов, отдельный класс пространственных объектов или таблицу, щелкните правой кнопкой мыши на этом объекте в дереве Каталога и выберите команду Управлять (Manage) > Сжать файловую базу геоданных (Compress File Geodatabase Data...) и нажмите кнопку ОК.
При сжатии базы геоданных происходит сжатие всех классов пространственных объектов и таблиц, хранимых в ней. Точно так же, при сжатии набора классов объектов происходит сжатие всех содержащихся в нем классов пространственных объектов.
Возможность сжатия и перевода в несжатый формат доступна также в инструментах геообработки группы инструментов Файловая база геоданных (File Geodatabase), которая хранится в наборе инструментов Управление данными (Data Management). Для получения более подробной информации см. Общий обзор группы инструментов Файловая база геоданных (An overview of the File Geodatabase toolset).
Сжатые классы пространственных объектов и таблицы выглядят так же, как и несжатые, однако, просмотрев список классов пространственных объектов и таблиц на закладке Содержание (Contents) приложения ArcCatalog, вы можете определить, сжаты эти данные или нет. Сжатые классы пространственных объектов и таблицы имеют в столбце Тип (Type) значение «сжатый» («compressed»).
Другой способ это сделать - это открыть диалоговое окно Свойства для класса пространственных объектов или таблицы. На закладке Общие (General) будет указано, сжаты ли данные.
Преимущества сжатия
Сжатые данные файловой базы геоданных занимают на диске меньше места, чем несжатые, но в то же время обеспечивают высокую производительность при отображении и обработке запросов.
Степень возможного сжатия данных классов пространственных объектов и таблиц может изменяться от незначительной до показателя, превышающего 4:1. Возможную степень сжатия определяют координаты, а также количество атрибутивных полей и их содержание.
Самым важным фактором, определяющим уровень сжатия, является число вершин, приходящихся на объект. Точечные объекты и простые линии с двумя вершинами сжимаются лучше, чем линии или полигоны с множеством вершин. Классы точечных объектов адресов или дорог с несколькими вершинами могут быть сжаты с отношением 3:1, в то время как класс объектов речной сети или данных о почвенном покрове с объектами, образованными большим количеством вершин, может быть сжат только с отношением 3:2. Объекты, состоящие из большого количества вершин, уже хранятся эффективно в несжатом формате, поэтому возможность их сжатия значительно меньше. Поля атрибутов также играют роль в определении уровня сжатия: поля с типом текст (text) и целое (integer), а также поля с типом дата (date) сжимаются лучше, чем поля с типами плавающая точка (float) и двойная точность (double).
В расположенной ниже таблице сравниваются размеры файлов в сжатом и несжатом форматах. Класс пространственных объектов, который по сравнению с исходным размером был максимально сжат, – Europe places – является классом точечных объектов. Класс пространственных объектов, который по сравнению с исходным размером был сжат в минимальной степени, – Mexico roads – является классом линейных объектов, содержащим объекты, которые образованы большим количеством вершин.
Класс пространственных объектов | Размер без сжатия | Размер со сжатием | Степень сжатия |
---|---|---|---|
Europe places (61541 точечных объектов, 14 полей) | 6,2 МБ | 0,67 МБ | 9.3 |
U.S. census blocks США (8205055 точечных объектов, 11 полей) | 705 МБ | 80 МБ | 8.8 |
California roads (2092079 линейных объектов, 29 полей) | 329 МБ | 60 МБ | 5.5 |
Europe rails (383531 линейных объектов, 12 полей) | 58 МБ | 9,7 МБ | 6.0 |
Calgary addresses (285,285 point features, 8 fields) | 21 МБ | 6,4 МБ | 3.3 |
Calgary buildings (319000 полигональных объектов, 9 полей) | 48 МБ | 20 МБ | 2.4 |
U.S. rivers and streams (2844231 линейных объектов, 9 полей) | 878 МБ | 288 МБ | 3.0 |
U.S. counties (3140 полигональных объектов, 57 полей) | 1,6 МБ | 0,8 МБ | 2.5 |
Europe water (232375 полигональных объектов, 10 полей) | 176 МБ | 70 МБ | 2.5 |
U.S. traffic analysis zones (166747 полигональных объектов, 10 полей) | 68 МБ | 35 МБ | 1.9 |
Mexico roads (5847 линейных объектов, 7 полей) | 3,5 МБ | 1,6 МБ | 2.2 |
Таблицы обычно сжимаются с отношением свыше 2:1. Таблицы обычно сжимаются с отношением, превышающим 2:1, причем повторы значений являются самым важным фактором: поля, значения которых при переходе от одной записи к другой часто не меняются, сжимаются лучше, чем поля с множеством уникальных значений. Как и в классах пространственных объектов, текстовые, целочисленные поля и поля дат сжимаются гораздо лучше, чем поля с плавающей точкой или двойной точности.
Несмотря на то, что вы можете сжимать данные любого размера, эффективнее всего использовать сжатие для больших объемов данных. Сжатие больших наборов данных или множества наборов данных среднего и малого объема может обеспечить существенную экономию объема памяти для хранения, что может быть полезно, когда вы ограничены в дисковом пространстве или пытаетесь поместить данные на CD или DVD-диск. Например, файловую базу геоданных переписи населения США размером 8,9 ГБ можно сжать до 3,4 ГБ - этого достаточно, чтобы она поместилась на DVD.
При минимизации требований к объему места на диске для хранения вы должны помнить о том, что сжатие файловой базы геоданных не является единственной находящейся в вашем расположении опцией. Если ваши данные хранятся с меньшим разрешением x,y (resolution), чем необходимо, то вы можете уменьшить объем, необходимый для хранения данных, перезагрузив данные перед сжатием с более крупным разрешением. Например, если в вашем наборе данных все данные хранятся с точностью по умолчанию 1/10 мм, но вы знаете, что данные собраны с метровой точностью, можно перегрузить данные с использованием метрового разрешения. Например, при перегрузке класса пространственных объектов зданий (Calgary buildings) с 1/10-мм разрешением в класс с 1-метровым разрешением, размер набора данных сокращается с 48 до 31 МБ. Дальнейшее сжатие класса пространственных объектов размером 31 Мб сократит размер данных до 12 МБ.
Класс пространственных объектов | Размер без сжатия | Размер со сжатием |
---|---|---|
Calgary buildings, разрешение 0,0001 метра | 48 МБ | 20 МБ |
Calgary buildings, разрешение 1,0 метр | 31 МБ | 12 МБ |
Чтобы перезагрузить класс пространственных объектов с другим разрешением, вам необходимо экспортировать данные в новый класс пространственных объектов. Щелкните правой кнопкой мыши на классе объектов в дереве Каталога и выберите Экспорт > В базу геоданных (Export > To Geodatabase) (выберите команду Несколько (Multiple) для экспорта нескольких классов пространственных объектов за один раз). Установите новое разрешение в диалоговом окне Параметры среды (Environments) перед тем, как экспортировать файл. Для получения более подробной информации см. Разрешение XY, Разрешение Z и Класс объектов в класс объектов (Feature Class To Feature Class).
Что вы можете сжать
Можно сжать базу геоданных, набор классов объектов, отдельный класс пространственных объектов или таблицу. При сжатии базы геоданных происходит сжатие всех классов пространственных объектов и таблиц, хранимых в ней. Точно так же, при сжатии набора классов объектов происходит сжатие всех содержащихся в нем классов пространственных объектов. Любой элемент, который не может быть сжат, будет пропущен. В представленной ниже таблице указаны элементы дерева Каталога, которые могут и не могут быть сжаты.
Данные файловой базы геоданных | Могут быть сжаты |
---|---|
База геоданных | Да (Все векторные классы пространственных объектов и таблицы в базе геоданных могут быть сжаты.) |
Набор классов объектов | Да (Все векторные классы пространственных объектов в наборе классов объектов могут быть сжаты.) |
Класс пространственных объектов (только отдельные классы) | Да |
Таблица | Да |
Набор растровых данных | Нет |
Каталог растров | Нет |
Terrain | Нет |
Схема (Schematic) | Нет |
Набор кадастровых данных (Cadastral fabric) | Нет |
Набор геодезических данных (Survery dataset) | Нет |
Вы не можете сжать или перевести в несжатый формат отдельный класс пространственных объектов в наборе классов объектов. Чтобы сжать или перевести в несжатый формат класс пространственных объектов в наборе классов объектов, необходимо сжать или перевести в несжатый формат все классы пространственных объектов этого набора классов объектов.
Сжатие наборов растровых данных и растровых каталогов фактически поддерживается ограниченным образом с помощью инструментов геообработки файловой базы геоданных: вы можете сжать отдельно один из наборов растровых данных, хотя это не рекомендуется делать, поскольку это не уменьшает объем памяти, необходимый для хранения. Эта поддержка обеспечивается напрямую как средство, которое позволяет ArcGIS Publisher иметь доступ к инструментам, когда он упаковывает наборы растровых данных и растровые каталоги файловой базы геоданных в сжатую форму и затем блокирует их.
Ограничения при работе со сжатыми данными
Помимо невозможности редактирования сжатых классов пространственных объектов и таблиц, существуют еще некоторые незначительные ограничения, которые описаны ниже.
Как только класс пространственных объектов или таблица будут сжаты, следующие параметры изменить уже будет нельзя:
- Информация о системе координат
- Подтипы, атрибутивные домены и значения по умолчанию
- Поля и их свойства
- Представления
Единственными свойствами, которые могут быть изменены, являются псевдоним класса пространственных объектов или таблицы и атрибутивные индексы.
Вы можете добавлять в сжатые наборы классов объектов несжатые классы пространственных объектов с помощью таких операций, как создание нового пустого класса пространственных объектов, копирование и вставка или импорт классов объектов. Это приводит к появлению разнородной среды, когда некоторые классы пространственных объектов в наборе классов объектов сжаты, а некоторые – нет. Если набор классов объектов содержит и сжатые, и несжатые классы пространственных объектов, то вы не сможете редактировать несжатые классы пространственных объектов. Чтобы отредактировать класс пространственных объектов, вам придется перевести в несжатый формат все классы пространственных объектов набора классов объектов.
Можно сжимать классы пространственных объектов, участвующие в классах отношений, топологиях, геометрических сетях, наборах сетевых данных и наборах данных terrain. Однако для этих типов данных существуют следующие ограничения:
- Вы не можете создать топологию или геометрическую сеть на основе сжатых классов пространственных объектов.
- Если вы сжали одну «сторону» класса отношений, то независимо от того, когда вы это сделали, вы уже не сможете редактировать другую «сторону». Это происходит в связи с тем, что при обновлении несжатой «стороны» может потребоваться автоматическое обновление сжатой «стороны», которая хранится в формате «только для чтения».
- Вы не можете изменять параметры топологии, если ее классы пространственных объектов сжаты.
Класс отношений (Relationship class) | Топология (Topology) | Геометрическая сеть (Geometric network) | Сетевой набор данных (Network dataset) | Terrain | |
---|---|---|---|---|---|
Позволяет сжимать их классы пространственных объектов | Да | Да | Да | Да | Да |
Позволяет создавать в них сжатые классы пространственных объектов | Да | Нет | Нет | Да | Да |
Позволяет редактировать свойства | Да | Нет | Да | Да | Да |