Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z czasem
Forum PHP.pl > Forum > Bazy danych > Oracle
SongoQ
Mam sobie bazke w ORACLE rekordy siedza zaluzmy ze w 5 tabelach ilosci rzedzu kilkustet milionow, w roznych do siebie proporcjach. Zrobilem sobie widok ktory mi robi obliczenia, leczenia itd, nabardziej wykorzystywanym mechanizmem jest ten widok, ktory czasowo jest niezadowalajacy, wykonuje sie kilka sekund. W zaleznosci od warunkow selekcji. Problem z indeksami odpada, wydaje mi sie ze problem jest juz na poziomie zlaczen (relacji).

Wpadlem na takie rozwiazanie aby zrobic tabele keszujaca i do tych tabelek porobic triggery, czasy beda wtedy zadowalajace, ale z tym wiaza sie przerobki. I tak sie zastanawiam czy moze jest jakis inny sposob na przyspieszenie tego mechanizmu.

Dodam tylko ze chodzi o drzewo, w ktorym w zaleznosci poziomu i typu ladowane sa poszczegolne dane z tabel.

Bardzo bede wdzieczny jak ktos wypowie sie na ten temat, w jaki sposob podejsc do tego problemu.
MStaniszczak
A może perspektywa materializowana (CREATE MATERIALIZET VIEW LOG ON ...)?
Dodatkowo pamiętaj o regule 95/5 obowiązującej w Oracle.

Jak to nie pomoże może zamień JOIN-y na (+)= i =(+) - bywa że te złączenia działają na Oracle-u szybciej od JOIN-ów (istnieją w nim o wiele dłużej od instrukcji JOIN).

Pozdrawiam
Marcin Staniszczak
SongoQ
Wsumie juz sobie z tym poradzilem po przez zastosowanie triggerow i wpisywania do dodatkowej tabeli. Zapytania do tej tabeli i inne warunki tez sa zadowalające wiec narazie ten temat zostawiam. Jesli przybedzie na tyle rekordow ze to bedzie sprawialo problem odsierze temat.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.