PostGIS в действии
Покупка
Новинка
Издательство:
ДМК Пресс
Перевод:
Беликов Дмитрий Анатольевич
Науч. ред.:
Рогов Е. В.
Год издания: 2023
Кол-во страниц: 738
Дополнительно
Вид издания:
Практическое пособие
Уровень образования:
Дополнительное профессиональное образование
ISBN: 978-5-93700-130-6
Артикул: 855969.01.99
PostGIS — расширение PostgreSQL с открытым исходным кодом для работы с пространственными базами данных. Оно предоставляет мощные механизмы для решения практически любых задач, связанных с геоданными.
Эта книга призвана послужить путеводителем по сотням функций, предлагаемых PostGIS. Начав с изучения геоинформационных систем, основанных на векторных, растровых и топологических объектах, вы перейдете к анализу, визуализации и отображению данных на карте, а также научитесь создавать пользовательские функции для приложений, на конкретных примерах освоите навыки решения распространенных проблем.
Издание предназначено для читателей, знакомых с реляционными базами данных и основами SQL. Опыт работы с геоданными или ГИС не требуется.
- Полная коллекция по информатике и вычислительной технике
- ДМК Пресс. Информационные системы и технологии
- ДМК Пресс. ИТ-технологии для профессионалов
- Интермедиатор. Информационные системы и технологии (сводная)
- Интермедиатор. ИТ-технологии для профессионалов (сводная)
- Локальные компьютерные сети. Программное обеспечение локальных сетей. ОС
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.03: Прикладная информатика
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Регина О. Обе, Лео С. Хсу PostGIS в действии
PostGIS in Action Regina O. Obe and Leo S. Hsu Third edition
PostGIS в действии Регина О. Обе Лео С. Хсу Москва, 2023
УДК 004.65.2 ББК 32.972 О13 Регина О. Обе, Лео С. Хсу О13 PostGIS в действии / пер. с англ. Д. А. Беликова; науч. ред Е. В. Рогов. – М.: ДМК Пресс, 2023. – 736 с.: ил. ISBN 978-5-93700-130-6 PostGIS – расширение PostgreSQL с открытым исходным кодом для работы с пространственными базами данных. Оно предоставляет мощные механизмы для решения практически любых задач, связанных с геоданными. Эта книга призвана послужить путеводителем по сотням функций, предлагаемых PostGIS. Начав с изучения геоинформационных систем, основанных на векторных, растровых и топологических объектах, вы перейдете к анализу, визуализации и отображению данных на карте, а также научитесь создавать пользовательские функции для приложений, на конкретных примерах освоите навыки решения распространенных проблем. Издание предназначено для читателей, знакомых с реляционными базами данных и основами SQL. Опыт работы с геоданными или ГИС не требуется. УДК 004.65.2 ББК 32.972 © DMK Press 2023. Authorized translation of the English edition © 2022 Manning Publications. This translation is published and sold by permission of Manning Publications, the owner of all rights to publish and sell the same. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. © 2021 by Manning Publications Co. © Оформление, издание, перевод, ДМК Пресс, 2023 ISBN (анг.) 978-1-61729-669-7 ISBN (рус.) 978-5-93700-130-6
Доктору Джоан Элис Бернетт Обе (1937–2021), новатору, мужественному врачу, маме. Доктору Эрнсту Олагбаде Обе (1935–2012), замечательному профессору, руководителю, отцу
Краткое оглавление ЧАСТЬ I. Введение в PostGIS............................................. 37 1 Что такое пространственная база данных?............... 39 2 Пространственные типы данных................................... 70 3 Системы пространственной привязки......................... 113 4 Работа с реальными данными........................................ 147 5 Использование PostGIS с настольными ГИС.............. 197 6 Функции для работы с типами geometry и geography............................................................................. 241 7 Функции для работы с растрами.................................. 286 8 Пространственные связи................................................. 321 ЧАСТЬ II. Приступаем к работе с PostGIS...................... 351 9 Анализ близости.................................................................. 353 10 Геокодер TIGER.................................................................... 318 11 Обработка геометрических и географических объектов............................................... 327 12 Обработка растров........................................................... 369 13 Создание и использование топологий............................ 375 14 Организация пространственных данных.................... 500 15 Настройка производительности запросов.................. 541 ЧАСТЬ III. Использование PostGIS с другими инструментами.................................................................. 595 16 Расширение PostGIS с помощью pgRouting и процедурных языков......................................................... 597 17 Использование PostGIS в веб-приложениях................. 638
Оглавление Предисловие от издательства........................................................... 21 Предисловие........................................................................................ 22 Вступление........................................................................................... 24 Благодарности..................................................................................... 25 Об этой книге...................................................................................... 27 Кому адресована эта книга?............................................................... 28 Структура книги ................................................................................. 31 О коде ................................................................................................... 33 О названии .......................................................................................... 33 Об авторах............................................................................................ 35 Об иллюстрации на обложке ........................................................... 36 ЧАСТЬ I. Введение в PostGIS............................................. 37 1 Что такое пространственная база данных?............. 39 1.1. Мыслить пространственно........................................................ 40 1.2. Знакомство с PostGIS .................................................................. 43 1.2.1. Почему PostGIS .................................................................. 43 1.2.2. Соответствие стандартам ................................................ 44 1.2.3. Сила PostGIS........................................................................ 46 1.2.4. Создана на базе PostgreSQL.............................................. 47 1.2.5. Бесплатная.......................................................................... 47 1.2.6. Свободная............................................................................ 48 1.2.7. Альтернативы PostGIS ...................................................... 48 1.3. Установка PostGIS........................................................................ 51 1.3.1. Проверка версий PostGIS и PostgreSQL......................... 54 1.4. Пространственные типы данных.............................................. 54 1.4.1. Тип geometry....................................................................... 56 1.4.2. Тип georgaphy..................................................................... 57 1.4.3. Тип raster............................................................................. 57 1.4.4. Тип topology........................................................................ 58 1.5. Здравствуй, реальный мир......................................................... 59 1.5.1. Разбор задачи...................................................................... 60 1.5.2. Моделирование.................................................................. 60 1.5.3. Загрузка данных ................................................................. 63
1.5.4. Написание запроса............................................................ 66 1.5.5. Просмотр пространственных данных с помощью OpenJump............................................................................ 67 Резюме.................................................................................................. 69 2 Пространственные типы данных............................. 70 2.1. Модификаторы типов................................................................. 72 2.1.1. Модификаторы подтипа................................................... 72 2.1.2. Идентификатор пространственной системы координат ........................................................................... 73 2.2. Тип geometry ................................................................................ 74 2.2.1. Точки ................................................................................... 74 2.2.2. Линии................................................................................... 75 2.2.3. Полигоны............................................................................ 77 2.2.4. Коллекции геометрических объектов............................ 81 2.2.5. М-координата...................................................................... 86 2.2.6. Z-координата....................................................................... 88 2.2.7. Многогранные поверхности и нерегулярные триангулированные сети.................................................. 90 2.2.8. Создание нерегулярных триангулированных сетей...... 93 2.2.9. Криволинейные геометрические объекты.................... 93 2.2.10. Пространственный каталог для геометрических объектов ............................................................................ 99 2.3. Тип geography ............................................................................ 103 2.3.1. Различия между типами geography и geometry ........... 103 2.3.2. Пространственный каталог для географических данных................................................................................ 105 2.4. Растр............................................................................................. 105 2.4.1. Свойства растров............................................................. 106 2.4.2. Создание растров............................................................. 108 2.4.3. Пространственный каталог для растров..................... 110 Резюме................................................................................................ 111 3 Пространственные системы координат ............... 113 3.1. Что такое пространственная система координат................ 114 3.1.1. Геоиды................................................................................ 115 3.1.2. Эллипсоиды...................................................................... 117 3.1.3. Датум.................................................................................. 119 3.1.4. Системы координат......................................................... 120 3.1.5. Основы пространственных систем координат........... 120 3.1.6. Проекции.......................................................................... 121 3.2. Выбор системы пространственной привязки для хранения данных ................................................................ 124 Оглавление 8
3.2.1. Плюсы и минусы использования EPSG:4326 .............. 126 3.2.2. Тип данных geography для EPSG:4326........................... 127 3.2.3. Когда нужно только отобразить карту.......................... 128 3.2.4. Охват земного шара с точным измерением расстояний........................................................................ 132 3.3. Определение пространственной системы координат исходных данных....................................................................... 136 3.3.1. Определение пространственной системы координат ......................................................................... 137 3.3.2. Когда пространственная система координат отсутствует в таблице space_ref_sys............................... 143 3.4. История поддержки PROJ в PostGIS....................................... 143 3.4.1. PROJ 4 ............................................................................... 144 3.4.2. PROJ 5................................................................................ 144 3.4.3. PROJ 6 ............................................................................... 144 3.4.4. PROJ 7 ............................................................................... 146 3.4.5. PROJ 8 и выше.................................................................. 146 Резюме ............................................................................................... 146 4 Работа с реальными данными ................................ 147 4.1. Встроенные инструменты PostgreSQL................................... 148 4.1.1. Psql...................................................................................... 149 4.1.2. pgAdmin4........................................................................... 150 4.1.3. pg_dump и pg_restore...................................................... 152 4.1.4. Скачивание файлов......................................................... 152 4.3. Извлечение файлов................................................................... 153 4.4. Импорт и экспорт шейп-файлов............................................. 155 4.4.1. Импорт с помощью shp2pgsql........................................ 155 4.4.2. Импорт и экспорт с помощью shp2pgsql-gui .............. 158 4.4.3. Экспорт с помощью pgsql2shp....................................... 160 4.5. Импорт и экспорт векторных данных с помощью ogr2ogr.....162 4.5.1. Переменные окружения в ogr2ogr................................ 163 4.5.2. Ogrinfo............................................................................... 164 4.5.3. Импорт данных с помощью ogr2ogr............................. 164 4.5.4. Экспорт данных с помощью ogr2ogr............................ 169 4.6. Запрос внешних данных через обертки сторонних данных PostgreSQL ................................................................... 173 4.6.1. Обертка сторонних данных file_fdw............................. 175 4.6.2. Обертка сторонних данных ogr_fdw ............................ 177 4.6.3. Преобразование тегов hstore в jsonb ........................... 184 4.7. Импорт растровых данных с помощью raster2pgsql ........... 185 4.7.1. Параметры командной строки Raster2pgsql ............... 185 4.7.2. Поддерживаемые форматы Raster2pgsql .................... 187 Оглавление 9
4.7.3. Загрузка одного файла с помощью raster2pgsql.......... 187 4.7.4. Сценарий для загрузки нескольких файлов и разбивки на тайлы........................................................ 188 4.7.5. Использование функций PostgreSQL для вывода растровых данных ........................................................... 189 4.8. Экспорт растровых данных с помощью GDAL .................... 191 4.8.1. Использование gdalinfo для просмотра растров ....... 191 4.8.2. Gdal_translate и gdalwarp................................................. 192 Резюме................................................................................................ 195 5 Использование PostGIS с настольными ГИС............ 197 5.1. Краткий обзор настольных средств просмотра ................... 198 5.1.1. OpenJUMP......................................................................... 199 5.1.2. QGIS................................................................................... 199 5.1.3. gvSIG .................................................................................. 200 5.1.4. Jupyter Notebook и JupyterLab........................................ 200 5.1.5. Поддержка пространственных баз данных................. 201 5.1.6. Поддержка форматов данных........................................ 203 5.1.7. Поддерживаемые веб-сервисы ...................................... 205 5.2. OpenJUMP................................................................................... 206 5.2.1. Основные возможности OpenJUMP............................. 206 5.2.2. Установка........................................................................... 206 5.2.3. Простота использования................................................ 207 5.2.4. Плагины............................................................................. 207 5.2.5. Написание сценариев..................................................... 207 5.2.6. Поддержка форматов данных........................................ 207 5.2.7. Поддержка PostGIS.......................................................... 208 5.2.8. Регистрация источников данных ................................. 208 5.2.9. Визуализация геометрических объектов PostGIS ...... 210 5.2.10. Экспорт данных ............................................................. 212 5.3. QGIS............................................................................................. 213 5.3.1. Установка QGIS ................................................................ 213 5.3.2. Использование QGIS с PostGIS ..................................... 214 5.4. GvSIG............................................................................................ 222 5.4.1. Использование gvSIG с PostGIS..................................... 223 5.4.2. Экспорт данных ............................................................... 226 5.5. JupyterLab и Jupyter Notebook.................................................. 227 5.5.1. Установка Jupyter.............................................................. 228 5.5.2. Запуск Jupyter Notebook.................................................. 229 5.5.3. Запуск JupyterLab............................................................. 230 5.5.4. Создание блокнота Python.............................................. 231 5.5.5. Магические команды ...................................................... 231 Оглавление 10