2013-05-29 3 views
7

Я планировал использовать API-интерфейс geonames, но на самом деле кажется более разумным использовать географические имена локально, а не использовать их веб-API. Поэтому мой вопрос: кто-нибудь знает, как локально взаимодействовать с данными geonames?Использование службы geonames локально

Нужно ли вручную импортировать его в базу данных, а затем ссылаться на него как на обычную БД?

ответ

6

Да, вам нужно будет вручную импортировать базу данных, если вы хотите запросить базу данных локально.

1 - Если вы планируете использовать MySQL вы можете следить за объяснения с этого поста Importing data from geonames.org database into MySQL DB

2 - Если структура таблицы не в курсе Вы можете также обратиться на форум GeoNames: http://forum.geonames.org/gforum/posts/list/732.page

3 - После создания таблиц, следующих за данной структурой, вы можете использовать LOAD DATA INFILE или LOAD DATA LOCAL INFILE для массового импорта данных из файлов CSV.

4 - Ввоз таблицы allcountries может занять более 10 минут на месте. Возможно, вам лучше создать свои индексы перед импортом данных.

(A shell Script также доступна, если вы знакомы с командой)

+0

Большое спасибо – Jimmy

+1

Насколько точны база данных города, я думаю о ее использовании. Я не против платить за что-то более точное, я просто должен указывать в правильном направлении. – David

+1

Городская база данных точна даже для небольших. Существует больше альтернатив, предоставляемых проектом geohack, например http://tools.wmflabs.org/geohack/geohack.php?pagename=New_York_City¶ms=40.7127_N_74.0059_W_type:city_region:US-NY – RafaSashi