Инстр-нт сопоставления неск. баз данных отелей

Евгения18 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
17.12.2011

Есть несколько баз данных отелей от различных провайдеров, каждая из которых содержит 80 000-100 000 отелей.

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

Пример.

Отель с названием Hotel Venezia Inn есть в БД у Провайдера 1, у провайдера 2 и у провайдера 3. С разными ID.

В нашей базе данных он будет идти только 1 раз, со свойствами (Провайдер 1=ID Провайдера 1, Провайдер 2=ID провайдера 2 и т.д.).

Сложности - одни и те же отели в разных базах в названии могут прилично различаться.

Возьмем, название отеля - Hotel Venezia Inn. Например, этот же отель может иметь в названии 75HW (это адресное уточнение, номер автодороги в США). Или в именах отелей в одной базе используется кодировка ascii, а во второй latin1 где вместо обычной e например используется французская e со штрихом и это не учитывается.

Вцелом сравнивать на соответствие отели можно по 3 факторам:

- название

- адрес

- геокоординаты.

Но с адресом тоже не все однозначно - в одном здании - по одному адресу может быть 2 и более отелей. Или на одной площади может быть два и более отелей.

Поэтому нужно продумать грамотную логику системы и осуществить ее реализацию. Ну и с учетом того, чтобы скрипт работал не годы, т.к. позиций очень много...