Google App Engine은 쿼리 당 하나의 불평등 필터 만 지원한다는 것을 알고 있습니다. 이 제한 사항의 해결 방법은 무엇입니까? 비슷한 효과를 낼 수있는 솔루션이 있습니까?AppEngine Datastore의 비공개 필터
7
A
답변
1
쿼리 당 하나의 부등식 필터가 있는지에 대한 해결 방법은 쿼리하는 데이터 집합의 유형에 따라 다릅니다.
예를 들어, 위도 및 경도 주소를 사용하여 위치 데이터를 쿼리하려는 경우 일반적으로 두 속성 (위도 및 경도)의 값 범위를 쿼리해야합니다. 그러나 geohash 알고리즘을 사용하면 단일 속성 만 사용하여 동일한 쿼리를 수행 할 수 있습니다.
3
실제로 GAE는 on the same property 인 경우 여러 개의 부등식 필터를 지원합니다.
이 제한 사항에 대한 대안은 데이터와 관련이 있습니다 (예 : 그것은 당신의 데이터가 어떻게 구조화되고 당신이 어떻게 그것을 쿼리하기를 원하는지에 달려 있습니다. 예를 들어, @Dan Holevoet이 언급했듯이 지역 검색의 경우 다양한 지리 해싱 알고리즘이 있습니다. 기본적으로 이러한 알고리즘은 여러 속성을 하나의 속성으로 결합하는 동시에 속성을 양자화 (이산 값 만들기)하는 작업을 포함합니다. 예를 들어, geo-hashing은 평등 연산자를 통해 검색 할 수 있도록 작은 고정 크기 영역 (= 위도/경도 결합 및 양자화 결합)으로 세계지도를 나눕니다.
0
이 문제를 해결할 때 (예 : 범위를 -에서) 검색 할 때 단일 불평등 필터로 쿼리를 사용합니다. 정렬 순서 (오름차순 또는 내림차순)에 따라 상한 또는 하한을 선택합니다. 그 후 쿼리 필터에없는 하단 또는 상단 제한을 사용하여 결과를 프로그래밍 방식으로 필터링합니다.
관련 문제
- 1. Appengine Datastore의 일일 통계 추적
- 2. AppEngine Datastore의 목록 내 목록 사용
- 3. Google Datastore의 '업데이트'와 유사합니다.
- 4. Java GAE Datastore의 하위 쿼리
- 5. Google Cloud Datastore의 2D 배열 객체
- 6. NoSQL Datastore의 조회에 영어 단어가 사용 되었습니까?
- 7. gae-datastore의 색인 된지도로 등록 정보
- 8. Google App Engine Datastore의 대량 업데이트
- 9. App Engine Datastore의 Blob 실제 크기
- 10. 비공개 예약어?
- 11. 비공개 API의
- 12. AppEngine 리디렉션
- 13. Appengine Basics
- 14. AppEngine 생각하기
- 15. 필터 대 -ms- 필터
- 16. UIGetScreenImage - 비공개 API
- 17. 비공개 콘텐츠를 제한하는 방법?
- 18. 비공개 대 공용 포트
- 19. 비공개 REST API
- 20. 비공개 액세스? Java
- 21. 비공개 파일 버전 컨트롤러
- 22. 비공개 중첩 클래스
- 23. 보안 윤리 비공개
- 24. 비공개 APNS 서버입니까?
- 25. 비공개 RSS 피드 항목
- 26. 비공개 필드에 액세스하기
- 27. AJAX PHP 비공개 메시지
- 28. 자바에서 비공개 필드에 액세스
- 29. RhinoMock으로 비공개 필드 모의
- 30. 스칼라의 비공개 필드 설정자
이 필요 했습니까? 피터 (Peter)가 언급했듯이 동일한 속성을 가진다면 여러 개의 부등호 필터가 지원됩니다. –
동일한 날짜 필드에 대해 하나의 범위 (~부터)까지 사용하려고합니다. 지원되지 않습니다. 나는 JDO와 함께 사용한다. – alexey28