2015-07-21 2 views

ответ

2

Ваш вопрос очень широко и расплывчато, так что я дам очень широкий ответ ,

Вы можете хранить каждую широту и долготу в качестве строки в таблице Кассандры, как это:

CREATE TABLE locations (location text PRIMARY KEY, latitude float, longitude float); 

Тогда, чтобы найти все места в пределах 5 км радиуса заданной широты и долготы в (давайте называть это местоположение X), вам нужно будет проверить каждую строку в таблице с помощью клиентского приложения, которое вы создадите.

В чистой Cassandra вы бы выбрали * из таблицы, чтобы получить все строки (используя пейджинг, если есть много строк), и в вашем клиентском приложении для каждой строки проверьте, находится ли расстояние между X и строкой составляет менее 5 км и выводит строки, которые соответствуют.

Или вы могли бы связать Кассандру с искры Apache и сделать то же вычисление параллельно.

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

Смежные вопросы