기본 키 순서가 지정되지 않은 Cloud Spanner 테이블이 있으므로 기본적으로 ASC (오름차순)입니다. 기본 키로 결과를 DESC (내림차순) 순서로 정렬하려는 쿼리가 있습니다. Cloud Spanner 설명서에 따르면 ORDER BY DESC가 역순으로 테이블을 스캔하는 가장 효율적인 방법은 아닙니다. 역방향 스캔을 수행하는 올바른 방법은 테이블에 역 색인을 작성하는 것입니다. 그게 최선의 접근인가, 아니면 내가 할 수있는 일이 더 있니?Cloud Spanner 테이블을 역순으로 검색
0
A
답변
0
맞습니다. ORDER BY DESC는 현재 키가 ASC 순서 인 경우 키 순서로 검색 할 때 Cloud Spanner에서 효율적이지 않습니다. DESC 순서로 보조 인덱스를 만들거나 테이블 자체의 기본 키에서 DESC 순서를 사용할 수 있습니다 (불행히도이 경우 테이블을 다시 만들어야합니다).
일반적으로 테이블이나 인덱스의 순서와 일치하지 않는 ORDER BY 절은 정렬 단계가 필요하므로 성능에 영향을줍니다. 따라서 ORDER BY DESC 스캔은 테이블이나 인덱스가 같은 순서로 정렬 된 경우 수행됩니다. 이것은 주요 구성 요소 중 일부가 ASC로 정렬되고 일부가 DESC 인 경우 특히 복잡해 지므로 ORDER BY 절이 테이블 또는 색인의 순서와 정확히 일치하는지 확인하는 것이 가장 좋습니다. 이해해야 할 중요한 점은 Spanner가 기본 키 순서로 데이터를 저장한다는 점입니다 (https://cloud.google.com/spanner/docs/schema-and-data-model#primary_keys 참조). 저장 형식은 정방향 검색을 효율적으로 지원합니다. 인덱스의 경우 기본 키는 인덱스의 항목을 조회하는 데 사용할 수있는 열 집합입니다.
관련 문제
- 1. Cloud Spanner 읽기와 Cloud Spanner SQL API
- 2. Cloud Spanner Key
- 3. Cloud Spanner Insert ID
- 4. Cloud Spanner 쿼리 성능 회귀
- 5. 개발 용 Google Cloud Spanner
- 6. Cloud Spanner 인덱스 선택 기준
- 7. Google Cloud Spanner 세션을 찾을 수 없음
- 8. 유휴 상태의 Google Cloud Spanner 데이터베이스 가격
- 9. Cloud Spanner 데이터베이스에서 조인은 어떻게 작동합니까?
- 10. 큰 데이터를 Cloud Spanner 테이블에 삽입하십시오.
- 11. Cloud Spanner - 'SHOW TABLES`에 대한 동등한 구문?
- 12. Cloud Spanner 테이블에 NOT NULL 제약 조건 추가하기
- 13. Google Cloud Spanner 피봇/합병/넓은 테이블 기능?
- 14. 파이썬에서 역순으로 검색
- 15. Teradata에서 역순으로 문자열 검색
- 16. 멀티 맵을 역순으로 검색
- 17. mysql 역순으로 검색
- 18. 요청할 때마다 새 Cloud Spanner 클라이언트 인스턴스를 만들어야합니까?
- 19. Cloud Spanner 스트리밍과 비 스트리밍 쿼리 성능 차이
- 20. 서비스 계정을 사용하여 Google Cloud Spanner 데이터베이스 목록에 액세스
- 21. 서비스 계정의 편집 역할을 개별 Cloud Spanner 데이터베이스에 추가
- 22. magento 검색 결과가 역순으로 표시됩니다.
- 23. Google Cloud Storage 검색 파일
- 24. Cloud bees, db의 테이블을 만듭니다.
- 25. Cloud Spanner를 GAE Python 앱과 통합하려면 어떻게해야합니까?
- 26. Google Cloud Spanner에서보기를 지원합니까?
- 27. 역순으로 목록을 역순으로 연결
- 28. Google Cloud Spanner에서 '구조'유형을 지원합니까?
- 29. 테이블 헤더를 클릭하여 검색 순서를 역순으로 처리합니다.
- 30. asp.net 라우팅 된 URL을 역순으로 검색