Upewnij się, że masz podstawowy indeks klastrowy INT (lub BIGINT) na stole! A najlepiej żadne inne indeksy (jeśli to możliwe) - spowolnią wstawki.
To błędne przekonanie, że ponieważ tabela wymaga tylko WSTAW i prawie żadnych odczytów, powinieneś "uratować" sobie problem klucza podstawowego, klastrowego.
jako bogini SQL Server indeksowanie, Kimberly Tripp, opisuje w swojej doskonałej blogu The Clustered Index Debate continues:
Wkładki są szybsze w klastrowym tabeli (ale tylko w „prawo” skupione tabeli) niż w porównaniu do sterty . Podstawowy problem polega na tym, że wyszukiwania w IAM/PFS w celu określenia położenia wstawki w stercie są wolniejsze niż w zgrupowanej tabeli (gdzie lokalizacja wstawki jest znana, określona przez klucz klastrowany). Wstawki są szybsze po wstawieniu do tabeli , gdzie zamówienie jest zdefiniowane (CL), a gdzie zamówienie jest coraz większe.
Więc prawo skupione indeks może przyspieszyć swoje wkłady, a tu oznacza statyczne (nigdy się nie zmienia), unikalne, tak małe, jak to możliwe (INT lub BIGINT), a korzystnie coraz większa (bez podziałów stron i w związku z tym brak kary za wydajność).
Jeśli tabela zawiera tylko wkładki i nie ma aktualizacji/usuwania, należy upewnić się, że używa się 100% FILLFACTOR w indeksie klastrowym, aby w pełni wypełnić te strony serwera SQL.
Marc
Pracuję nad tymi liniami. Posiadam KLUCZ GŁĘBOKIEGO KLIENTA ZNAMIONOWEGO, tak że WSTAWKI są naprawdę NASTĘPNYMI na ostatniej stronie. 100% WSPÓŁCZYNNIK FILLU JEST ŁADNYM dotykiem. Zastanawiam się nad comiesięcznym przeglądem, przenoszeniem zapisów do "stałego" stołu historii, tak aby główny stół nigdy nie był ogromny. – pkario
Cóż, jeśli masz ciągle rosnący indeks, nawet rozmiar tabeli naprawdę nie jest tak dużym problemem (z wyjątkiem oczywiście wyborów) –