Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 3.12.2009 Ostrzeżenie: (0%)
|
Witam,
Biorę udział w budowie systemu zbierania i przetwarzania danych pomiarowych opartego na bazie Oracle 11g. Zastanawiam się nad zunifikowaniem większości danych pomiarowych i wrzucenie ich do jednej tabeli. Problem w tym, że system ma przechowywać dane z 5 lat czyli szacunkowo w tej tabli znalazłoby się ok. 500 mln. rekordów. Najczęściej wykorzystywane dane w systemie będą obejmowały okres przede wszystkim ostatnich 2-óch miesięcy (ok. 70% zapytań) oraz ostatniego rok (ok.25%). I tutaj moje pytania: Czy stworzenie tak dużej tabeli znacząco wpłynie na wydajność zapytań na tej tabeli w stosunku do mniejszych tabel powiedzmy z 50 mln. rekordów? Czy lepiej podzielić table na kilka mniejszych i korzystać z operatora UNION w razie potrzeby? Ile takich mniejszych tabel zastosować? Czy może złym pomysłem jest unifikacja i tworzenie tak dużej tabeli z punktu widzenia optymalizacji bazy? Z góry dziękuje za udzielone odpowiedzi oraz sugestie. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 195 Pomógł: 14 Dołączył: 12.01.2006 Skąd: Gotham City Ostrzeżenie: (0%)
|
Trzymaj się standardowych zasad tworzenia baz danych, tabel nie kombinuj chyba że wiesz co kombinujesz, porobiłeś testy na tej konkretnej bazie i wiesz że na tym dobrze wyjdziesz.
Jedna tabela to zły pomysł jeśli będzie w niej 100 kolumn i zero logiki. |
|
|
|
psyho Projekt bazy - tabela na 500mln wierszy - optymalizacjia 3.12.2009, 20:18:43
psyho Nie zajmuje się bezpośrednio bazą danych i nie mam... 3.12.2009, 21:23:16
tvister W twoim przypadku jak masz jasno określone długośc... 3.12.2009, 23:37:28
psyho Dziękuje za pomoc, zobaczymy co z tego wyjdzie 4.12.2009, 09:16:09
redman2 Ja bym zaproponował partycjonowanie tej tabeli
ht... 4.12.2009, 10:03:40 ![]() ![]() |
|
Aktualny czas: 11.06.2026 - 06:01 |