Какого размера базу геотерминов выдержит Друпал и где ее взять

Главные вкладки

Аватар пользователя leramulina leramulina 21 июля 2012 в 17:51

Делаю сайт для путешественников и для ввода данных мне необходима трехуровневая (страна, область, город) база геотерминов на английском (чтобы все термины были на английском).
Первым делом нашла ссылки
1. http://www.maxmind.com/app/worldcities (но там проблема с областями, их не получится использовать) и
2. http://download.geonames.org/export/dump/ (тут в целом понравился файл cities1000.zip с 125846 городами) но не очень понято, где в файле брать регионы
3. http://geo.webnabor.com/?link=16 (но там по странам разрозненные файлы - не уверена, что осилю загрузку по одной стране, а также смущает, во многих городах области вообще не обозначены; например в одной только Индонезии оказалось 45146 таких "бесхозных" городов из 140968 в общей сложности) И попробовала я экспортировать размещенные там базы, последовав совету "http://www.drupal.ru/node/5146 - У меня вроде как получилось каким-то чудом) Скачал SQL базу, потом в phphmyadmin создал новую базу, залил туда, а затем экспорт в CSV сделал и уже через taxonomy_xml импортировал в словарь." И получила ошибку "MySQL Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1394311, 0, 1213426, 0, '', NULL, NULL, NULL, NULL, NULL, NULL, NULL, 'http://ww' at line 1 (C:\xampp\htdocs\base\sxd\index.php:3167)"
4. http://worldcitiesdatabase.info/# (в целом подходит и подумываю ее купить ($9.99 - $14.99), но не уверена, что Друпал осилит 2 000 000 геотерминов)
5. http://www.geodatasource.com/cities.html (бесплатная без областей, а платные очень дорогие)
6. http://www.geobytes.com/freeservices.htm (понравилась даже несмотря на опасения, что база 2003 года может быть устаревшей, но способ ее конвертации в мою базу инструкции http://epicenter.geobytes.com/MySqlInstructions.htm ни к чему не привел)
7. http://citieslist.ru (русские города на русском, видимо, если ее использовать, придется переводить русский в транслит)
8. http://www.drupal.ru/node/23269 (эта база совсем не подходит поскольку она на русском целиком)
9. http://webguruz.ru/web-developer/cities-and-countries-db/ (1,5 миллиона городов; понравилась, сконвертировала ее, но она оказалась немного неадекватной - например на Бали 11 городов и среди них нет самого большого - Денпасара)

И вот в связи с этим у меня два вопроса:
1. Какую из этих баз более целесообразно использовать?
2. Какой размер базы выдержит Drupal7?

Заранее спасибо

Комментарии

Аватар пользователя ingumsky@drupal.org ingumsky@drupal.org 21 июля 2012 в 21:11

Я когда-то интересовался тем же вопросом, но не столь глобально. С большим интересом посмотрю, какие будут советы. И спасибо вам за подборку ссылок на базы.

Аватар пользователя PVasili PVasili 22 июля 2012 в 1:21

Страны - понятно 190 в ООН и всего ~250.

Области - понятие бессмысленное(если это не Россия). У государств территориальное деление зачастую очень разное. От штатов, областей и регионов, до коммун, уездов, кибуц, повятов и т.д. + иерархия, которая зачастую меняется и по разному интерпретируется (поселение в коммуне за 5 лет может пару раз менять родителя).

Городов(и всего, где кто-то живёт как в городе) что-то около 2-3 мил.штук. Реально нужно максимум 10-20 тыс (даже для шареда это - ни о чём ).

Обдумайте задачу получше...
Как быть, если данные меняются (изменили название города)?
Какой город человеку вводить(если это профиль) если он живёт в 3-4 местах или переезжает раз в пол года?
Так ли нужна база всего мира? Вам реально нужны все индийские и китайские деревни (imho их >60% будет:) )?

Не упоминалось из баз:
- GeoNames
- NGA GEOnet Names Server
- TGN
Может лучше использовать сервисы google или yahoo?
Ну и платное: mysql world database, GlobixData

Для России - последняя версия КЛАДР-а. На нем завязана фискала и налоги, так что он обновляется оперативно Smile

Аватар пользователя leramulina leramulina 22 июля 2012 в 4:12

PVasili wrote:
Страны - понятно 190 в ООН и всего ~250.

Области - понятие бессмысленное(если это не Россия). У государств территориальное деление зачастую очень разное. От штатов, областей и регионов, до коммун, уездов, кибуц, повятов и т.д. + иерархия, которая зачастую меняется и по разному интерпретируется (поселение в коммуне за 5 лет может пару раз менять родителя).

Городов(и всего, где кто-то живёт как в городе) что-то около 2-3 мил.штук. Реально нужно максимум 10-20 тыс (даже для шареда это - ни о чём ).

Обдумайте задачу получше...
Как быть, если данные меняются (изменили название города)?
Какой город человеку вводить(если это профиль) если он живёт в 3-4 местах или переезжает раз в пол года?
Так ли нужна база всего мира? Вам реально нужны все индийские и китайские деревни (imho их >60% будет:) )?

Не упоминалось из баз:
- GeoNames
- NGA GEOnet Names Server
- TGN
Может лучше использовать сервисы google или yahoo?
Ну и платное: mysql world database, GlobixData

Для России - последняя версия КЛАДР-а. На нем завязана фискала и налоги, так что он обновляется оперативно :)

Мне как раз очень нужны области. Потому что турист, поехавший на Бали, например, будет искать информацию именно о Бали, а не об Индонезии в целом и не о крошечных городках, которые там в бешеном количестве. А Бали - это как раз регион.

Если данные меняются (что случается не так массово и часто) пользователь просто может написать об этом. И суппорт внесет изменения в словарь.

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

Город вводить текущий. Тот в котором турист находится сейчас.

Сейчас попробую посмотреть сервисы, которые вы указали http://developer.yahoo.com/geo/geoplanet/guide/index.html и http://developer.yahoo.com/geo/geoplanet/guide/index.html, но мне надо чтобы терминами из словаря маркировались не только профайлы, но и блоги, и фотографии и видео на сайте. Не знаю, получится ли с этими сервисами так же.

Аватар пользователя imarat imarat 22 июля 2012 в 8:06

я импортировал кладр, не знаю сколько там получилось терминов, 30-40 к наверно, таксономия сдохла, сайт был портального типа, довольно много модулей, на ит-патруль

Аватар пользователя leramulina leramulina 22 июля 2012 в 15:07

RxB wrote:
"imarat" wrote:
я импортировал кладр,

Регионы + населённые пункты - уже под 200к выходит.

Спалю тему https://github.com/dansamara/real_raxonomy, пытливые умы поймут к чему я

Эх, жалко, что для Drupal 6. Я уже собралась перебираться на 7-ку.

Аватар пользователя imarat imarat 22 июля 2012 в 12:28

"RxB" wrote:
Регионы + населённые пункты - уже под 200к выходит.

не, столько точно не было, я ша чет сомневаться начал, то ли кладр,
то ли это была база с сайта почты россии

Аватар пользователя leramulina leramulina 24 июля 2012 в 17:35

Определение по IP конечно прекрасно. Но мое местонахождение по IP обычно определяют с ошибкой в 400 километров. И в данном случае Сайпекс Гео тоже промахнулся километров этак на 300.

Аватар пользователя ingumsky@drupal.org ingumsky@drupal.org 25 июля 2012 в 15:09

Да, они не идеальны, конечно, потому что IP часто приписан к одному месту, а пользуются этим IP из другого. Я просто планирую использовать это так: определять местоположение пользователя по IP, но предлагать ему подправить его вручную, если определилось неправильно.

Аватар пользователя Crea Crea 6 января 2013 в 16:41

Тоже возникла задача нормальной геопривязки пользователей и контента. Стало понятно, что система должна иметь GUID для однозначной идентификации объектов.
Посмотрел на Geoplanet от Yahoo и Geonames (оба имеют GUID).
Geoplanet когда-то предоставлял дампы для скачивания. Теперь доступен только веб-сервис (да и дампы были сильно кастрированные - например, без координат). Сразу минус.
Geoplanet сделан на вид более качественно (более продуманный сайт, документация и т.д.), но по полноте информации существенно уступает другим источникам информации. Например, я не нашел в Geoplanet такие города, как Вышний Волочек, Гусь-Хрустальный - далеко не деревни. После такого промаха Geoplanet сразу вычеркнул - нафиг нужны его GUID если база объектов неполноценная ?

Итого остановился на Geonames. Правда вариант использования через API - неудачный, т.к. лимиты для бесплатных аккаунтов слишком низкие. Да и не хочется зависеть от стороннего сервиса.
Пишу модуль для локальной работы с базой Geonames. Вылезают проблемы с дублями и некорректными названиями.

На мой взгляд, при использовании грамотно построенной системы GUID таксономия не нужна вообще - нужно маппить GUID напрямую.

Хорошие статьи по теме:
http://www.cosmocode.de/en/blog/schoenborn/2010-01/24-free-geo-data-solu... (часть инфы устарела)
http://blog.newsplore.com/2011/03/23/a-comparison-of-places-apis
https://www.quora.com/What-are-the-pros-and-cons-of-each-Places-API