Мы делали проект с подобной задачей. Для библиотек.
Как мы это сделали. Взяли Я.Карты и на них размещали метки, метки брали из базы и выводили на карту. У каждой метки свой текст. Щелкнул на балун получил содержимое. Как сделать поиск, в принципе ничего сложного я думаю нету. Ищешь в базе и потом найденный балун выводишь на карту, а остальные убираешь.
joxi.ru/LmGG83gUW1n1ml
joxi.ru/V2VEae6U7DvPmv