Ta tabela była tabelą zestawień / agregacji.
W takim razie jest to nie tylko w porządku, ale „właściwe”.
I pachnie jak tabela podsumowań, ponieważ zaczyna się od day
.
Czy masz jakieś indeksy wtórne? Pamiętaj, że jeśli używasz InnoDB, pozostałe kolumny KLUCZA PODSTAWOWEGO zostaną umieszczone na końcu indeksu wtórnego. Znów nie jest to problem.
100 mln wierszy to bardzo dużo w przypadku zestawienia. Wygląda na to, że stół jest zbyt drobnoziarnisty. To znaczy, być może zamiast tego, jeśli (data, a, b, c, d) powinieneś mieć 4 zestawienia z PK takimi jak (data, a, b, c), (data, b, c, d), (data, c, d, a), (data, d, a, b) (lub niektóre odpowiednie kombinacje). Robię to, każdy może mieć tylko 10 milionów wierszy, dzięki czemu raporty są jeszcze szybsze, a jednocześnie mają prawie taką samą elastyczność w raportach.
A może przełącz się na (tydzień, a, b, c, d), co może prowadzić tylko do 14 milionów wierszy. (Prawdopodobnie więcej.)
Korzystanie ze PARTYCJI w celu ułatwienia przycinania --- Spożycie z dużą prędkością --- Wskazówki dotyczące hurtowni danych --- Tabele podsumowań . Podsumowują one wiele technik, które opracowałem w kilku projektach DW. Jak można wywnioskować, każdy projekt jest inny. „Typowa” liczba tabel podsumowań (z mojego doświadczenia) to 3-7. Podsumowując, celem jest 10 wierszy faktów -> 1 wiersz podsumowań. (Może to być „mediana”). W rzadkich przypadkach podsumowałem tabelę podsumowań. W innym rzadkim przypadku podzieliłem na partycje tabelę podsumowań, aby uzyskać dobry efekt; zwykle tabele podsumowań są wystarczająco małe, więc są wystarczająco szybkie, aby uzyskać bezpośredni dostęp z interfejsu użytkownika.