База географических названий GeoNames: различия между версиями

Материал из GIS-Lab
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
 
(не показано 8 промежуточных версий 2 участников)
Строка 16: Строка 16:
==Получение данных==
==Получение данных==


Данные доступны бесплатно для [http://www.geonames.org/export/#dump прямого скачивания] в виде текстовых файлов, кодировка UTF-8, На момент написания данной статьи: размер запакованного файла 7.5 Мб, размер распакованного файла 31 Мб, генерируются из основной базы данных ежедневно.
Исходно данные доступны бесплатно для [http://www.geonames.org/export/#dump прямого скачивания] в виде текстовых файлов, кодировка UTF-8. Примерный размер запакованного файла (РФ) 8 Мб, распакованного файла 49.9 Мб, генерируются из основной базы данных ежедневно.


Скачать срез данных на 21 марта 2009 г.: формат ESRI shape: [http://gis-lab.info/data/geonames/geonames-shp-win-russia.7z win1251], [http://gis-lab.info/data/geonames/geonames-shp-utf8-russia.7z utf8], исходная БД: [http://gis-lab.info/data/geonames/geonames-src-win-russia.7z win1251], [http://gis-lab.info/data/geonames/geonames-src-utf8-russia.7z utf8].
Получить подготовленные данные можно выбрав одну из ссылок в таблице. Если вы работаете в ГИС скорее всего вам нужны shape-файлы в кодировке UTF-8. Нажав на дату, можно посмотреть историю обновлений.
 
{{#widget:Iframe
|url=http://gis-lab.info/data/geonames/scripts/geonames_counts.php
|width=700
|height=255
|border=0
}}


Также возможно использование веб-сервисов GeoNames. GeoNames предоставляет целый ряд [http://www.geonames.org/export/#ws веб-сервисов], позволяющих работать с его данными и получать результаты в форматах XML и JSON. Каждый объект базы GeoNames имеет свой стабильный URI.
Также возможно использование веб-сервисов GeoNames. GeoNames предоставляет целый ряд [http://www.geonames.org/export/#ws веб-сервисов], позволяющих работать с его данными и получать результаты в форматах XML и JSON. Каждый объект базы GeoNames имеет свой стабильный URI.
Строка 26: Строка 33:
==Данные на РФ==
==Данные на РФ==


Срез данных на 21 марта 2009 г. содержит 263821 объекта на территории РФ. Из них:
Срез данных на 20 августа 2012 г. содержит 345089 (263821 на 03.2009) объекта на территории РФ. Из них:


* 160197 названий населенных пунктов (PPL)
* 188247 названий населенных пунктов (PPL)
* 34601 названий ручьев (STM)
* 53120 названий ручьев (STM)
* 11699 названий озер (LK)
* 15364 названий озер (LK)
* 6456 названий высот (MT)
* 8938 названий высот (MT)
* 4764 названий ЖД станций (RSTN)
* 5407 названий ЖД станций (RSTN)
* и т.д.
* и т.д.


Из 160197 объектов типа населенный пункт, альтернативное (включая кириллическое, т.е. реально названий на кириллице меньше) название имеют 77995 (49%) объектов. Данные о населении имеют 4011 пунктов (3%).
Из 188247 объектов типа населенный пункт, альтернативное (включая кириллическое, т.е. реально названий на кириллице меньше) название имеют 165887 (88%, 49% на 03.2009) объектов. Данные о населении имеют 4399 пунктов (2%).


==Поля базы данных==
==Поля базы данных==


{| cellspacing="0" border="1"
{| class="wikitable"
| '''Параметр'''
| '''Параметр'''
| '''Описание'''
| '''Описание'''
Строка 69: Строка 76:
|-
|-
| feature class
| feature class
|
| http://www.geonames.org/export/codes.html
http://www.geonames.org/export/codes.html
| varchar(10)
| varchar(10)
|-
|-
| feature code
| feature code
|
| http://www.geonames.org/export/codes.html
http://www.geonames.org/export/codes.html
|
|
|-
|-
Строка 123: Строка 128:
|}
|}


Соответственно, для импорта текстового файла GeoNames с заголовком, можно добавить в начало этого файла следующую строку.
==Импорт==
Подробно импорт данных Geonames в ESRI Shape описан в [http://gis-lab.info/qa/csv2shp.html отдельной статье]. Здесь приведены полезные настройки, которые могут помочь сэкономить время.
 
Для импорта текстового файла GeoNames с заголовком, можно добавить в начало этого файла следующую строку.
 
<pre>geonameid name asciiname altnames lat long fclass fcode ccode cc2 acode1 acode2 acode3 acode4 pop elev gtopo tz mdate</pre>
 
Содержание файла csvt:
<pre>"integer","string(255)","string(255)","string(255)","Real(10.7)","Real(10.7)","string(10)","string(10)","string(2)","string(60)","string(20)","string(80)","string(20)","string(20)","integer","integer","integer","string(255)","string(255)"</pre>


geonameid name asciiname alternatenames lat long fclass fcode ccode cc2 acode1 acode2 acode3 acode4 pop elev gtopo tz mdate
Содержание файла vrt:
<pre><OGRVRTDataSource>
    <OGRVRTLayer name="ru">
        <LayerSRS>WGS84</LayerSRS>
        <SrcDataSource>ru.csv</SrcDataSource>
        <GeometryType>wkbPoint</GeometryType>
        <GeometryField encoding="PointFromColumns" x="long" y="lat"/>
    </OGRVRTLayer>
</OGRVRTDataSource></pre>


==Недостатки==
==Недостатки==
Строка 135: Строка 156:
* отсутствия возможность отфильтровать альтернативный названия на латинице от кириллических
* отсутствия возможность отфильтровать альтернативный названия на латинице от кириллических
* большое количество ошибок и устаревшей информации
* большое количество ошибок и устаревшей информации
* использование двойных кавычек в названиях НП, что приводит к ошибкам при импорте данных (необходима предварительная обработка, чтобы от них избавиться)





Текущая версия от 02:50, 23 августа 2012

Эта страница опубликована в основном списке статей сайта
по адресу http://gis-lab.info/qa/geonames.html


Сводные данные и примеры для скачивания

GeoNames - свободно распространяемая географическая база данных имен объектов (топонимики). Лицензия - Creative Commons Attribution. На настоящий момент содержит более 260 тысяч точечных объектов по территории России и более чем 8 миллионов по всему миру. Все объекты разделены на 9 классов (однобуквенный код) или 645 подклассов (2-5 буквенный код) (полный список):

  • административное деление (A)
  • гидросеть (H): каналы, заливы, озера, колодцы, моря
  • территории (L): парки, поля, военные базы, охраняемые территории
  • населенные пункты (P)
  • дорожная сеть (R)
  • точки (S): здания, банки, мосты, остановки транспорта, пересечения, фермы, заводы
  • природные объекты (T): пляжи, цирки, пики, острова
  • подводные объекты (U): каньоны, впадины, рифы
  • леса (V): отдельные деревья, массивы, плантации, степные участки.

Получение данных

Исходно данные доступны бесплатно для прямого скачивания в виде текстовых файлов, кодировка UTF-8. Примерный размер запакованного файла (РФ) 8 Мб, распакованного файла 49.9 Мб, генерируются из основной базы данных ежедневно.

Получить подготовленные данные можно выбрав одну из ссылок в таблице. Если вы работаете в ГИС скорее всего вам нужны shape-файлы в кодировке UTF-8. Нажав на дату, можно посмотреть историю обновлений.

{{#widget:Iframe |url=http://gis-lab.info/data/geonames/scripts/geonames_counts.php |width=700 |height=255 |border=0 }}

Также возможно использование веб-сервисов GeoNames. GeoNames предоставляет целый ряд веб-сервисов, позволяющих работать с его данными и получать результаты в форматах XML и JSON. Каждый объект базы GeoNames имеет свой стабильный URI.

Помимо англоязычных названий, GeoNames собирает данные на разных языках, сведения о высоте, населении и т.п. из различных источников. Все координаты хранятся в WGS84 (World Geodetic System 1984). Пользователи могут редактировать и добавлять новые названия с использованием вики-интерфейса.

Данные на РФ

Срез данных на 20 августа 2012 г. содержит 345089 (263821 на 03.2009) объекта на территории РФ. Из них:

  • 188247 названий населенных пунктов (PPL)
  • 53120 названий ручьев (STM)
  • 15364 названий озер (LK)
  • 8938 названий высот (MT)
  • 5407 названий ЖД станций (RSTN)
  • и т.д.

Из 188247 объектов типа населенный пункт, альтернативное (включая кириллическое, т.е. реально названий на кириллице меньше) название имеют 165887 (88%, 49% на 03.2009) объектов. Данные о населении имеют 4399 пунктов (2%).

Поля базы данных

Параметр Описание Формат
geonameid идентификатор записи в БД geonames int
name название объекта (utf8) varchar(200)
asciiname название объекта (ascii) varchar(200)
alternatenames альтернативные названия, разделитель - запятая varchar(5000) для SQL Server
latitude широта в десятичных градусах (wgs84)
longitude долгота в десятичных градусах (wgs84)
feature class http://www.geonames.org/export/codes.html varchar(10)
feature code http://www.geonames.org/export/codes.html
country code 2-символьный код страны согласно ISO-3166 2 characters
cc2 альтернативный код страны, разделитель - запятая, 2-символьный согласно ISO-3166 60 characters
admin1 code fipscode (в будущем будет изменен на isocode), isocode для США и Швейцарии, см. admin1Codes.txt для обозначений кодов varchar(20)
admin2 code код для административного деления второго уровня, county в США, см. admin2Codes.txt varchar(80)
admin3 code код для административного деления третьего уровня varchar(20)
admin4 code код для административного деления четвертого уровня varchar(20)
population integer
elevation в метрах integer
gtopo30 средняя высота по области 30'x30' (900мx900м) в метрах integer
timezone идентификатор часового пояса (см. timeZone.txt)
modification date date of last modification in yyyy-MM-dd format

Импорт

Подробно импорт данных Geonames в ESRI Shape описан в отдельной статье. Здесь приведены полезные настройки, которые могут помочь сэкономить время.

Для импорта текстового файла GeoNames с заголовком, можно добавить в начало этого файла следующую строку.

geonameid	name	asciiname	altnames	lat	long	fclass	fcode	ccode	cc2	acode1	acode2	acode3	acode4	pop	elev	gtopo	tz	mdate

Содержание файла csvt:

"integer","string(255)","string(255)","string(255)","Real(10.7)","Real(10.7)","string(10)","string(10)","string(2)","string(60)","string(20)","string(80)","string(20)","string(20)","integer","integer","integer","string(255)","string(255)"

Содержание файла vrt:

<OGRVRTDataSource>
    <OGRVRTLayer name="ru">
        <LayerSRS>WGS84</LayerSRS>
        <SrcDataSource>ru.csv</SrcDataSource>
        <GeometryType>wkbPoint</GeometryType>
        <GeometryField encoding="PointFromColumns" x="long" y="lat"/>
    </OGRVRTLayer>
</OGRVRTDataSource>

Недостатки

Главным недостатком данных является использование в качестве источника топонимики картографической базы Google, что ведет к распространению копирайтов Google и на эти данные. В связи с этим данные не рекомендуется использовать в таких проектах, как OpenStreetMap (подробнее).

К другим недостаткам можно отнести:

  • отсутствия возможность отфильтровать альтернативный названия на латинице от кириллических
  • большое количество ошибок и устаревшей информации
  • использование двойных кавычек в названиях НП, что приводит к ошибкам при импорте данных (необходима предварительная обработка, чтобы от них избавиться)


Ссылки по теме