Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 02.05.2016 14:21:23

Гео-данные ( Страны / Регионы / Города )

Ввиду необходимости иметь в Проекте выбор стран/городов/регионов, пришлось написать консольный пакет, высасывающий данные с публичных методов апи ВКонтакта.

Прошу любить и жаловать https://github.com/h-zone/vk-geo-collector
Инструкция по установке - там же.

Скрипт видит 236 стран, 3 714 регионов, 1 798 149 городов этих стран и регионов.
Городов беЗ регионов при этом 10 255 (либо нет регионов, либо город === регион).

ПС:

1. ВОЗМОЖНО где-то есть ошибка, так как проскакивает инфа, что городов 2.2млн, но ВК отдаёт то, что отдаёт. И этого вполне достаточно для комфортной жизни.

2. По теме БД:
- СРАЗУ ОГОВОРЮСЬ - РАЗНИЦА СКОРОСТИ РАБОТЫ MYSQL И POSTGRESQL -- ОТ 2,5 РАЗА В ПОЛЬЗУ PGSQL.
- БД НОРМАЛИЗОВАНА (читай вики нормализация в программировании). В итоге нет колонок с именами title_ru | title_en
- ТАБЛИЦЫ - ВЕРТИКАЛЬНЫЕ, для удобства поиска.
- ПРОСТАВЛЕНЫ ИНДЕКСЫ (ЖРЁТ ПАМЯТЬ ПО НЕБОЛУЙСЯ, ЗАТО ПОИСК НЕ 20 СЕК.

РЕЗУЛЬТАТ РАБОТЫ СКРИПТА НА RU

Start at: 02.05.2016 09:19:10

Begin collecting Geo data for language Русский...
The average time execution of the script ~ 20 minutes.

Collecting Countries...
 236/236 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100%

Collecting Regions...
 3714/3714 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100%

Collecting Cities...
 1798149/1798149 [▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓] 100%

Status:
+---------+-----------+---------+---------+---------+
|         | collected | updated | new     | skipped |
+---------+-----------+---------+---------+---------+
| country | 236       | 0       | 236     | 0       |
| region  | 3714      | 0       | 3714    | 0       |
| city    | 1798149   | 0       | 1798149 | 0       |
+---------+-----------+---------+---------+---------+

Memory Usage, mb        : 15,9
Memory Usage (real), mb : 25,9

Memory Usage (peak), mb       : 41279.032
Memory Usage (peak; real), mb : 41418.752

End at:   02.05.2016 10:51:26

Изменено hzone (02.05.2016 14:23:45)

Не в сети

#2 02.05.2016 14:33:33

Re: Гео-данные ( Страны / Регионы / Города )

Голый дамп с инсертами ~ 152Mb/1 страна

Не в сети

#3 02.05.2016 15:29:29

Re: Гео-данные ( Страны / Регионы / Города )

Полезный пакет, лови звезду. ) А как качество данных и скорость работы с базой, если сравнивать с GeoIP2??

Не в сети

#4 02.05.2016 19:13:12

Re: Гео-данные ( Страны / Регионы / Города )

ну сам пойми - геоип2 = где-то там, а эта под рукой на локалхосте... разница же есть )))
а если цифрами, то пинг до штатов в среднем 170мс в одну сторону. пусть он обрабатывает запрос даже ещё 100мс, итого получается необходимый минимум потерь от 170+100+170=440мс. полсекунды + обработка на фронте или бэкэнде+фронте.
я бы сэкономил...

Не в сети

#5 02.05.2016 19:14:15

Re: Гео-данные ( Страны / Регионы / Города )

да и извините, геоип занимается определением местоположения, а мой пакет предоставляет возможность пользователю указать где он живёт. разница как бы тёплого с мягким, не?

Не в сети

#6 03.05.2016 06:13:29

Re: Гео-данные ( Страны / Регионы / Города )

hzone пишет:

да и извините, геоип занимается определением местоположения, а мой пакет предоставляет возможность пользователю указать где он живёт. разница как бы тёплого с мягким, не?

Там и там связь между IP и местоположением, насколько я понимаю. Как использовать - другое дело. В описании пакета нет четкого предназначения, отсюда и конфуз. )

Не в сети

#7 03.05.2016 11:13:33

Re: Гео-данные ( Страны / Регионы / Города )

AlexeyMezenin пишет:
hzone пишет:

да и извините, геоип занимается определением местоположения, а мой пакет предоставляет возможность пользователю указать где он живёт. разница как бы тёплого с мягким, не?

Там и там связь между IP и местоположением, насколько я понимаю. Как использовать - другое дело. В описании пакета нет четкого предназначения, отсюда и конфуз. )

не верно. с ip связи никакой.
просто статичная бд со странами/городами

Не в сети

#8 03.05.2016 11:29:03

Re: Гео-данные ( Страны / Регионы / Города )

hzone пишет:

не верно. с ip связи никакой.
просто статичная бд со странами/городами

Ок, значит не так понял.

Не в сети

#9 07.05.2016 09:15:17

duster
Откуда: Мельбурн
Сообщений: 148

Re: Гео-данные ( Страны / Регионы / Города )

Интересное совпадение - я на днях начал делать похожий пакет smile
https://github.com/MenaraSolutions/fluent-geonames

Только я хочу, чтобы вообще все возможные задачи покрывались - чтобы пакет мог "Германия" превратить в "из Германии" или "немецкий".

Вообще, сейчас во многих проектах нужны эти данные - даже странно, что нормального пакета до сих пор нет.

Не в сети

#10 07.05.2016 12:39:34

Re: Гео-данные ( Страны / Регионы / Города )

duster, захочешь - можно совместиться в один продукт

Не в сети

#11 11.05.2016 18:50:37

Aios

Re: Гео-данные ( Страны / Регионы / Города )

Улиц я так понял там нет?

#12 12.05.2016 00:15:36

Re: Гео-данные ( Страны / Регионы / Города )

нет, улиц нет.
и регионов нет, ибо вк тупо через жопу отдаёт города, если указывать регионы, ибо в этом случае некоторые регионы (а это ни мало ни много 400к штук) и есть города...

при поиске города достаточно конкатинировать area||title...

однако как возникнет острая необходимость выпущу второй зависимый пакет по апдейту городов и проставке им регионов...

Не в сети

#13 12.05.2016 00:17:20

Re: Гео-данные ( Страны / Регионы / Города )

и вообще наблюдаю, что фокс с учтановленным файрбагом и адблоком тупо не работает с сайтом вк.
разочарование...
или это все полезли качать города? smile

ОБНОВИТЕ ПАКЕТ!
ТЕПЕРЬ ВЫПЛЁВЫВАЕТ 2.2кк ГОРОДОВ !

Не в сети

#14 02.05.2018 13:15:24

Re: Гео-данные ( Страны / Регионы / Города )

доброго дня всем участникам темы smile

Мне для небольшого проекта написанного на 5laravel требуется поставить Гео. Прошу связаться со мной

Не в сети

Подвал раздела