Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Postgresql Como Funciona Una Dbms Por Dentro
Postgresql Como Funciona Una Dbms Por Dentro
net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
#ost$re%&'
#ost$re%&'
Como f(n)ion* (n*
Como f(n)ion* (n*
+*se ,e -*tos
+*se ,e -*tos
por ,entro
por ,entro
Ernesto Quiones Azcrate
ernesto@eqsoft.net
Agenda
1. Una corta introduccin
2. Una DBMS or dentro
!. A"#acena#iento $ organizacin de "os datos
%. &os 'ndices
(. )o#o se rocesa un Quer$
*. )oncurrencia + ,ransacciones $ -"oqueos
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
1. .n* )ort* intro,())i/n
&a ri#era 0ez que se uso e" ter#ino fue en un ro$ecto de" e1ercito
nortea#ericano en una fec2a no deter#inada entre "os 1.(/ $ rinciios de "os
1.*/.
&as -ases de datos "i-res $ "as ri0ati0as tienen casi e" #is#o tie#o de
e3istencia 42tt+55tin$ur".co#5"(fern6.
7"anas
8e"aciona"es
9-1eto:re"aciones
9rientadas a o-1etos
;M&
&a #a$or'a de esta data <no tiene for#a=> son fotos> 0ideos> ?e-> etc.
,ransaction S$ste#
8e"ationa" Storage
,i#e Manage#ent
8ecord Acces
7ostgreSQ& sie#re esta aadiendo data> "a data #odificada
o -orrada rea"#ente no se #odifica o se -orra> "as ginas
donde e""as estn a"#acenadas se #arca co#o <no 0isi-"e= $
se inserta un nue0o registro co#"eto con un c"on de toda "a
data 4co#o se #ane1a esto en deta""e se e3"ica #as
ade"ante6.
Esto 2ace que "a -ase de datos ocue #uc2o esacio $ afecta
e" <tie#o de acceso= a "a data.
". >lm*)en*miento 1 or$*ni?*)i/n ,e ,*tos
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
E3iste un <tie#o de acceso= ara ""egar a "a data 4sea read o ?rite6 que
deende de+
,ie#o de rotacin de "os discos ara que e" -razo encuentre "a osicin
f'sica donde esta "a data.
OiS, 4LL> PL> PM> MM> LLQ> PLQ> QPM> QMM> @M> L@> RK> PPS estos
son oeradores ara datos geo#Gtricos6
OJN 4L@> @M> K> PPS estos son oeradores ara datos tio
arra$ $ ara <Hu"" ,e3t Searc2ing= dentro de docu#entos a
tra0Gs de "e3e#as 2tt+55es.?iCiedia.org5?iCi5&e3e#a6
8tree fue descontinuado a fa0or de OiS,.
&as -@squedas &iCe e i&iCe so"o usan B:tree si "a -@squeda o e" atrn en es fi1o a"
inicio> osea "o usa si es C*mpo li=e Hp*tDH ero no "o usa si es C*mpo li=e HDp*tH.
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
4. 'os 4n,i)es
&os 'ndices <c"usterizados= o <no c"usterizados=.
Un 'ndice c"usterizado es aque" donde "a data esta ordenada o
cercana#ente ordenada f'sica#ente con "as entradas de "a
data de" 'ndice
Una ta-"a so"o uede estar c"usterizada so"o or un 'ndice> no
#s.
Son a"ta#ente areciados en -@squedas or rangos> ero su
costo de #anteni#iento es a"to de-ido a" reordena#iento que
sie#re tiene que 2acerse a "a data.
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
4. 'os 4n,i)es
&os 'ndices <c"usterizados= o <no c"usterizados=.
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
Data entries
Data Records
Data entries
Data Records
)&US,E8ED
UN)&US,E8ED
5. Como se pro)es* (n &(er1
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
Una consu"ta si#"e+
se"ect firstna#e
fro# friend
?2ere age K !!S
T)o#o 2ace "a -ase de datos
ara interretar estoU
5. Como se pro)es* (n &(er1
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
5. Como se pro)es* (n &(er1
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
Esta arte es senci""a+
<E" c"iente ostgresq"= se
co#unica con e" ser0icio de"
<ost#aster= ara asar"e
una cadena de te3to con e"
quer$.
5. Como se pro)es* (n &(er1
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
Aqu' es donde e#ieza "a accin
5. Como se pro)es* (n &(er1
http://www.eqsoft.net
Correo: informes@eqsoft.net
Telfonos: (51)(1)-5645424/99244926/99!!"95
E" arser transfor#a e" equeo quer$ en una
serie de instrucciones que "a -ase de datos ueda
interretar> or eso es i#ortante escri-ir quer$s
inte"igentes.
5. Como se pro)es* (n &(er1
&uego asa or +
Ba1o MF)) "as transacciones 0en una i#agen de "a data a" #o#ento de
iniciar"a 4ara e""o "a data se 0ersiona con un ti#esta#6> esto rotege "a
transaccin de inconsistencia de data cuando ""egan 2 oeraciones de 85
D so-re "a #is#a.
En si#"e e" MF)) nunca #odifica e"i#ina "a data> nue0as fi"as de
infor#acin de 0an aadiendo confor#e se crea o actua"iza "a data $ se
#arca "a anterior co#o <no 0isi-"e=> cuando se desea e"i#inar un dato
igua"#ente se aade una fi"a de data $ se #arca co#o <no 0isi-"e= a"
#is#o tie#o.