- •Географические информационные системы в управлении лесами
- •Введение
- •1. Гис в управлении лесами
- •1.1. Информационные технологии в управлении лесами рф
- •1.2. Основы геоинформатики
- •1.3 Задачи гис. Функции гис. Классификация гис
- •1.4. Лесные экосистемы, как объекты гис-проектирования
- •2. Программное обеспечение лесоустройства и лесного хозяйства рф
- •2.1 Задачи программного обеспечения гис лесного комплекса
- •2.2 Программное обеспечение лесоустроительных предприятий рф
- •2.3 Особенности информатизации лесного комплекса рф
- •3. Управление данными в гис
- •3.1 Возможности управления данными в гис
- •3.2 Управление атрибутивными данными
- •Способы хранения данных в бд
- •3.2.1 Принципы хранения и управления данными в реляционных субд
- •3.2.2 Запросы к атрибутивным данным
- •3.3. Управление картографическими данными в гис
- •3.3.1. Особенности работы с картографическими данными в гис
- •3.3.2 Визуализация
- •3.3.3. Создание тематических карт
- •3.3.4. Вычисление картометрических характеристик в гис
- •Вычисление картометрических характеристик в гис.
- •3.4 Пространственный анализ в гис
- •3.4.1 Цели пространственного анализа
- •3.4.2 Пространственные запросы
- •4.1 Основные этапы создания гис лесного фонда
- •4.2 Цифровые картографические основы1
- •4.3 Преобразование растровых изображений
- •4.4 Основные направления применения гис в лесной отрасли
- •4.4.1 Инвентаризация лесного фонда и расчеты использования лесных ресурсов
- •4.4.2 Проектирование использования лесов
- •4.4.3 Внесение изменений в базы данных
- •4.4.4 Обработка данных лесосечного фонда
- •4.3.5 Ведение лесного хозяйства
- •5. Интеграция гис лесоустройства с другими технологиями и пространственными данными
- •Литература
3.2.2 Запросы к атрибутивным данным
Поиск информации в таблицах атрибутивных баз данных может осуществляться как вручную (с просмотром всех строк-записей), так и с помощью множественной обработки данных - запросов1. Множественная обработка данных позволяет одновременно вводить, редактировать, выбирать и удалять множество записей из таблиц.
Теоретической основой операций с таблицами в реляционных СУБД являются реляционная алгебра и реляционное исчисление. Оба указанных языка эквивалентны – сформулированные на одном из них запросы могут быть преобразованы в другой2. По сравнению с традиционными языками программирования языки реляционной алгебры и реляционного исчисления относительно просты в изучении и использовании. В реляционной алгебре операндами3 и результатами всех действий являются отношения (таблицы), операциями – набор операций над отношениями (операции объединения, разности, пересечения, выборки и др. ). Основные (базовые) операции реляционной алгебры продемонстрированы на рис.
Рисунок 1. Базовые операции реляционной алгебры (БД)
Примеры основных запросов реляционной алгебры показаны для исходных таблиц-отношений, характеризующих свойства лесосечного фонда (рис. )
Операции реляционной алгебры разделяются на операции с одним отношением (выборка, проекция), операции с двумя отношениями (объединение, разность, пересечение, произведение, деление, соединение). Для ряда операций с двумя отношениями необходимо соблюдение требования совместимости по структуре1 (объединение, разность, пересечение).
а |
|
б |
|
в |
|
|
|
г |
|
|
|
д |
|
е |
|
таблица 2
Тип леса
вид рубки
ЧС
сплошная
ЧС
проходная
ВР
сплошная
ВР
обновления
БР
выборочная
ЧС
обновления
БР
выборочная
Объединением двух совместимых отношений R1 и R2 одинаковой размерности (R1 UNION1 R2) является отношение R, содержащее все элементы исходных отношений (с исключением повторений) – рис. а.
Разность (вычитание) совместимых отношений R1 и R2 одинаковой размерности (R1 MINUS R2) есть отношение, тело которого состоит из множества кортежей, принадлежащих R1, но не принадлежащих R2 – рис. б.
Пересечение двух совместимых отношений R1 и R2 одинаковой размерности (R1 INTERSECT R2) порождает отношение R, с телом, включающим в себя кортежи, одновременно принадлежащие обоим исходным отношениям – рис. в.
Произведение отношения R1 степени k1 и отношения R2 степени k2 (R1 TIMES R2), которые не имеют одинаковых имен атрибутов, есть такое отношение R степени (k1+k2), заголовок которого включает заголовки отношений R1 и R2, одинаковой размерности (R1 UNION R2) является отношение R, содержащее все элементы исходных отношений (с исключением повторений) – рис. г.
Выборка (R WHERE f) отношения R по формуле f – новое отношение с заголовком отношения R и кортежами, удовлетворяющими истинности логического выражения, заданного формулой f (рис. д). Для записи формул в выборках используются имена атрибутов, константы, логические операции (И, ИЛИ, НЕ), операции сравнения, скобки.
Проекция отношения A на атрибуты X, Y,…, Z (A[X, Y,…, Z]), где множество {X, Y,…, Z} является подмножеством полного списка атрибутов заголовка отношения A представляет собой отношение с заголовком X, Y,…, Z и телом, содержащим кортежи отношения A (за исключением повторений) – рис.е.
Результат деления отношения R1 с атрибутами A и B на отношение R2 с атрибутом B (R1 DIVIDE BY R2), где A и B – атрибуты, а атрибут B общий, определяемый на одном домене – новое отношение R с заголовком A и телом, состоящим из кортежей r таких, что в отношении R1 имеются кортежи (r, s), причем множество значений s включает множество значений атрибута B отношения R2 – рис .ж.
Соединение отношений R1 и R2 по условию, заданному формулой f, представляет собой отношение R, которое можно получить путем произведения отношений R1 и R2 с последующей выборкой по условию f – рис .з.
Кроме перечисленных операций реляционной алгебры известны другие (…), а также их комбинации, например последовательные операции выборки и проекции.
В языках реляционного исчисления, в отличие от реляционной алгебры, запросы содержат только желаемый результат, а не процедуры, необходимые для его выполнения1. Применяются два основных языка - язык структурированных запросов SQL (Structured query language) и язык запросов по образцу QBE (Query by example), эквивалентных друг другу по возможностям манипулирования данными. Язык SQL реализуется в форме выражений из команд и условий (с использованием элементов программирования), язык QBE связан с ручным или визуальным формированием запросов.
Язык SQL отчасти основан на формальном языке запросов – реляционной алгебре, его отличают простота использования, интуитивность и универсальный характер. Операторы языка SQL подразделяются на две подгруппы – операции с таблицами (создание, удаление, изменение структуры таблиц, создание индексов) и операции с данными (выборка, изменение, вставка, удаление записей…). Важнейшими операторами языка SQL являются операторы выбора (SELECT), сортировки (ORDER BY), группировки (GROUP BY) и соединения таблиц по общему столбцу (JOIN). Они могут быть доступны в СУБД как в форме запросов (SQL), так и в форме различных мастеров или конструкторов (QBE). Основная синтаксическая конструкция запроса на языке SQL1:
SELECT имена столбцов
FROM отношения
WHERE ограничения-на-кортежи
В описание оператора SELECT требуется включать список полей и операнд FROM. Остальные операнды не обязательны. В операнде FROM перечисляются имена таблиц, из которых отбираются записи. Примеры записи запроса на выбор выделов с возрастом преобладающей породы (поле ТАКСАЦИЯ.ВОЗРАСТ ) более 100 лет из таблицы ТАКСАЦИЯ приведены на рис. Результатом выполнения оператора SELECT является набор кортежей (строк исходной таблицы). Операции выборки могут выполняться безусловно (выбор всех записей), или в соответствии с поставленными условиями. Условия отбора (внутри WHERE) представляют собой комбинацию атрибутов, значений атрибутов, логических операторов, операторов сравнения. Запросы на языках реляционного исчисления позволяют извлекать необходимую информацию из атрибутивных таблиц как в среде ГИС (WinGIS, MapInfo, ArcView), так и в среде СУБД (FoxPro for Windows, MS Access).
Эквивалентность языков реляционной алгебры и реляционного исчисления (SQL-запросы для примеров реляционной алгебры).
А. |
Б. |
|
SELECT ТАКСАЦИЯ.* FROM ТАКСАЦИЯ WHERE (ТАКСАЦИЯ.ВОЗРАСТ)>100 |
В. |
Г. |
|
|
Рис. Примеры записи запроса к атрибутивной таблице: а – режим конструктора (QBE-запрос) в MS Access, б – режим SQL-запроса в MS Access, в - диалоговое окно SQL-запрос в ГИС MapInfo, диалоговое окно конструктора запросов в ГИС ArcView 3.2
Синтаксис SQL-диалектов в разных программах и версиях может отличаться, но основные принципы построения запросов однородны. Результатами выполнения запросов к атрибутивным данным в СУБД и ГИС являются новые отношения (таблицы). С помощью запросов также могут рассчитываться новые значения. Для расчетов новых значений могут использоваться как существующие в исходных таблицах данные, так и новые, получаемые при вводе и обработке данных. Для вычисления новых значений в столбцах атрибутивных таблиц могут использоваться специальные инструменты (Конструктор запросов в ГИС ArcView 3.2, Построитель выражений в СУБД MS Access 2003).
В таблице приводятся основные составляющие условий SQL-запросов для отдельных программ СУБД и ГИС.
Таблица 3. Составляющие SQL-запросов отдельных приложений СУБД и ГИС
Составляющие SQL-запросов |
СУБД MS Access 2003 |
ГИС MapInfo 7.8 |
ГИС WinGIS 2003 |
ГИС ArcView 3.2 |
Диалоговые окна для выборок |
Фильтр (в т.ч. фильтр по выделенному значению, введенному значению, расширенный фильтр) |
Диалоги “Выбрать”, меню ”Запрос” |
Фильтр |
Калькулятор Поля, Конструктор запросов |
Диалоговые окна для запросов |
Мастер запросов (режимы конструктор, SQL-режим)
|
SQL-запрос |
Query builder (Conditions, SQL) |
Конструктор запросов |
Компоненты условий в запросах |
|
|
|
|
Символы замены символьных данных |
“?”(“*”) |
“_”(“%”) |
“_”(“%”) |
“?”(“*”) |
Арифметические операторы |
+ |
+ |
+ |
+ |
Логические операторы |
|
|
|
|
Операторы сравнения |
+ |
+ |
+ |
+ |
Обращение к нескольким таблицам |
Возможно |
возможно |
нет |
нет |
Вычисления в запросах |
+ |
+ |
нет |
+ |
Функции |
Массивы, преобразование, база данных, Дата/время, по подмножеству, Обработка ошибок, финансовые, общие, проверка, математические, сообщения, управления, статистические, текстовые |
Математические функции Функции даты и времени Строковые функции Географические функции Объектные функции |
|
|
Группировка данных |
+ |
+ |
+ |
Нет |
Сортировка данных |
+ |
+ |
+ |
+ |
Типы атрибутивных данных в СУБД и ГИС в целом одинаковы, но могут и отличаться, что важно учитывать при операциях импорта-экспорта (табл. ).
Table 2. Типы данных в атрибутивных таблицах ГИС и СУБД
Тип данных |
СУБД MS Access 2000 |
ГИС MapInfo 6.0 |
ГИС WinGIS 2003 |
ГИС ArcView 3.2 |
Текстовый (символьный)
|
+1 |
+ |
+ |
+ |
Числовой2
|
+ |
+ |
+ |
+ |
Дата/время
|
+ |
+ |
+ |
+ |
Денежный
|
+ |
- |
+ |
- |
Счетчик |
+ |
- |
- |
- |
Логический
|
+ |
+ |
+ |
+ |
Поле объекта OLE |
+ |
- |
- |
- |
Гиперссылка
|
+ |
- |
- |
- |
Мастер подстановок
|
+ |
- |
- |
- |
Создание атрибутивных баз данных может выполняться непосредственно в самих внутренних базах данных ГИС, путем ввода, либо экспортом из форматов электронных таблиц или СУБД (форматы *.xls, *.dbf, *.mdb, *.wk1-wk3, *.txt, *.tab и пр.).
Принципы представления и обработки информации в реляционных СУБД позволяют выполнять операции по созданию, обработке данных не только в крупных организациях, имеющих отдельный штат специалистов в области программирования (лесоустройстве, лесозаготовительных компаниях, государственных региональных органах управления лесами), но и в небольших по численности организациях, связанных с управлением лесным фондом.
В состав атрибутивных баз данных лесного фонда, создаваемых при лесоустройстве, включаются следующие элементы:
- таксационные характеристики выделов, кварталов, получаемые в результате проведения полевых и камеральных работ,
- дополнительные сведения, значимые для конкретного объекта (геоботанические описания, характеристики почв, перечет деревьев, характеристики повреждений и т.д.),
- нормативно-справочная информация, получаемая из специальной литературы, договоров аренды, правительственных документов и др. источников.
В результате множественной обработки баз данных средствами СУБД могут быть получены новые сведения, необходимые для проектирования использования лесов, оценки их количественных и качественных характеристик. Примерами производных характеристик каждого выдела, получаемых в результате обработки данных лесного фонда, являются класс и группа возраста, хозяйственная секция, группа типов леса. С помощью множественной обработки атрибутивных данных участков лесного фонда определяются показатели сортиментно-сортной и товарной структуры, средние таксационные характеристики, размеры лесопользования по видам и по частям лесного фонда (хозяйственным секциям, категориям защитных лесов, арендуемым участкам, лесничествам). При этом средства СУБД позволяют обеспечить единообразный и контролируемый процесс ввода, хранения и обновления первичных данных, их автоматизированную обработку.
Контрольные вопросы к главе 3.1:
Функции ГИС, востребованные в лесном хозяйстве и лесоустройстве РФ.
Атрибутивные данные лесоустройства
Реляционные СУБД – преимущества и недостатки, основные понятия, элементы реляционных баз данных.
Типы связей в СУБД.
Базовые операции реляционной алгебры.
Языки реляционного исчисления. Основные особенности языков запросов QBE, SQL.
Синтаксис оператора SELECT при использовании SQL-запросов.
Составляющие SQL-запросов в СУБД и ГИС
Типы данных в атрибутивных таблицах ГИС и СУБД.
Состав атрибутивных баз данных лесного фонда.