Хочется узнать, кто-нибудь использовал когда-либо в своих проектах (для веба, в частности) базу данных КЛАДР?
И если использовали, то разбивали ли ее на таблицы или нет?
Если ее развернуть по их описанию, то получается такая структура сущностей:
Регион->Район->Город->Населенный пункт
Но, так как делается, для сайта по торговле, то в бд конечное объявление должно быть привязано либо к одному конкретному населенному пункту, будь то город, село или что-то еще.
Стоит ли при разбиении совмещать последние две таблицы в одну (город и населенный пункт)? И что делать с городами, которые сами в себя могут включать другие населенные пункты, не будучи привязанными к району (например, Краснодар в Краснодарском крае или Майкоп в Адыгее)?
Буду рад любому ответу)
З.Ы. Уже возникли вопросы, поэтому скажу сразу — база данных MySQL, и сервис будет достаточно высоконагруженный, следовательно, скорость запросов приоритетна)
А еще, если вдруг кто знает, как организована, например, база «вконтакте» или «мой круг»? Судя по наличию городов, у контакта точно (хотя, может быть, и всего лишь частично) используется база КЛАДР, но вот как они ее организовали?
В кладре ОДНА таблица на все регионы, территории, города и населенные пункты, отличие лишь в значении столбца code. Улицы — еще одна таблица. Ну и еще важная — сокращения. Зачем это резать на кучу отдельных таблиц, если и с такой архитектурой отлично можно работать? Если есть вопросы по работе с кладром — спрашивайте.
Использовал, но не резал.
Как раз проблема с городами без областей и под.городах у городов, не позволили «красиво» разбить. Ни когда не знаешь, к какому уровню относится нас. пункт.
Но на практике оказалось, что и с такой, одно табличной структурой, довольно просто работать.
Главное — ввести ссылку на «уровень выше», а то в коде довольно проблемно с кодами территории оперировать.
Все объекты привязаны к определенному населенному пункту, соответственно, может выводиться, например, Россия, Краснодарский край, Краснодар. Улица и тд вводится ручками по желанию