The forum of the Computer Science students of the University of Pisa

Domande Orale Ghelli

Orale gennaio 2015
Dopo il classico preorale - fatto di qualche domanda teorica e alcune query (una delle quali decisamente tosta) - ha iniziato ad interrogarmi partendo dagli errori dei compitini e del preorale.

Avendo fatto tutto bene ha iniziato chiedendomi di confrontare la complessità degli algoritmi di analisi e di sintesi e mi ha chiesto di fare un'analisi dettagliata al caso pessimo di uno dei due (non sono sicuro di quale fosse, ma credo quello di analisi).

Orale gennaio 2016
Si concentra soprattutto su normalizzazione, dipendenze funzionali e piani di accesso, fortunatamente non ha mai chiesto la primissima parte del corso (cos'è un sistema informativo...)

Le mie domande sono state:
- quand'è che una decomposizione preserva i dati (lo avevo sbagliato allo scritto)
- qual'è la cardinalità dell'insieme risultante dalla group by, e quale dipendenza funzionale introduce la group by
- quali sono i fattori da considerare per fare un piano di accesso per una join fra tre tabelle

A mio avviso è tranquillissimo e disposto a farti ragionare anche se non sai le cose, per fartici arrivare (gli interessa solo che hai capito il ragionamento).
Ad un collega molto bravo prima di me ha chiesto:

- In caso di fallimento è meglio fare la ripartenza in memoria o sul disco? (alla fine non c'è una soluzione, hanno solo elencato pro e contro di entrambi i sistemi)

Orale gennaio 2016
Al mio orale (il 20 gen) non si è concentrato sulla normalizzazione ma sull'ultima parte XD, comunque si, basta studiare la normalizzazione e l'ultima parte (quella sui trigger, piani di accesso e quella parte teorica) per l'orale, per quanto riguarda il preorale praticamente è come il secondo compitino con in aggiunta le query.
Consiglio generale; studiate e andate tranquilli, il ghelli è alla mano e aiuta abbastanza nell'orale, e a parer mio se fai un buon preorale, l'orale può anche andare malino, ma passi sempre con un buon voto, cioè per bocciare all'orale devi fare scena muta.
Ho preso 24, MB e S ai 2 compitini, un preorale con 2/3 query leggermente sbagliate e un orale tra il malino e il discreto, per farvi un idea.

Orale giugno 2017
Mi son seduto con i due compitini superati entrambi senza errori
Preorale scritto, composto da
-5 query SQL
-3 punti sul trovare dipendenze funzionali, spiegare che problemi ha uno schema riportato e perchè una decomposizione riportata è sbagliata
-definizione di dipendenza funzionale, verifica di dipendenze su in istanza
-proprietà delle transazioni, algoritmi e tecniche utilizzate per implementarle

risposte corrette a tutto, orale veloce, mi ha chiesto di ottimizzare maggiormente un dettaglio nella risoluzione del secondo compitino (una sort che poteva essere risparmiata manipolando una sort precedente).
-Quali sono i casi in cui è conveniente usare un sistema NoSQL e quando invece conviene un sistema a modello relazionale
-Ci sono persone che sostengono che sia una buona idea appoggiarsi ad un DBMS tradizionale, e altre che ritengono che invece sia ottimale implementare da se un sistema di gestione direttamente sul file system, ognuna delle due posizioni ha argomenti a favore, parlamene.

Voto finale 30L

Orale giugno 2017
Il pre-orale scritto consisteva in
- 5 Query + 1 Opzionale (una più una meno non ricordo)
- Definizione di Decomposizioni che preservano i dati
- Dare formalmente la definizione del Teorema delle decomposizioni binarie
- Differenza tra protocollo disfare e protocollo non-disfare
- Descrivere sinteticamente le forme BCNF e 3NF
- Parlare delle 4 forme di organizzazione primaria (Seriale, Sequenziale, Hash, B+ Albero)

L'orale è iniziato vedendo i compitini:
domande fatte sul primo compitino:
- rifare la query che avevo sbagliato (e io l'ho sbagliata di nuovo)
- discussione sulle chiavi (ho confuso alcune cose)
domande fatte sul secondo compitino:
- rifare un pezzo dell'algoritmo di analisi che avevo sbagliato (e l'ho azzeccato)
- rifare tutti gli esercizi lasciati in bianco o che avevo sbagliato sulle transazioni
domande fatte sul pre-orale:
- provare a riscrivere meglio il Teorema delle decomposizioni binarie (senza successo)
- provare a correggere la def. delle Decomposizioni che preservano i dati (senza successo)
- ho scritto una boiata sul protocollo Non-disfare (correggendomi con successo)
- Definizione formale di dipendenza funzionale

TL;DR domande su tutto ciò che sbagliate negli scritti e nel pre-appello.

Orale giugno 2017
- 5 query con una opzionale su degli schemi Libro, Autore, AutoreLibro
- Definizioni di BCNF/3NF e Algoritmo analisi/sintesi
- Trovare le dipendenze funzionail in uno schema dato (pazienti, ricoveri e ospedali)
- Applicare analisi e sintesi sullo schema precedente
- Definizione di partizione che preserva i dati
- Caratteristiche e protocolli/algoritmo per le transazioni

Orale veloce iniziato riguardando i compitini e correggendo qualche errore che avevo fatto,
domande aggiuntive:
- Perchè si usa il commit periodico?
- Teorema delle partizioni binarie
- Esempio che dimostra il precedente teorema
- Disfare rallenta l'operazione di ripristino?

Orale giugno 2017
-5 query con una opzionali degli schemi Attore,Film,FilmAttore
particolarissima una query, che richiedeva l'uso di due GroupBy, ma tutto sommato nella norma
-Definizione di Decomposizione che preserva i dati e teorema di decomposizione binaria
-differenza tra disfare non disfare
-differenze tra 3FN E FNBC e descrivere le differenza tra algoritmo di analisi e algoritmo di sintesi
-elencare pro e contro dei vari tipi di Organizzazione dei dati

Mi ha tenuto all'orale 5 minuti,anche meno, il tempo di farmi correggere due errori nelle query e chiedermi di dargli la definizione corretta di non disfare(a cui non sono riuscito a rispondere).

voto finale 27

Orale giugno 2017
- 5 query sullo schema Autori, AutoriLibri, Libri, Editori, di cui l’ultima un po’ più difficile
- Dare la definizione formale di decomposizione che preserva i dati
- Dire se, data la tabella seguente, le decomposizioni R1(AB), R2(BC) e R1(AB), R2(AC) preservano i dati.

A B C
1 12 10
2 12 20
3 13 30

R: Si usa il Th. delle decomposizioni binarie:
la prima non preserva i dati (poiché AB intersecato BC non è superchiave per almeno uno dei due insiemi di attibuti).
La seconda li preserva (stesso ragionamento di sopra).

- Date le seguenti query dire cosa succede ai libri il cui editore non è ‘ABC’ (se vengono portati tutti o in parte nel risultato)
Select l.titolo
From Libri l
Where Not Exists(Select *
From Autorilibri al
Where l.CodLibro = al.CodLibro And l.editore = ‘ABC’
And al.CodAutore <> ‘Albano’)
)
Select l.titolo
From Libri l
Where Not Exists(Select *
From Autorilibri al
Where l.CodLibro = al.CodLibro And l.editore <> ‘ABC’
And al.CodAutore <> ‘Albano’)
)
- Dire cosa vuol dire X determina Y (dare la definizione formale di Dipendenza Funzionale)
- Dire che cosa è un indice e per quali operazioni viene usato
- Descrivere sinteticamente le proprietà delle transazioni (ACID)

Scritto passato con i compitini (O al primo e B al secondo)
Orale velocissimo in cui ti chiede di ragionare sugli errori fatti nei vari compiti e
due domande sulle transazioni (come si implementa l’atomicità e differenza tra disfare e non disfare) poiché avevo lasciato in bianco l’esercizio al compitino.

Voto finale 28

Orale giugno 2018
Pre-orale composto da:
- 5 query;
- Ricavare 5 dipendenze funzionali;
- Dire quando una decomposizione preserva i dati, e dire se le due decomposizioni indicate li preservano;
- Descrivere brevemente il protocollo 2PL e dire quale proprietà delle transazioni implementa;
- Descrivere brevemente la proprietà di atomicità e serializzabilità.

Orale brevissimo, nel quale discute i compitini e il pre-orale; in più ha chiesto il teorema delle decomposizioni binarie e come viene implementato il protocollo non disfare.

Primo compitino passato con B e secondo con O; nel pre-orale ho sbagliato una dipendenza funzionale che mi ha fatto ricalcolare.
Voto finale 30.

Orale giugno 2018
Pre-orale 8/06/2018 :

- 5 query (un paio di queste erano un po’ più articolate);
- Definizione di derivazione e implicazione logica;
- Definizione di chiave esterna;
- Spiegazione del protocollo di lock a due fasi (two-phase-locking) specificando il significato della parola “a due fasi”;
- Scrivere le proprietà di una transazione con le relative descrizioni.

Nell’ultima parte orale il professore guarda i compitini e in caso di risposte sbagliate chiede di correggerle. Dopo aver visto i compitini si passa alla correzione del pre-orale e a qualche domanda più teorica.

Per ulteriori domande all’orale il professore prende spunto dagli errori delle prove scritte.
Nel mio caso avevo dato una definizione poco precisa sulla serializzabiltá e poi mi sono state chieste le funzionalitá dei DBMS.

In ogni caso il professore è molto disponibile ad aiutare e far ragionare lo studente per arrivare alla soluzione corretta.

Presentato con MB al primo compitino, O al secondo e il voto finale 28


Orale giugno 2018
-5 query:
1 con 2 groupby,
1 con doppio universale;
-differenze tra 3FN e BCNF;
-differenze algoritmo sintesi e analisi;
-Tipi di organizzazione dati(seriale, sequenziale, hash, B+albero);
-differenza tra disfare e non disfare;
Definizione indice e disegnare due tabelle con indici che dava lui.
Dopo ha rivisto i compitini e mi ha corretto il preorale chiedendomi di modificare una query sbagliata. Alla fine mi ha chiesto come funziona l'indexnestedloop e come mai è piu efficente il mergesort dell'indexnestedloop.

Sono partito da buono e molto buono ai compitini, passato con 30L.

Molto tranquillo e ti fa pensare parecchio. Se le cose non le sai o passa oltre o tu fa arrivare.
A quelli prima di me ha chiesto le proprietà delle transazioni, dove e perche si crea l'overhead, e altre che non ricordo.
Orale del 01/07/19
Come di consueto Ghelli ha dato da fare un pre-orale scritto.
Pre-orale che conteneva:
- 5 QUERY
- Definizione di DF derivata e di DF implicata logicamente
- Definizione di Transazione e spiegazione delle sue proprietà
- Spiegare il protocollo 2 Phase Lock
- Definizione di Chiave Esterna

Partivo con compitini valutati O e MB.
Dopo aver commentato le query del preorale (sicuramente la parte a cui tiene di più), mi ha chiesto un'approndimento sulla mia risposta alla domanda sulla Chiave Esterna (ero stato abbanstanza superficiale).
Non mi ha fatto ulteriori domande e mi ha dato 30.

In generale consiglio di studiare per bene le Query perchè sbagliare quelle del pre-orale può compromettere l'intero esame.