Dynamo DB를 사용하면서 filter를 사용하여 하나의 테이블을 스캔하려고합니다. 예를 들어 글로벌 보조 인덱스를 사용하여 테이블의 특정 행만 스캔 할 수 있습니까?Dynamo DB의 특정 행을 검색하십시오.
답변
당신이 상태가 null 말하거나 당신이 스파 스 인덱스의 사용을 훨씬 더 효율적이 아닌 경우, 그것은이 가능합니다 이분법 속성에 대한 스캔하는 경우! 인덱스 키 값 인 경우 AWS 문서 'best practices for GSI'에서
이
는 스파 스 인덱스
테이블의 모든 항목에 대해을을 활용, DynamoDB의 만 글로벌 보조 인덱스에 해당하는 항목을 기록합니다 항목에 있습니다. 전역 보조 인덱스의 경우 인덱스 파티션 키와 정렬 키 (있는 경우)입니다. 인덱스 키 값이 모든 테이블 항목에 나타나지 않으면 인덱스가 희박하다고합니다.
희귀 한 글로벌 보조 인덱스를 사용하여 일반적인 특성이없는 테이블 항목을 효율적으로 찾을 수 있습니다. 이렇게하려면 전역 보조 인덱스 특성을 포함하지 않는 테이블 항목이 전혀 인덱싱되지 않는다는 사실을 이용하십시오. 예를 들어 GameScores 테이블에서 특정 플레이어는 "Champ"와 같은 게임에 대해 특정 업적을 얻었을 수 있지만 대부분의 플레이어는 그렇지 않습니다. Champs의 GameScores 테이블 전체를 검색하는 대신 Champ의 파티션 키와 UserId의 정렬 키를 사용하여 글로벌 보조 인덱스를 만들 수 있습니다. 이렇게하면 테이블을 검색하는 대신 색인을 쿼리하여 모든 Champ를 쉽게 찾을 수 있습니다.
인덱스의 항목 수가 테이블의 항목 수보다 상당히 적기 때문에 이러한 쿼리는 매우 효율적입니다. 또한 인덱스에 투영하는 테이블 속성이 적을수록 인덱스에서 소비하는 읽기 용량 단위가 줄어 듭니다.
CanSahin. 고맙습니다. 나는 이것을 시도하고 작동합니다. 다시 감사드립니다. – ilce
불가능합니다! 검색은 항상 기본 테이블의 모든 행을 대상으로하며 인덱스 테이블을 응답으로 스캔하면 해당 인덱스 테이블에 포함 된 속성 만 가져옵니다.
예 : 1000 개 행이있는 테이블이 있고 속성 경우 : ID, 이름, 성, 해, 도시, 우편 번호, 당신은 기본 키 "도시"에 해당 테이블에 대한 GSI을 만들고 "우편 번호"를 포함 투영 된 속성으로 사용하고 인덱스 테이블을 다시 스캔하면 1000 개의 행이 모두 처리되지만 응답으로 각 행에 대해 "도시"및 "우편 번호"가 표시됩니다. Gain은 처리량을 낮추지 만 GSI를 만들 때 설정하는 읽기 및 쓰기 용량 단위에 대해 매달 비용이 부과됩니다.
- 1. Dynamo db의 페이지 매기기
- 2. dynamo db의 연산자에서 사용하는 방법
- 3. dynamo db의 모든 항목을 검사하는 방법은 무엇입니까?
- 4. 안드로이드에서 SQLIte DB의 특정 행을 선택하십시오.
- 5. LINUX 명령에서 특정 기간의 데이터 행을 검색하십시오.
- 6. Laravel에서 관계가 모두 활성화되어있는 DB의 레코드를 검색하십시오.
- 7. 값이있는 모든 행을 perl로 검색하십시오.
- 8. AWS Dynamo DB의 백업 데이터 파이프 라인을 매일 설정해야합니까?
- 9. .NET이 포함 된 Dynamo DB의 보조 색인 쿼리
- 10. 데이터가 AWS Dynamo DB의 행별로 시퀀스 (oder)에 저장되지 않음
- 11. Laravel에서 DB의 두 행을 비교해야합니다.
- 12. db의 특정 행을 csv 파일로 업데이트하는 방법 (레일스)
- 13. 테이블에서 지난 달 행을 검색하십시오.
- 14. 함수를 통해 테이블에서 행을 검색하십시오.
- 15. 번식 : 특정 끝자리가있는 토큰을 검색하십시오.
- 16. 컬렉션에서 특정 키만 검색하십시오.
- 17. arraycollection에서 특정 인덱스를 검색하십시오.
- 18. dynamo db에서 여러 레코드를 삭제하면
- 19. 줄의 특정 위치에서 특정 문자를 검색하십시오.
- 20. PowerShell, 특정 디렉토리에서 특정 파일 이름을 검색하십시오.
- 21. 영숫자 문자열로 특정 문자를 검색하십시오.
- 22. 배열 값에서 특정 입자를 검색하십시오.
- 23. 봄 - 특정 jar 파일을 검색하십시오.
- 24. where 절에서 특정 값을 검색하십시오.
- 25. 쉼표로 문자열에서 특정 값을 검색하십시오.
- 26. 문자열 내의 특정 문자를 검색하십시오.
- 27. 디렉토리의 특정 폴더 만 검색하십시오.
- 28. 특정 속성을 가진 팔로워를 검색하십시오.
- 29. 특정 달의 월요일 수를 검색하십시오.
- 30. 특정 루프 값에서 데이터를 검색하십시오.
'특정 행'은 무엇을 의미합니까? 예를 들어 줄 수 있습니까? –
예를 들어, 내 테이블에 50 행이 있고 일부 특성 ("상태")이 null 인 행만 스캔하려고하며 "상태"값이 15 행으로되어 있다고 가정 할 수 있습니다. 그래서 저는 15 행을 어떻게 든 스캔하려고합니다. – ilce
네, 그러나 테이블 해시/범위 키를 설명하고 쿼리를 기술하십시오. –