таблица аптекpharmaciesid, name, adress**, district, metro, city, work_start*, work_end*
таблица лекарстmedicinesid, name, vendor (или vendor_id***), sku (и/или какой др нормативный артикул
и связующая таблицаmedicines_pharmaciesmedicines_id, pharmacies_id, price, updated_at, count
* Для аптек я указал время начала работы и время конца, но в принципе можно сделать просто поле
all_day
с булевым значением (1 или 0) для указания крулгосуточно или нет
** Может понадобиться разбивка адреса на детальные составляющие или просто хранить КЛАДР какой-нибудь... тут по-разному можно сделать
***Если в системе нужен отдельный производитель(например для поиска по производителю), то у лекарств будет не vendor, а vendor_id и будет отдельная таблица
vendors с полями id, name, adsress....
====
Это минимальные поля для поиска, в действительности у аптек есть всякие сайты, описания, они могут быть входить в состав аптечной сети и т.д... регистрационные номера например могут быть... также и у лекарств (состав, для чего, категория и прочее)
По поводу того, где собирать данные — нужно подключать аптеки и просить у них выгрузки в каком-то формате... в xml из 1С скорее всего или может там есть какой-то унифицированный формат... также есть уже такие сервисы в Москве, может они АПИ предоставляют... по поводу лекарств — есть открытые данные, поищите тут
data.gov.ru/taxonomy/term/15/datasets