/ / Obsługa ogromnej tabeli w SQL Server [zamknięty] - sql-server, wydajność, projektowanie baz danych, wydajność zapytań

Obsługa ogromnej tabeli w SQL Server [zamknięty] - sql-server, wydajność, projektowanie baz danych, wydajność zapytań

Mamy SQL SERVER z tylko jedną tabelą. Ta tabela zawiera 50 milionów wierszy. Tabela ma 31 kolumn. 1 kolumna tożsamości i 30 kolumn nchar o różnych rozmiarach. Rozmiar stołu wynosi 15 GB.

Tabela zawiera informacje z roku 2017. Początkowo nie będzie wstawek w tabeli, ale w przyszłości klient może będzie chciał dodać rok 2018, a może 2016. Na razie jest dla zapytań.

Kwerendy wymagają minut do wykonania. Pomyślałem więc, że lepiej będzie podzielić stół na 1 stół miesięcznie, ponieważ stół jest za duży. Ale rozwiązanie nie zaspokaja klienta, ponieważ chce przesyłać zapytania do wszystkich danych.

Zatem, biorąc pod uwagę ten scenariusz, jakie byłoby najlepsze podejście do obsługi tej tabeli i umożliwienia szybkiego wysyłania zapytań?

Odpowiedzi:

1 dla odpowiedzi № 1

Zacznę od oczywistości, która jest indeks. Odnosić się do: Jakie kolumny generalnie tworzą dobre indeksy?

Na problem, o którym wspomniałeś, zawsze możeszpodziel tabelę na mniejszą i aby przesłać zapytanie do całego zbioru danych, można ją uzyskać z widoku niektórych procedur przechowywanych, w których można uwzględnić pewną logikę.