Pull to refresh

Импортируем открытые гео данные из OpenGeoDB в Elasticsearch

Reading time 12 min
Views 9.1K
NoSQL *
Tutorial
Translation
Задумывались ли вы когда-нибудь, найдя аккуратную публичную базу данных, как хорошо было бы включить её в своё приложение, чтобы оптимизировать какую-нибудь функциональность, пусть даже незначительно? Конечно же да! Этот пост расскажет как, использовать Logstash для превращения внешнего набора данных в желаемый формат, проверить результат в Kibana и убедиться что данные правильно индексированы в Elasticsearch так, что могут быть использованы при больших нагрузках на живых серверах.

Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Comments 4

Чем PostgreSQL лучше других SQL баз данных с открытым исходным кодом. Часть 1

Reading time 8 min
Views 274K
Website development *MySQL *PostgreSQL *SQL *
Translation
Сегодня давайте поговорим о преимуществах Postgres перед другими системами с открытым кодом. Эту тему мы обязательно раскроем более подробно на PG Day'16 Russia, до которой осталось всего два месяца.

Возможно, вы спрашиваете себя: «Почему PostgreSQL?» Ведь есть и другие варианты реляционных баз данных с открытым исходным кодом (в рамках этой статьи мы рассматривали MySQL, MariaDB и Firebird), так что же Постгрес может предложить такого, чего нет у них? В слогане PostgreSQL заявляется, что это «Самая продвинутая база данных с открытым исходным кодом в мире». Мы приведем несколько причин, почему Постгрес делает такие заявления.

В первой части этой серии мы поговорим о хранении данных — модели, структуре, типах и ограничениях размера. А во второй части больше сфокусируемся на выборке и манипуляциях с данными.


Читать дальше →
Total votes 55: ↑46 and ↓9 +37
Comments 86

Machine Learning for your flat hunt. Part 2

Reading time 9 min
Views 1.5K
Python *Programming *Data Mining *Data visualization *Machine learning *


Have you thought about the influence of the nearest metro to the price of your flat? 
What about several kindergartens around your apartment? Are you ready to plunge in the world of geo-spatial data?


The world provides so much information…



Read more →
Total votes 4: ↑4 and ↓0 +4
Comments 0

Как визуализировать и анимировать (геофизические) модели

Reading time 3 min
Views 5.9K
Data visualization *
Sandbox

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


Также смотрите другие статьи цикла:



Это не пошаговое руководство по визуализации трех- и четырехмерных данных, а подход к тому, как и чем это можно сделать и, притом, сделать качественно. Вероятно, многие из нас бывали в ситуациях, когда уже есть подготовленные с большим трудом данные, которые необходимо визуализировать, но неизвестно, как же это сделать так, чтобы не испортить все впечатление от выполненной работы. Существует много коммерческого программного обеспечения для этих целей, но мы будем рассматривать исключительно Open Source программы.


Tambora Volcano, Indonesia

Total votes 20: ↑19 and ↓1 +18
Comments 9

Как визуализировать и анимировать (геофизические) модели. Показываем исходные данные

Reading time 4 min
Views 3.5K
Open source *Data visualization *

Также смотрите другие статьи серии "Как визуализировать и анимировать (геофизические) модели":



В зависимости от проекта и масштаба данных мы можем выбрать различные варианты визуализации — и все же, для любого масштаба данных важным является именно позволить наглядно оценить этот масштаб. К примеру, на региональном уровне отображение на глобусе Земли позволит легко понять как масштаб, так и расположение изучаемой территории. Вот мы и займемся отображением данных на глобусе.


Earth Observation Data on the Globe


Слева направо: EMAG2 Earth Magnetic Anomaly, Sandwell and Smith Free Air Gravity Grid, GEBCO Gridded Bathymetry Data.

Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Comments 7

Как визуализировать и анимировать (геофизические) модели. 3D анимация и визуализация 4D данных

Reading time 2 min
Views 2.9K
Open source *Data visualization *Computer Animation *

Также смотрите другие статьи серии "Как визуализировать и анимировать (геофизические) модели":



Для визуализации анимированных 3D результатов без симуляции реальных процессов используются различные эффекты прозрачности и движения. При выполнении 3D симуляции — моделировании динамических процессов — нам необходимо уметь показывать 4D результаты. Когда анимированный результат визуально достаточно близок к результату симуляции, его нередко так и называют; в любом случае, во избежание ошибочной трактовки результатов необходимо ясно указывать используемые для визуализации данные и методы.


Tambora Volcano Simulation, Sumbawa, Indonesia

Total votes 5: ↑5 and ↓0 +5
Comments 2

Как визуализировать и анимировать (геофизические) модели. Информативность визуализации

Reading time 3 min
Views 1.4K
Open source *Data visualization *

Также смотрите другие статьи серии "Как визуализировать и анимировать (геофизические) модели":



Наглядная визуализация позволяет быстро понять суть работы и полученных результатов, но, случается, — понять неправильно. Как однозначно продемонстрировать результаты и, притом, избежать груды подтверждающих формул и ссылок на другие работы — так, чтобы все было визуально очевидно (в хорошем смысле слова)?


Build Super-resolution Gravity from GGMplus Free-Air Gravity Anomaly enhanced by SRTM topography


На картинке выше представлены результаты улучшение гравитационных данных GGMplus Free-Air Gravity Anomaly 200м с помощью рельефа SRTM 30м техникой переноса компонент пространственного спектра.

Читать дальше →
Total votes 3: ↑3 and ↓0 +3
Comments 0

Как визуализировать и анимировать (геофизические) модели. Воксельные модели и сетчатые поверхности

Reading time 2 min
Views 2.5K
Data visualization *

Также смотрите другие статьи серии "Как визуализировать и анимировать (геофизические) модели":



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


3D Geological Modeling

Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Comments 0

Почему в 21 веке геофизики верят в теорию плоской Земли?

Reading time 3 min
Views 10K
History of IT Popular science Physics

Значительная часть геофизических публикаций в "солидных" журналах используют широко известную поправку к гравитационным данным — редукцию Буге. И все глобальные модели гравики ее используют. Наверное, это что-то очень важное и основано на детально проработанной теории? Давайте посмотрим, как можно графически проиллюстрировать смысл этой поправки. На рисунке показана идеальная плоскопараллельная пластина радиусом 200км, применяемая для вычисления поправки Буге согласно определению:



Рисунок из книги К.Ф. Огородникова «На чем Земля держится», 1953 г.

Читать дальше →
Total votes 45: ↑23 and ↓22 +1
Comments 32

OpenStreetMap Public Dataset на Google Cloud Platform с BigQuery SQL. Классификатор слоев OSM

Reading time 7 min
Views 2.7K
Open source *Programming *OpenStreetMap *Big Data *Popular science

В связи с растущим публичным интересом к анализу и визуализации различных пространственных моделей (например, для изучения распространения вирусов) мне вспомнился один из проектов, которыми я занимался на фриланс-платформе Upwork. Эта работа выполнена по заказу корпорации Google и заключалась в создании общедоступного датасета OpenStreetMap (OSM) на Google Cloud Platform для работы с ним с помощью Google BigQuery и создании некоторых примеров анализа данных OpenStreetMap (смотрите Python Jupyter Notebooks в репозитории). Моей частью проекта была работа с данными; кто сразу хочет посмотреть код — добро пожаловать в мой гит-репозиторий bigquery-openstreetmap. Далее я расскажу, в чем заключаются преимущества созданного датасета (хинт: реализован и доступен классификатор слоев на SQL) и как его можно использовать.


Обращение к читателям: убедительная просьба избежать обсуждения Upwork в частности и фриланса в целом в комментариях, ну надоело же, право слово… разные там проекты есть.


Road Usage Patterns analysis, Boston Area


Результаты анализа дорожной сети города Бостона по данным OpenStreetMap. Красным цветом обозначены хайвеи с высоким Betweenness centrality (bc), зеленым — улицы с высоким bc, желтым — хайвей с низким bc, серым — улицы с низким bc.

Total votes 9: ↑9 and ↓0 +9
Comments 11

Гидродинамическое моделирование (CFD) на рельефе с помощью MantaFlow и визуализация результатов в ParaView

Reading time 5 min
Views 5.9K
Programming *Geoinformation services *Mathematics *Data visualization *Popular science

Дисциплина Computational fluid dynamics(CFD) или, на русском языке, Вычислительная гидродинамика изучает поведение различных потоков, в том числе вихревых. Это и моделирование цунами, и лавовых потоков, и выбрасываемых из жерла вулкана камней вместе с лавой и газами и многое другое. Посмотрим, как можно использовать совместно MantaFlow и ParaView, реализовав на встроенном в MantaFlow языке Python необходимые функции конвертации данных. Как обычно, исходный код смотрите в моем GitHub репозитории: MantaFlow-ParaView.


Tambora Volcano Plume Simulation


Визуализация шлейфа извержения вулкана. Мы уже видели эту картинку в серии статей про визуализацию в ParaView Как визуализировать и анимировать (геофизические) модели, обсуждали создание геологических моделей в статье Методы компьютерного зрения для решения обратной задачи геофизики, а теперь поговорим и о моделировании дыма.

Total votes 13: ↑13 and ↓0 +13
Comments 15

Геология XXI века: от реальности к виртуальности

Reading time 10 min
Views 1.9K
Open source *Programming *Geoinformation services *Data visualization *Popular science

Ранее в статьях мы уже обсудили доступные данные (результаты наземных и спутниковых гравитационных и магнитных измерений, ортофото и космические снимки, цифровые модели рельефа), теоретические подходы и методы обработки (интерферометрия, построение обратных геофизических моделей), обработку данных в ParaView (выделение изоповерхностей) и Blender (высококачественная визуализация и анимация подготовленных в ParaView данных) и даже посмотрели Python Jupyter notebook с вычислениями и визуализацией моделей (включая выделение изоповерхностей средствами библиотеки VTK). Осталось построенные геотермальные изоповерхности конвертировать в формат модели дополненной реальности и получить геотермальную модель в дополненной реальности (AR). Как всегда, модель доступна на GitHub в репозитории ParaView-Blender — в виде исходных STL/PLY файлов и проектов Blender, плюс там же лежат скрипты Google Earth Engine (GEE) для получения композитных снимков Landsat 8 и Sentinel-2 и скрипты для конвертации AR моделей.



AR Модель геотермального резервуара Лахендонг, полуостров Минахаса, Северный Сулавеси, Индонезия Замеры температуры по скважинам обозначены цветными дисками — синим 0-150°C (далеко от резервуара), белым 150-250°C (переходная область вблизи от резервуара), красным 250-350°C (внутри геотермального резервуара).

Читать дальше →
Total votes 6: ↑6 and ↓0 +6
Comments 32

Построение достоверных геологических моделей

Reading time 6 min
Views 2.9K
Programming *Geoinformation services *Mathematics *Data visualization *Popular science

После публикации серии статей про построение геологических моделей пришло время обсудить, скажем прямо, самое интересное — а насколько эти модели достоверны? Несомненно, все представленные ранее модели интересны и полезны — землетрясения, вулканы, золотые месторождения и другие. Теперь покажем, что они являются действительными геологическими моделями. На самом деле, мы уже все доказательства упоминали, но сегодня обсудим подробно. Теоретическая часть и история метода приведены в статье Методы компьютерного зрения для решения обратной задачи геофизики, на гитхабе опубликован Python ноутбук 3D Density Inversion by Circular Hough Transform (Focal Average) and Fractality Index с оценкой достоверности моделирования, и я даже написал техническую статью непосредственно об используемых там вычислительных методах Вычислительная геология и визуализация: пример Python 3 Jupyter Notebook, не касаясь геологического смысла выполняемых вычислений. Кроме того, в статье Геология XXI века как наука данных о Земле модель землетрясения заверена с помощью результатов спутниковой интерферометрии.


Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Comments 2

Храним отметки высот в XYZ tiles

Reading time 4 min
Views 1.7K
Geoinformation services *
Sandbox

Цифровые модели поверхности и рельефа (ЦМП/ЦМР) – являются важной и неотъемлемой составляющей геоинформационных систем (ГИС). Они являются источником высотной информации и решают задачу определения высоты Z в указанной точке с координатами XY на местности. ЦМП и ЦМР могут быть как регулярными, так и нерегулярными (чаще всего их делят по формату хранения высотных отметок (растровые и векторные). Растровые ЦМП/ЦМР чаще всего поставляются в виде геопривязанного растра с типом пиксельных значений позволяющих хранить дробные отрицательные числа (32-bit float). Повсеместная реализация и внедрение информационных сервисов (прежде всего онлайн), делает необходимым отображение пользователям высотной информации в интерактивном режиме (определение Z при перемещении курсора XY) и ставит перед разработчиком задачу донесения этой информации. Если в случае с векторными данными, мы можем отобразить высотный пикет в координатах XY и показать записанный ему атрибут Z, то с растровыми (регулярными) моделями высот такое не выйдет, иначе мы должны хранить атрибут на каждый пиксель нашего растра (так никто не делает) или быть готовыми его рассчитать и вернуть пользователю с сервера. В принципе, эта задача решена показом на растровых тайлах высотных отметок или горизонталей в виде рисунка, но такой способ отображения высот не интерактивен и несет лишнюю нагрузку на картографическую составляющую тайлов.

Читать далее
Total votes 4: ↑3 and ↓1 +2
Comments 4

Увеличение площади полигона за счет второго полигона

Reading time 6 min
Views 2.5K
Python *Geoinformation services *Mathematics *
Sandbox

Когда мы расставляем мебель в комнате, мы ориентируемся на габаритные размеры мебели и фурнитуры, а не на их занимаемую площадь, и мебель часто квадратной формы. С полигонами на карте дело обстоит немного иначе, они могут быть произвольной формы, но должны иметь определенную площадь, а задача такая же как и с мебелью - уместить всё в комнату (участок). Когда полигоны квадратные, то рассчитать нужное изменение длины ребра для получение желаемой площади, не так и сложно. С полигонами сложной формы всё не так просто, но и это тоже не проблема, ведь можно методом тыка подобрать нужную площадь. Проблема возникает когда количество полигонов возрастает. Пример: на изменение полигона сложной формы уходит 5 минут (грубо говоря), но нам нужно изменить 15 полигонов, считаем и получаем 75 минут. За 75 минут можно сделать гору полезных дел, а всего было отредактировано 15 полигонов. Если полигоны придется менять заново? вдруг нужно их будет разбить на другую площадь? Вот была бы такая программа, которая сама бы изменяла полигон и добавляла бы нужную площадь.

Читать далее
Total votes 4: ↑4 and ↓0 +4
Comments 3

«Разделяй и властвуй» для OpenStreetMap мира в PostgreSQL

Level of difficulty Medium
Reading time 28 min
Views 5.8K
PostgreSQL *Java *OpenStreetMap *Geoinformation services *

Продолжу рассказ "Как поместить весь мир в обычный ноутбук: PostgreSQL и OpenStreetMap" секретами о геоданных OpenStreetMap, на которых множество компаний построили бизнес но не все делятся подробностями... Что ж, сегодня приоткроем завесу!

База данных в PosgreSQL после загрузки из дампа занимает больше 587 GB. Это уже по меркам СУБД большая база и одна огромная таблица на каждый тип объектов не сработает. Для управляемости такие данные надо секционировать, хорошо что PostgreSQL поддерживает декларативное секционирование данных. Осталось лишь придумать как разделить географические данные. После поисков и сравнений мне на помощь пришла иерархическая гексагональная геопространственная система индексирования H Все это было реализовано в моем проекте openstreetmap_h3 для быстрой обработки и загрузки мира в базу.

Читать далее
Total votes 27: ↑27 and ↓0 +27
Comments 0

Roads and building density in North America. 100GB geodata processing OSM data in PostgreSQL

Reading time 15 min
Views 980
Open source *PostgreSQL *OpenStreetMap *
Translation

Today I will discover America to you based on OpenStreetMap data in PostgreSQL15/PostGIS and my project openstreetmap_h3. Let's run the query and compare its execution time on the Citus column store in PostgreSQL and on the standard 100GB database partitioned by H3 geoindex.

We will find the top15 buildable locations in North America and the total length of roads, as well as their type and surface. I will not overload the publication with program logs, let's focus on the data! You can easily repeat all requests yourself on your laptop/computer.

Read more
Rating 0
Comments 0