Misura delle prestazioni indipendente dal Sistema Operativo

martedì 11 settembre 2007 alle 11:33 | Pubblicato su Performance Tuning | 2 commenti

Stando alle statistiche del blog questo post dovrebbe essere il numero 100. Erano un po’ di giorni che tenevo d’occhio quella statistica in attesa di questo momento, penso che sia arrivato il momento dei consuntivi, quindi voglio iniziare questo post con alcune considerazioni, riflessioni e statistiche.

Ho cominciato a scrivere su questo blog il 23 novembre 2006, quindi meno di un anno fa. Prima di iniziare a scrivere questo post ho riletto quel post scritto meno di 10 mesi fa per vedere se ne corso del tempo ho mantenuto fede al programma con cui ho iniziato questo blog: credo di esserci riuscito. Credo di essere migliorato e di essere riuscito a pubblicare diverse informazioni interessanti, questo ha permesso ha me stesso di imparare le cose e organizzare meglio le mie conoscenze, ciò mi ha confermato quanto già scrissi riguardo allo scrivere e all’ordine mentale.

Dalle statistiche che WordPress.com di ma sulle visite a questo blog ho ricavato alcune riflessioni. Prima di tutto voglio segnalare che il post più visitato in assoluto è quello che riguarda le funzioni TO_NUMBER, TO_CHAR e TO_DATE, ciò conferma quanto scrissi e cioè che su tali funzioni spesso si fa confusione. Poi rilevo, un po’ con stupore, che il numero di visite al blog è gradualmente cresciuto soprattutto in conseguenze di ricerche su motori di ricerca e le chiavi utilizzate sono termini in italiano e non in inglese. Ne ricavo che molti italiani che lavorano con Oracle o con Linux cercano informazioni in italiano. Ripeto: la cosa mi stupisce, perchè lavorare nell’informatica e cercare informazioni in italiano è secondo me quasi un paradosso, senon’altro perchè l’ordine di grandezza, sia in termini di quantità che di qualità, delle informazioni su questi due temi in lingua inglese è nettamente superiore. Io ho rinunciato da tempo a cercare informazioni in italiano perchè lo ritengo limitante, quindi per non perdere tempo cerco direttamente informazioni in inglese, anche se ciò poi mi comporta uno sforzo di traduzione.

Terminati i consuntivi del centesimo post passiamo all’argomento del giorno, ispirato da un simpatico quiz di Howard Rogers sul suo sito a cui ho provato a partecipare anche io ma con scarso successo. Howard Rogers in sintesi poneva la seguente domanda:

“C’è un modo per ottenere da Oracle una statistica istantanea, un numere, una percentuale per avere una visione del carico globale della macchina, una cosa tipo Performance Monitor di Windows, top in Unix ma che sia completamente indipendente dal sistema operativo?”

Volendo fare delle considerazioni che esulano dal quiz possiamo dire che tale cosa non è del tutto sensata, o meglio comoda. E’ sempre più affidabile affidarsi per tale compito a strumenti forniti dal sistema operativo, ad esempio su AIX esiste un programma che si chiama “topas” e che da una panoramica incredibilmente chiara e completa dello stato di carico del sistema. Però anche la questione posta da Dizwell ha un suo senso, a rigore un DBA Oracle non è un sistemista, quindi potrebbe non avere accesso per nulla alla macchina che ospita il database.

Il suggerimento più interessante è probabilmente quello giunto da Dominic Delmolino che ha ricordato l’esistenza della vista di sistema V$OSSTAT, introdotta con Oracle 10.1. L’uso delle informazioni di tale vista è stato precisato meglio da Doug Burns che ha anche ricordato di aver già scritto un articolo al riguardo (Parallel Execution Profile Times).

Il punto su cui Howard Rogers ha però insistito, e qui non capisco se per desiderio di sviscerare meglio l’argomento o perchè non comprende bene la logica di strumenti quali Performance Monitor o top, è che anche V$OSSTAT  è una vista di tipo “accumulatore”, per avere una  informazione sensata occorre “campionare” i dati in due istanti di tempo e valutare la differenza fra i valori dei due campioni. Doug Bourns ha spiegato che in effetti tutti gli strumenti usano questo principio, Performance Monitor sulla mia macchina ha un intervallo di campionamento che per default è di un secondo. Howard chiede una formula, forse vuole applicare la derivata in modo tale da avere un indicatore istantaneo (se mi ricordo ancora la teoria delle derivate).

Secondo me il quiz non avrà mai una soluzione, secondo me, un indicatore  che può avvicinarsi a quanto richiesto è un cosa tipo:

”  select sum(decode(wait_class,’Idle’,0,1))*100/count(sid) from v$session;”

Ora, se la macchina è carica tale numero sale, ma questo solo se questo database c’è dell’attività, inevitabilmente rallentata dal fatto che la macchina sia carica. Però se come ha obbiettato Howard Rogers su questa macchina ho più database e altre applicazioni che caricano il sistema e il database su cui sono collegato non ha attività in corso la query che ho riportato da comunque un valore basso. Una query che da sola prende due snapshot da V$OSSTAT, calcola la differenza e da come output una percentuale è probabilmente l’unica risposta accettata da dizwell

2 commenti »

RSS feed for comments on this post. TrackBack URI

  1. Ciao Cristian

    Ringraziamenti per i cento articoli sul suo blog. Io sono inglese, e lavoro in Inghilterra; ma perché ho una casa nelle Marche (a Sant’Angelo in Pontano MC), vorrei migliorare la mia comprensione della lingua italiana – in particolare, i termini tecnici. Provo leggere questo blog ogni giorno, e posso confrontare che cosa scrive con l’inglese originale quando commenta i blog di Doug Burns, di Howard Dizwell e di altri.

    Continui il buon lavoro!

    Distinti saluti

    Nigel

  2. Grazie!
    Mi fa molto piacere ricevere riscontri positivi al mio blog, questo mi incoraggia a continuare con maggior entusiasmo.
    Complimenti per la casetta nella nostra bella e un po’ sgangherata Italia.


Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

Blog su WordPress.com.
Entries e commenti feeds.

%d blogger cliccano Mi Piace per questo: