Я хочу написать приложение для iPhone, которое должно будет выполнять поиск на расстоянии (например, найти результаты в пределах 100 км)
Меня не интересует, какая технология хранения используется, если она хранится на устройстве
Хотя я никогда не использовал его, есть пространственная производная от SQLLiteDB, которую вы можете скомпилировать и использовать в своем приложении - тогда вы можете выдавать пространственные запросы к этой базе данных. Я размышлял над этим, но у меня никогда не было возможности попробовать:
http://www.gaia -gis.it / SpatiaLite /
Я недавно задал вопрос, намереваясь создать подобное приложение. Я нашел ответ полезным. Я считаю, что то, что вы хотите сделать, может быть в значительной степени достигнуто с помощью метода CLLocation getDistanceFrom:.
CLLocation
getDistanceFrom:
Что именно вы спрашиваете? Что вам нужно найти?
В общем случае я бы, возможно, использовал координаты long / lat для «элементов», чтобы создать четырехугольное дерево, и использовал бы его для ускорения поиска.