쿼리는 작업으로 지정하는 애플리케이션에 설명서:
쿼리 작업을 검색만 기본 핵심 속성 값을 지원한 하위 집합의 비교 연산자를 주요 특성 값을 검색하는 과정이다.
고의 검사 작업:
스캔 작업 전체를 검색 표입니다. 필터를 지정할 수 있을 적용하는 결과를 수정한 값을 반환 후에 당신을 완전한 검사입니다.
는 최고의 성능에 따라과 비용을 고려 사항입니다.
당신은 해당 역할의 권 파티션 키/기본 키로customer_country
. 당신이 사용하는 경우 쿼리,customer_country
은 필수 필드를 쿼리 작업입니다. 모두 필터를 만들 수 있는 항목만 그리고customer_country
.
을 수행할 경우 테이블 스캔을 필터에서 수행됩 모든 파티션 키/기본 핵심이다. 첫째 그것은 억지 모든 데이터는 적용 여과기를 가져오는 후에서 테이블.
여기customer_country
은파티션 키/기본 핵심
그리고id
은sort_key
-----------------------------------
customer_country | name | id
-----------------------------------
VV | Tom | 1
VV | Jack | 2
VV | Mary | 4
BB | Nancy | 5
BB | Lom | 6
BB | XX | 7
CC | YY | 8
CC | ZZ | 9
------------------------------------
-을 수행할 경우 쿼리에는 작업에만 적용되도customer_country
값입니다.
값만 동일한 통신수(=).
-그래서 단지 항목과 동등한 파티션 키/기본 키 값을 가져올 수 있습니다.
-만약 당신이 검사를 수행하는 작업을 가져옵 모든 항목에서는 테이블과 데이터를 필터링 후 걸리는 데이터입니다.
참고:지't 검사를 수행하는 작업을 초과하 RCU.
을 만들 때에는 해당 역할의 권 선택 기본 키가 및 지역 보조 인덱스(커넥터)는 쿼리 작업 반환합니다 당신이 원하는 항목.
쿼리 운영을 지원한 동등한 운영자의 평가 기본 핵심이지만,조건부(=,<,<=,>>=,사,시)에 정렬합니다.
검사 작업은 일반적으로 느리고 더 비싼 조작을 반복을 통해 각 항목에서 당신의 테이블 항목을 얻을 당신은 간단한 응용 프로그램입니다.
예제:
Table: CustomerId, AccountType, Country, LastPurchase
Primary Key: CustomerId + AccountType
이 예제에서 사용할 수 있는 쿼리를 운영하여 얻을:
검색 작업이 필요하다를 반환하는 데 사용:
을 피하는 검사 작업에 자주 사용하는 작업을 만드는 로컬 보조수(LSI)또는 글로벌 차수(GSI).
예제:
Table: CustomerId, AccountType, Country, LastPurchase
Primary Key: CustomerId + AccountType
GSI: AccountType + CustomerId
LSI: CustomerId + LastPurchase
이 예제에서 쿼리를 작업할 수 있습을 얻을:
성능 측면에서,나는 그것이's 좋은 연습을 디자인하는 응용 프로그램를 위한 테이블을 쿼리대신
검색`. 기 때문에 검사 작업에 항상 검사 전체를 표기 전에 그것을 필터링하고 원하는 값을 의미하는,그것은 더 많은 시간과 공간을 데이터를 처리하는 등의 작업은 읽기,쓰기,삭제할 수 있습니다. 자세한 정보를 참조하시기 바랍식 document
쿼리는 것보다 훨씬 낫 검사-성과 현명하다. 검색으로 그것이's 이름이 암시하듯이,스캔합니다. 하지만 당신은 잘 알고 있어야합 테이블의 핵심,종류 핵심,인덱스와 관련된 정렬 인덱스 순서를 사용할 수 있다는 것을 알고 있습니다. 면 필터 쿼리에는 사용:
-열쇠 키&키를 정렬 -index -인덱스와 it's 관련 정렬 열쇠
사용합니다. 그렇지 않으면 스캔을 사용하여 더 유연에 대해 열을 필터링할 수 있습니다.
할 수 있는지를 쿼리하는 경우:
-는 2 개의 필드는 필터에서(예를 들어,키를 정렬하고 지수) -정렬 키만(의 기본 키가 또는 인덱스) -일반적인 필드(지 핵심,인덱스 또는 정렬) -혼합된 인덱스 종류(1 으로 정의 2)\ -...
좋은 제출할 수 있습니다.: https://medium.com/@amos.shahar/dynamodb-query-vs-scan-sql-syntax-and-join-tables-part-1-371288a7cb8f
그에 유사한 관계형 데이터베이스입니다.
을 얻을쿼리
당신은 당신을 사용하는 기본 키에는상태,계산 복잡성은
log(n)`으로 대부분의 주요 구조은 바이너리 나무입니다.
는검색
쿼리가 검사 전체를 테이블을 적용에 대한 필터는 모든 단일행
을 찾기 위해 오른쪽 결과입니다. 성능이O(n)
. 그것은 훨씬 느린 경우 테이블이 큽니다.
즉,사용하려고라고 알고 있는 경우 기본 핵심이다. 만 스캔`에 대한 최악의 경우입니다.
또한,에 대해 생각하는 글로벌 차 지수를 지원하는 다른 종류의에 대한 쿼리를 다른 키를 얻 성과 목표