Indeksy na kolumnach typu danych XML

Indeksy XML mogą być tworzone na xml Typ danych kolumny.Za pośrednictwem instancji XML w wydajność kwerendy kolumna i korzyści indeksie znaczniki, wartości i ścieżek.Aplikacja może korzystać z indeksu XML w następujących sytuacjach:

  • Kwerendy w kolumnach XML są często w obciążenie sieci.Należy uznać kosztów utrzymania indeksu XML podczas modyfikacji danych.

  • Wartości XML są stosunkowo dużych i części pobierane są stosunkowo niewielkie.Budowanie indeksu pozwala uniknąć analizowania danych całego przy uruchomieniu czas i korzyści indeks wyszukiwania dla przetwarzania kwerend efektywne.

Indeksy XML dzielą się na następujące kategorie:

  • Indeks główny XML

  • Pomocniczy indeksu XML

Indeks pierwszego na xml kolumna Typ musi być podstawowym indeksu XML.Korzystając z indeksu głównego XML, obsługiwane są następujące typy indeksów pomocniczych: ŚCIEŻKA, wartość i właściwości.W zależności od typu kwerendy tych indeksów pomocniczych mogą pomóc poprawić wydajność kwerendy.

Ostrzeżenie

Nie można utworzyć lub zmodyfikować indeks XML, chyba że są opcje bazy danych zestaw poprawnie do pracy z xml typu danych.Aby uzyskać więcej informacji, zobacz Indeksu pełnotekstowego w kolumnie XML.

Wystąpienia XML są przechowywane w xml jako duże obiekty binarne (bloków BLOB) wpisz kolumn.Te wystąpienia XML może być duża, a przechowywane reprezentacja binarna xml wystąpienia typu danych może mieć maksymalnie 2 GB.Bez indeksu, te duże obiekty binarne są mielone przy uruchomieniu czas do oceny kwerendy.To rozdrabniania może być czas-zużyciu.Na przykład rozważmy następującą kwerendę:

WITH XMLNAMESPACES ('https://schemas.microsoft.com/sqlserver/2004/07/adventure-works/ProductModelDescription' AS "PD")

SELECT CatalogDescription.query('
  /PD:ProductDescription/PD:Summary
') as Result
FROM Production.ProductModel
WHERE CatalogDescription.exist ('/PD:ProductDescription/@ProductModelID[.="19"]') = 1

Aby wybrać wystąpienia XML, które spełniają warunek w WHERE klauzula XML duży obiekt binarny (BLOB) w każdym wierszu tabela Production.ProductModel rozdrobniony przy uruchomieniu czas.Następnie, wyrażenie (/PD:ProductDescription/@ProductModelID[.="19"]) w exist() Metoda szacowania.Rozdrabniania run-czas może być kosztowne, w zależności od rozmiaru i liczby wystąpień przechowywane kolumna.

Jeśli kwerenda XML dużych obiektów binarnych (bloków BLOB) jest często w środowisko aplikacji, pomaga indeksu xml typu kolumny.Jest jednak koszty związane z utrzymania indeksu podczas modyfikacji danych.

W tej sekcji

Temat

Opis

Indeks główny XML

Opisuje podstawowy indeksu XML i jego wierszy.

Indeksów pomocniczych XML

W tym artykule opisano trzy typy indeksów pomocniczych XML.

Tworzenie indeksów XML

Opisuje sposób tworzenia indeksów podstawowego i pomocniczego.

Modyfikowanie indeksów XML

Opisano sposób zmodyfikować indeksy XML za pomocą instrukcja ALTER INDEKSU.

Usuwanie indeksów XML

Opisuje sposób używania instrukcja DROP INDEX upuścić indeksy.

Indeksu pełnotekstowego w kolumnie XML

Opisuje sposób tworzenia indeksu pełnotekstowego w kolumnach XML.