하나의 파티션에서 행 키 모음으로 여러 엔터티를 조회해야합니다. 그것을 수행하기위한 적절한 질의는 무엇입니까?행 키 모음으로 azure 테이블 쿼리
답변
(원래 질문을 암시하고있는) rowkey에 의한 쿼리와 관련된 문제 : 모든 행에 해당 행키가 존재할 수 있으므로 테이블 스캔이 끝납니다. 그리고 이러한 쿼리를 개별적으로 실행하면 각각에 대해 테이블 검색을 수행하게됩니다. (원래의 질문에 대한 주석에서 @GlennFerrieLive가 제안한 것처럼 작업 병렬 라이브러리에서도 마찬가지입니다.)
$filter
(this article에서 설명) 또는 열 키의 개별 목록 (필터 내에서 개별 비교 15 개로 제한)으로 범위 키를 지정할 수 있습니다. 이것은 단 하나의 테이블 스캔으로 끝나야하지만 여전히 테이블 스캔입니다.
쿼리에 파티션 키를 지정할 수있는 경우 쿼리를 훨씬 빨리 반환 할 수 있으므로 그렇게해야합니다. 좋아, 훨씬 더 빠른은 내가 저장하는 데이터의 양을 모르기 때문에 상대적입니다.
EDIT : 의견을 통한 업데이트, partitionkey를 알고 있으므로 위의 지침에 따라 단일 필터 내에서 행키 범위 나 개별적인 행 키를 지정할 수 있습니다. 또는 ... 더 많은 행 키가있는 경우 TPL (테이블 스캔이 없으므로 이제는 의미가 있음)을 통해 이들을 실행하는 것을 고려할 수 있습니다. 필터 당 단일 행 키 또는 범위 또는 필터링 된 목록으로 그룹화합니다.
파티션 키를 알고 있습니다. 하나의 파티션에서 여러 행 키로 쿼리해야합니다. –
여러 행 키에 대한 OR 쿼리로 인해 파티션 검색이 발생한다는 점에 유의하십시오 (해당 답변에서 breischi가 지적한 바와 같이). 파티션의 크기에 따라 이것은 매우 나쁠 수 있습니다. – smarx
최적화 대상에 따라 다릅니다. 여러 개의 행 키를 지정하는 것이 동일한 파티션에 있더라도 파티션 검색을하게됩니다. 쿼리 최적화 프로그램은 OR 쿼리를 처리하기에 충분하지 않습니다. 파티션 스캔은 파티션의 크기에 따라 수십에서 수백 밀리 초가 걸릴 수 있습니다. 항상 포인트 쿼리보다 느립니다.
속도를 최적화하려면 각 쿼리를 별도로 수행해야합니다. 작업 병렬 라이브러리를 사용하지 말고 시작/끝 기능을 사용하면 훨씬 더 확장됩니다.
대기 시간이 중요하지 않은 경우 OR 쿼리를 수행하십시오. 더 느려지지만, 하나의 거래로 계산되므로 더 쌉니다.
안녕하세요, 시작/종료 기능은 무엇입니까? 2016 년에도 관련성이 있습니까? – mayu
Begin/End 함수는 이름이'begin'과'end'로 시작합니다. :). 그들은 이전 스타일의 비동기 호출입니다. 라이브러리를 잠시 사용하지 않았기 때문에 아직 관련성이 있는지 모르겠다. Async 스타일의 Task 반환 함수로 대체 될 수있다. 또한 쿼리 최적화 프로그램은 지난 5 년 동안 더 나아질 수 있습니다. –
- 1. 취소 Azure 테이블 쿼리
- 2. Azure 테이블 TableServiceContext에 행 삽입
- 3. Windows Azure 테이블 - 행 수?
- 4. Azure 테이블 : 파티션/행 키 선택을위한 최선의 방법
- 5. Azure 테이블 저장소에 대한 빈 테이블 쿼리
- 6. 쿼리 Azure 테이블 스토리지 파티션 및 행 키 쌍 목록에 의해
- 7. Azure 테이블 저장소에서 pk & rk를 통해 행 집합 가져 오기
- 8. Windows Azure 테이블, 포함을 사용하여 쿼리
- 9. Windows Azure 테이블 로깅 쿼리 문제
- 10. Azure 테이블 스토리지에 행 추가 감사
- 11. Azure 테이블 스토리지 - 합계 계산 또는 유지
- 12. Azure 테이블 스토리지 선택 행키 성능
- 13. Azure 테이블 쿼리 partial partitionkey GUID 일치
- 14. Azure 테이블 스토리지의 파티션 키에 대한 쿼리
- 15. Azure 테이블 스토리지 OnStart 생성자 쿼리
- 16. SQL Azure 테이블 크기
- 17. Azure 스토리지 테이블, 쿼리 및 쿼리 처리 관련 질문
- 18. Azure 테이블 엔터티에 액세스
- 19. 재료 모음으로 만들 수있는 요리법에 대한 SQL 쿼리
- 20. Azure 테이블 스토리지 컬럼의 고유성을 어떻게 검증합니까?
- 21. Azure 테이블 스토리지 페이징 가장 최근
- 22. Azure 테이블 및 엔티티 상속
- 23. Azure 저장소 테이블 페이징
- 24. Azure - 테이블 스토리지 모델링
- 25. Azure 테이블 스토리지 만료
- 26. Azure 테이블 스키마 만들기
- 27. azure 테이블 이해
- 28. SQL Azure 쿼리 종료
- 29. 테이블 행 안쪽 테이블
- 30. AZURE 테이블 스토리지, ODATA 및 더 친숙한 URI 쿼리
작업 병렬 라이브러리를 사용하고 개별적으로 쿼리하는 것이 좋습니다. –