Tabela Orders DynamoDB używa OrderID jako klucza partycji (bez klucza sortowania) i zawiera ponad 100 000 elementów. Musisz efektywnie pobrać wszystkie zamówienia, których atrybut OrderSource jest równy 'MobileApp'. Jaki jest najbardziej efektywny projekt w celu poprawy doświadczenia użytkownika?
Wybierz odpowiedź
Dotknij opcji, aby sprawdzić swoją odpowiedź.
Poprawna odpowiedź: Utwórz globalny indeks pomocniczy (GSI) z OrderSource jako kluczem partycji, a następnie wykonaj Query na GSI, używając MobileApp jako klucza..
Dlaczego to jest odpowiedź
Poprawna odpowiedź to utworzenie globalnego indeksu pomocniczego (GSI) z OrderSource jako kluczem partycji. GSI pozwala na efektywne wyszukiwanie danych po atrybucie innym niż klucz partycji tabeli głównej. Użycie OrderSource jako klucza partycji w GSI umożliwia wykonanie operacji Query, która jest znacznie bardziej wydajna niż Scan, ponieważ odczytuje tylko dane pasujące do klucza partycji. Wykonanie Scan na tabeli jest nieefektywne dla dużych zbiorów danych, ponieważ odczytuje całą tabelę, a następnie filtruje wyniki. Lokalny indeks pomocniczy (LSI) wymaga, aby klucz partycji był taki sam jak w tabeli głównej, co nie pasuje do tego przypadku. Utworzenie GSI z OrderSource jako kluczem sortowania nie pozwoliłoby na bezpośrednie zapytanie o konkretną wartość OrderSource jako klucza partycji, co jest celem.
Zdaj egzamin — bez niekończącego się szukania odpowiedzi
Uzyskaj wszystkie zweryfikowane pytania i wyjaśnienia do tego egzaminu w jednym miejscu i zaoszczędź godziny przygotowań. Ponad 1000 certyfikacji · Ponad 20 języków · Zacznij za darmo.
Zdaj egzamin szybciej → Karta nie jest wymagana