@siarheipashkevich
developer

Поиск по городам с локальной базой (MySQL) стран и городов на разных языках?

Добрый день!

На сайте появилась необходимость привязывать товары к городам (дабы потом отображать товары в зависимости от страны или города).

Для реализации были рассмотрены три варианта:
  1. Хранение всех стран, регионов и городов на поддерживаемых языках в своей базе
  2. Частичное хранение с динамическим пополнением (хранение в бд + запись новых данных)
  3. Завязка на сторонние сервисы (geonames) и хранение его идентификатора в своей базе

1 вариант - (похожий вопрос) является самым надежным и верным вариантом, но требует контроля и поддержки. Минус: увеличит размер базы (что при бэкапах может повлиять на скорость).
2 вариант - необходимо в код приложения добавлять дополниельную логику.
3 вариант - также необходима дополнительная логика на преобразования идентификаторов в названия и т.д. Если сервис перестанет работать - то и приложение перестанет корректно работать.

1) Если реализовывать первый вариант и хранить все страны и города (~2млн записей) на разных языках, не будут ли запросы педалить при поиске используя like по нескольким столбцам (разные языки), так как пользователь может вводить на разном языке город, страну?
2) Какую структуру бд лучше реализовать (есть такой вариант)? Подойдёт ли она для штатов, графств и т.д.?

Буду очень благодарен за любые советы! Спасибо )
  • Вопрос задан
  • 674 просмотра
Пригласить эксперта
Ответы на вопрос 2
@Ambrosian

1 вариант - (похожий вопрос) является самым надежным и верным вариантом, но требует контроля и поддержки.


Вам все равно придется, потому что

На сайте появилась необходимость привязывать товары к городам (дабы потом отображать товары в зависимости от страны или города).
Ответ написан
alex-1917
@alex-1917
Если ответ помог, отметь решением
sypexgeo.net/ru/features

но вообще проблема высосана из пальца.
Всего в мире 2,7 млн городов, при этом статус города назначается местными органами. Например в Дании куча городов, в которых живут 250 чел.!!!)) Вы будете туда тоже продавать?)))
По сути если и продавать по всему миру (чо-то сомневаюсь что ТС это имел ввиду)))) ), то ориентир на город с 1млн чел. Таких и три сотни не наберется.
В упомянутом выше сервисе 83000 городов!!! sypexgeo.net/ru/stats
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы