Re: [Postgresql-it] tipi indice

  • From: roberto marzialetti <roberto@xxxxxxxxxxxxxxx>
  • To: Roberto Tagliaferri <postgresql-it@xxxxxxxxxxxxxxxxx>
  • Date: Fri, 18 Jun 2004 11:44:43 +0200

il giorno Friday, June 18, 2004, 11:18:23 AM
Roberto Tagliaferri <r.tagliaferri@xxxxxxxxx> a 
<postgresql-it@xxxxxxxxxxxxxxxxx>
ha scritto

Vedo che in pg si può definire un indice con vari metodi di accesso:
quali sono i campi di utilizzo dei vari indici?
Vantaggi/svantaggi dei vari tipi?

*******************
L'implementazione B-tree di Postgres usa gli algoritmi B-tree di
lehman-yao ad alta occorrenza ed e' il metodo + efficace ed
utilizzato; per questo motivo e' il tipo di indice di default.

L'implementazione R-tree e' utile principalmente per le ioperazioni
suo tipi di dati spaziali (ed es. quelli geometrici) ed utilizza
l'algoritmo dello split quadratico di guttman. l'implementazione hash
utilizza la routine di hash lineare di litwin, che sono state sempre
usate per gli indici che coinvolgono frequenti paragoni tra uguali
(con l'operatore =).
Mentre scriviamo l'implementazione dell'indice B-tree e' di gran lunga
la + efficace e flassibile, quindi la consigliamo al posto di Hash
anche quando si usa l'uguale. L'indice hash esiste principalmente per
motivi di compatibilita' all'indientro, anche se potete ancora usarlo
se siete sicuri che sia meglio di b-tree.
Con R-tree non si puo' creare un indice univoco R-tree, ne uno su piu'
di una colonna.  In questi casi e' meglio affidarsi a B-tree.

manuale pratico di postgresql - hops libri, pag. 291
*******************

hth

rob


Other related posts: