위도와 경도가 높은 개체가 있습니다. 또한 각 개체에는 생성 날짜가 있습니다.함수 결과로 신속한 정렬을 구현하는 방법은 무엇입니까?
사용자는 어디서나 로그인하여 개체를 볼 수 있습니다. 우리는 개체의 신선도와 현재 사용자로부터의 거리를 기반으로 계산되는 특수 색인을 기준으로 개체 정렬을 표시해야합니다.
우리는 New York과 Jersey에 개체가 있다고합니다. New York에서 로그인하면 New Yorkes 객체가 맨 위에 표시되고 Jersey 객체가 표시됩니다. 그럼에도 불구하고 아주 오래된 new-yorks 객체는 그 결과 새로운 유니폼 객체 아래에 있어야합니다.
우리의 km의 장소를 객체에 함수 F 현재 사용자의 관점에서 = 하루에 < 객체 신선도> + < 거리에 근접 할 수>
우리는 데이터를 저장하기 위해 PostgreSQL의를 사용하고, 우리가 할 수있는 정말 종류 등의 기능으로 우리가 필요한 것을 얻으십시오. 문제는 우리가 1k-10k 개체와 100-300 개 장소에 도달 할 계획이므로 애플리케이션이 매우 빠르게 느려질 것이라는 두려움이 있습니다. 앱에서 결과를 매우 빨리 반환해야합니다 (앱에서 가장 중요한 것)
사용자는 다른 위치에서 개체를 추가합니다.
이러한 쿼리의 성능을 향상시키는 방법에 대한 아이디어가 있습니까?
죄송합니다. 함수는 현재 사용자의 두 개의 인수 < lat, long >을 취할 것입니다. 그리고 객체의 신선도는 매일 바뀔 것입니다. –
@ user909291 <> 구현 방법에 대한 자세한 내용을 설명 할 수 있습니까? 테이블에 숫자 또는 날짜/시간 소인 열이 있습니까? "신선도가 매일 바뀝니다"란 무엇을 의미합니까? 매일 새벽 <>을 계산하고 전체 테이블을 업데이트하는 작업 (매일 밤)이 있습니까? –
krokodilko
아니요, 아니요. 우선 아직 구현되지 않았습니다. 우리는 단지 그것에 대해 생각하고 있습니다. «신선함»이란 창조 날짜로부터 사라진 일수를 의미합니다. 날짜 시간 필드 (생성 날짜)가 있습니다. 그러나 우리는 일을 만들 수 있습니다. 무엇이든 의미가있을 경우 –