Rispondere alle interrogazioni: operatori relazionali

Nei DBMS relazionali le interrogazioni vengono risolte combinando in maniera opportuna un insieme di operatori, di conseguenza e necessario

  • implementare in maniera efficiente tali operatori
  • saper trovare la miglior combinazione per rispondere in velocita

le prestazioni di risposta a una query dipendono da molti fattori tra cui numero di tuple, distribuzione delle stesse, presenza di indici, buffer ecc...

Tipologie di operatori

Gli operatori si dividono in due categorie

Operatori logiciOperatori fisici
estensione di quelli messi a disposizione dall’algebra relazionale, forniscono un insieme di tuple con certe proprietàimplementazione effettiva degli operatori logici, a questi e possibile associare un costo di esecuzione

Operatori logici

Gli operatori logici sono i seguenti:

  • ordinamento
  • selezione
  • proiezione
  • join
  • operatori insiemistici
  • group by
  • operatori aggregati
  • operatori di modifica (update, delete, insert)

Stime di costo di un operatore

Per poter stimare il costo di un operatore si prendono in considerazione i seguenti parametri (reperibili dai cataloghi del database)

  • = numero di record di
  • = numero di pagine di
  • = lunghezza (in byte) di un record di
  • = numero di valori distinti dell’attributo
  • = numero di tuple per pagina
  • = numero di pagine buffer a disposizione per l’operatore
  • = numero di pagine foglia dell’indice

PREVIOUS NEXT