Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Tabela partycjonowana i równoległość SQL Server 2008

Partycjonowanie nigdy opcja poprawy wydajności. Najlepsze, na co możesz liczyć, to uzyskanie porównywalnej wydajności przy niepartycjonowanych tabelach. Zwykle otrzymujesz regresję, która rośnie wraz z liczbą partycji. Aby uzyskać wydajność, potrzebujesz indeksów, a nie partycji. Partycje są przeznaczone do operacji zarządzania danymi:ETL, archiwizacji itp. Niektórzy twierdzą, że eliminacja partycji jest możliwym wzrostem wydajności, ale w przypadku czegokolwiek eliminacja partycji może dać umieszczenie wiodącego klucza indeksu w tej samej kolumnie co kolumna partycjonowania, co da znacznie lepsze wyniki.

To zapytanie wymaga indeksu w State . W przeciwnym razie jest to skanowanie tabeli i skanuje całą tabelę. Skanowanie tabeli przez partycjonowaną tabelę jest zawsze wolniejsze niż skanowanie niepartycjonowanej tabeli o tym samym rozmiarze. Sam indeks może być wyrównany do tego samego schematu partycji, ale kluczem wiodącym musi być State .

Paralelizm nie ma nic wspólnego z podziałem, pomimo powszechnego błędnego przekonania, że ​​jest inaczej. Operator równoległy może być używany zarówno przy partycjonowanym, jak i niepartycjonowanym skanowaniu zakresu. Będzie to decyzja Optymalizatora zapytań.

Nie

Pomoże w tym indeks. Jeśli indeks ma być wyrównany, musi być podzielony na partycje. Indeks niepartycjonowany będzie szybszy niż indeks partycjonowany, ale nie można obejść wymogu wyrównania indeksu dla operacji włączania/wyłączania.

Jeśli patrzysz na partycjonowanie, powinno to być spowodowane tym, że musisz wykonać szybkie operacje przełączania, aby usunąć stare dane z okresu przechowywania lub coś podobnego. Aby uzyskać wydajność, musisz patrzeć na indeksy, a nie na partycjonowanie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. zapytanie sql, aby zwrócić różnice między dwiema tabelami

  2. Pogrupuj sql według versus different

  3. Optymalnie wydajne zapytanie dla najnowszego rekordu dla każdego N

  4. Replikacja SQL Server wymaga rzeczywistej nazwy serwera, aby nawiązać połączenie z serwerem

  5. jak przekonwertować datę do formatu `mm/dd/rrrr`