Insert ID
Kluvanek Martin
kluvanek na tesnet.cz
Pátek Červen 20 15:46:40 CEST 2003
Jan Serak wrote:
> Kluvanek Martin wrote:
>
>> Viete niekto ako vlastne uklada zaznamy?
>
>
> Velmi zhruba.
>
>> 1)cisla uklada v nejakom pevnom binarnom formate alebo ako ciselne
>> stringy(takze cislo 1 zaberie ine miesto ako 10000000)?
>
>
> Ani tak ani tak. Typ NUMBER uklada jako mantisu a dekadicky exponent,
> ovsem v jakesi variante BCD.
>
> VARCHAR2 je opatren delkou aktualni hodnoty (select length(retezec) from
> ...) tedy ve skutecnosti vubec fyzicky nesaha do retezcu. Je tam jedna
> zrada s definici VARCHAR2(delka). Delka udava delku v bajtech, nikoli ve
> znacich, takze pozor na kodovani UTF!
>
> DATE ma nejake uplne silene kodovani, ktere jsem se ani nesnazil
> pochopit. Rozhodne to je neco silenejsiho nez time_t (kvuli B.C. a A.D.
> letopoctum).
>
>> 2)pakuje nejak hodnoty? (samozrejme varcharxxxx asi ano)
>
>
> Nikoli. Oracle od sveho prvopocatku ma strategii nikoli setrit diskovym
> prostorem, nybrz mit maximalni pruchodnost. Takze nejenze nealokuje
> misto pro jednotlive zaznamy, nybrz v alokacnich jednotkach zvanych
> SEGMENTS, EXTENTS a BLOCKS.
>
> Bloky jsou nejmensi jednotky a maji v ramci cele databaze konstantni
> velikost (nektera z geometricke rady 4 KB, 8 KB, 16 KB, ...). Bloky
> Oracle udrzuje bud na disku nebo v pameti podle svych potreb.
>
> Extenty jsou skupiny bloku jdoucich fyzicky po sobe. Jejich velikost
> urcuje Oracle podle presne danych pravidel. Kdyz nelze novy zaznam
> ulozit do zadneho z jiz naalokovanych extentu, naalokuje se dalsi, byt
> zabere 100 MB a ulozi se do nej 1 KB dat.
>
> Segmenty jsou skupiny extentu, ktere jiz nemuseji byt fyzicky za sebou.
> Segment udrzuje vsechna data ulozena v nejakem databazovem objektu
> (tabulka ma vsechny sve zaznamy ulozena v jednom segmentu, index je
> ulozen v jednom segmentu,...). Kazdemu segmentu lze nastavit parametry
> pravidel pro alokaci a uvolnovani extentu (napr. o kolik procent ma byt
> kazdy dalsi naalokovany extent vetsi nez predesly, jaky maximalni pocet
> extentu ma pravo segment naalokovat, z kolika procent musi byt minimalne
> vsechny extenty segmentu naplnene, aby se naalokoval dalsi extent, z
> kolika procent musi byt extent prazdny, aby melo cenu uvazovat o tom,
> jestli by neslo data presunout do jinych extentu a uvolneny extent
> dealokovat, no je toho halda).
>
> Proto pokud se chcete zaobirat otazkou, nakolik je Oracle rozezrany, tak
> nezbude nez se zacist napr. do Oracle Concepts.
Diky za prednasku, skusim si v tom spravit jasno.
Trochu mi to pripomina jeden salovy siemens (1988) kde pri kazdom
appende zmizla jedna volna stopa z disku. :)
Vsetko pre rychlost.
>
> Jan Serak
>
>
>
--
Martin Kluvanek
ved.odd. vyvoje (head of development department)
TES s.r.o
Testovani Energetickych Systemu (Testing of Energetical Systems)
Prazska 597
674 01 Trebic
Czech republic
tel:568 8384 28 (+420 5688384 28)
fax:568 8384 27 (+420 5688384 27)
homepage: http://www.tesnet.cz
Další informace o konferenci Databases