ďťż
 
IOT a partycjonowanie ďťż
 
IOT a partycjonowanie
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

IOT a partycjonowanie



Piotr Pastuszka - 21-03-2006 01:00
IOT a partycjonowanie
  Witam:
Sytuacja:
Tablica 17GB, 120mln elementów , 1 index na 3 kolumnach ( dodatkowe 5 GB) ,
dane przybywają czasowo, tzn są to jakies dane transakcyjne na których
robiona analiza. Przybywają, a stare nie są modyfikowane. Dostęp głownie do
ostatnich 6 miesięcy.
Co lepsze patrząc na wydajność:
IOT (Index Organized Tables - Tablice indexowe) ?
Czy może lepiej użyć partycjonowania (partycja na dacie z podziałem na
miesiące) ?

Obecnie Oracle 9i 9.2.0.1 64 bin , Solaris 2x900MHz SParc3 8GB RAM,
Macierz ..
Oczywiście na serwerze inne dane są także przetwarzane.

Nie możńa uzyć Partycjonowania i IOT jednocześnie. Więc trzeba wybrać.
Na testy za bardzo nie ma czasu (ale nie przesądzam ze może będzie trzeba).
Co lepsze z Państwa doświadczenia IOT czy Partycje w powyższym przypadku ?

Pozdr
PiotrP





=?ISO-8859-2?Q?Micha=B3?= Kuratczyk - 21-03-2006 01:00

  "Piotr Pastuszka" <piotr.pastuszka@wp.pl> wrote:
> Nie możńa uzyć Partycjonowania i IOT jednocześnie.

Można:
http://download-west.oracle.com/docs...titi.htm#23472

You can partition both regular (heap organized) tables and
index-organized tables, including those containing LOB columns. You can
create nonpartitioned global indexes, range-partitioned global indexes,
and local indexes on partitioned tables.

A w 10g jest jeszcze sporo usprawnień dla partycjonowania IOTów.

--
Michał Kuratczyk




Pedro44 - 22-03-2006 00:06

  > > Nie możńa uzyć Partycjonowania i IOT jednocześnie.
>
> Można:
> http://download-
west.oracle.com/docs/cd/B10501_01/server.920/a96521/partiti.htm
> #23472
>
> You can partition both regular (heap organized) tables and
> index-organized tables, including those containing LOB columns. You can
> create nonpartitioned global indexes, range-partitioned global indexes,
> and local indexes on partitioned tables.
>
> A w 10g jest jeszcze sporo usprawnień dla partycjonowania IOTów.
>

IOTy mają sens tylko jeśli tabela nie ma znacząco więcej kolumn niż sam
indeks, a tu widać ze skoro jest taka dysproporcja rozmiarów (3GB a 17GB) to
tabela zawiera kolumn dużo więcej. Zamiana jej w IOT-a to leczenie dżumy za
pomocą cholery i ładowanie się z jednego problemu w drugi. Nie do takich
zastosowań oracle wymyślił IOTy.

Partycjonowanie może być drogą wyjścia z problemu ale nie musi - sporo
zależy od aplikacji i rzeczywistego korzystania z danych historycznych.

Więcej nie sposób powiedzieć bo w zasadzie nie opisałeś jaki masz problem i
z czym.

--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/




=?ISO-8859-2?Q?Micha=B3?= Kuratczyk - 22-03-2006 00:06

  "Pedro44" <pedro44@WYTNIJ.gazeta.pl> wrote:
> Partycjonowanie może być drogą wyjścia z problemu ale nie musi -
> sporo zależy od aplikacji i rzeczywistego korzystania z danych
> historycznych.
Zgadzam się. Z tego co pytający napisał, to partycjonowanie wydaje się
właściwym kierunkiem - powinno poprawić wydajność (skoro interesują nas
głównie dane z konkretnego okresu, to aż się prosi o partycjonowanie po
datach), a także zarządzanie tym wszystkim (obrót danych - dokładanie
nowych i wyrzucanie przestarzałych przez proste operacje na partycjach).

> Więcej nie sposób powiedzieć bo w zasadzie nie opisałeś jaki masz
> problem i z czym.
Ano właśnie. Dlatego ograniczyłem się do zwrócenia uwagi, że można
użyć jednego i drugiego, jeśli pytający czuje taką potrzebę.

--
Michał Kuratczyk





dap - 22-03-2006 00:06

  Piotr Pastuszka wrote:
> Witam:
> Sytuacja:
> Tablica 17GB, 120mln elementów , 1 index na 3 kolumnach ( dodatkowe 5 GB) ,
> dane przybywają czasowo, tzn są to jakies dane transakcyjne na których
> robiona analiza. Przybywają, a stare nie są modyfikowane. Dostęp głownie do
> ostatnich 6 miesięcy.
> Co lepsze patrząc na wydajność:
> IOT (Index Organized Tables - Tablice indexowe) ?
> Czy może lepiej użyć partycjonowania (partycja na dacie z podziałem na
> miesiące) ?
>
> Obecnie Oracle 9i 9.2.0.1 64 bin , Solaris 2x900MHz SParc3 8GB RAM,
> Macierz ..
> Oczywiście na serwerze inne dane są także przetwarzane.
>
> Nie możńa uzyć Partycjonowania i IOT jednocześnie. Więc trzeba wybrać.
> Na testy za bardzo nie ma czasu (ale nie przesądzam ze może będzie trzeba).
> Co lepsze z Państwa doświadczenia IOT czy Partycje w powyższym przypadku ?

Czesc,
wszystko zalezy...

Najlepiej (nie najprosciej) przebuduj tak aplikacje by nie potrzebowala
az tyle danych w 1 tabeli. Np. zrob jedna tabele LAST_HALF_YEAR a
wszystko co starsze wrzucaj do innej. Jesli ktos potrzebuje szybkiego
dostepu to dasz mu view ktore bedzie dzialalo na obu tabelach. Do takieg
podzialu mozna uzyc tez tzw. materialized view.

Inne rozwiazanie to odpowiednie ustawianie parameterow storage dla
tabeli. Prawdopodobnie tabla jak i index maja PCTFREE 10, czyli jesli
ustawisz na PCTFREE 0, zaoszczedzisz ok 1,7 GB :). Dodaj tez
local_managed i uniform size.

Dodatkowa mozliwosc to zastosowanie kompresji tabeli i indeksow pozwala
zaoszczedzic do ok 66% miejsca. (Ale chyba dziala tylko w enterprise)

Do partycjonowania potrzebujesz wersji enterprise oraz dodatkowych licencji.

uzp

dap
--
xoops.pl
polanski.biz




=?ISO-8859-2?Q?Micha=B3?= Kuratczyk - 22-03-2006 00:06

  dap <news997@gazeta.pl> wrote:
> Np. zrob jedna tabele LAST_HALF_YEAR a wszystko co starsze wrzucaj do
> innej.
Do tego właśnie służy partycjonowanie (i działa to znacznie lepiej). :-)

PS Oczywiście zakładając, że mamy na nie licencję.
--
Michał Kuratczyk




dap - 22-03-2006 00:06

  Michał Kuratczyk wrote:
> dap <news997@gazeta.pl> wrote:
>
>>Np. zrob jedna tabele LAST_HALF_YEAR a wszystko co starsze wrzucaj do
>>innej.
>
> Do tego właśnie służy partycjonowanie (i działa to znacznie lepiej). :-)

:) Oczywiscie ze tak, ale jak to mawial A.Slodowy "Zrob to sam" - tez
przynosi efekty.

dap
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    [Postgresql] =?ISO-8859-2?Q?Zapychaj=B1ca_si=EA_partycja_/?==?ISO-8859-2?Q?var_z_baz=B1_postgresql?= instalacja sql 2005 poza partycją c:\ [MSSQL 2005] Zmiana partycjonowania tabeli Oracle - na ktorej hash-partycji jest rekord? MSSQL - partycjonowanie i nie chce dzialac [oracle] partycje na tabeli i update'y [oracle] partycjonowanie PostgreSQL 8.1 - ustawienia sortowania itp. SQL Server 2005 SP2 Pervasive + linux
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • ponland.htw.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com