Ciao, e benvenuto nella settima puntata della cinquantaseiesima stagione. Nella scorsa puntata abbiamo tolto il capo e ci siamo lasciati con una domanda spinosa: senza un arbitro, come si stabilisce qual è la verità? Oggi rispondiamo, e scopriamo che Scylla, invece di darti una risposta unica, ti mette in mano una manopola. Oggi capiamo la consistenza regolabile.
Ripartiamo dal problema, perché sia chiaro. In Scylla ogni dato vive in più copie, su macchine pari. Quando scrivi qualcosa, quel qualcosa deve raggiungere quelle copie. Ma raggiungerle tutte, e aspettare la conferma da ognuna, richiede tempo. E quando leggi, potresti interrogare una copia che, per un istante, non ha ancora ricevuto l'ultimo aggiornamento, e darti un valore un po' vecchio. Ecco il nocciolo: senza un capo che detti la verità, la verità è distribuita su più copie che potrebbero, per brevi istanti, non essere perfettamente d'accordo.
Voglio darti la soluzione di Scylla, perché è elegante e onesta. Scylla non ti impone una risposta rigida. Ti dà una manopola, che puoi regolare per ogni singola operazione. La manopola risponde a una domanda: quante copie devono rispondere prima che io mi fidi del risultato? Se accetti la risposta di una sola copia, sei velocissimo, ma quella copia potrebbe essere leggermente indietro. Se invece pretendi che risponda la maggioranza delle copie, sei più lento, ma hai una garanzia forte. Da spavaldo e rapido a prudente e sicuro, la manopola è tua, operazione per operazione.
Voglio spiegarti il trucco della maggioranza, perché è geniale. Perché chiedere la maggioranza dà una garanzia forte? Ecco l'idea, ed è bellissima. Immagina di pretendere sempre che la maggioranza delle copie confermi una scrittura, e sempre che la maggioranza risponda a una lettura. Due maggioranze dello stesso gruppo, per forza di cose, hanno almeno una copia in comune: non possono evitarsi del tutto. E quella copia in comune ha visto sia la scrittura sia la lettura. Quindi la tua lettura incontrerà sempre almeno una copia che conosce l'ultimo valore. È matematica pura: due maggioranze si sovrappongono sempre. Da qui nasce la garanzia.
Voglio darti l'immagine che rende chiara questa idea, perché la fissa. Immagina un ufficio dove giri per sapere l'ultima cifra decisa. Il modo veloce: chiedi al primo collega che incontri. Rapidissimo, ma magari lui era assente quando la cifra è cambiata, e ti dà quella vecchia. Il modo sicuro: chiedi a più della metà dei colleghi. È più lento, ma tra così tanti, almeno uno c'era di sicuro quando la cifra è cambiata, e ti darà quella giusta, smentendo gli altri. Chiedere a pochi è veloce e rischioso; chiedere alla maggioranza è lento e certo. Tu scegli, di volta in volta.
Voglio nominare la fama, perché va trattata con equità. Questa famiglia di basi di dati porta un'etichetta che spesso viene usata come un'accusa: consistenza finale. Suona male, come se i dati fossero inaffidabili. Ma il significato vero è onesto e preciso: se non pretendi la maggioranza, per brevissimi istanti copie diverse possono dare risposte leggermente diverse, ma prima o poi, molto presto, si allineano tutte. Non vuol dire che i dati si perdono. Vuol dire che tu scegli, per ogni operazione, se vuoi la freschezza garantita subito, o se ti basta quella che arriva pochissimo dopo. Per un contatore di visualizzazioni, va benissimo la seconda: chi si accorge se il numero è indietro di un secondo? Per un'operazione critica, dove un valore vecchio farebbe danni, pretendi la maggioranza. La stessa base di dati serve entrambi i bisogni, perché la scelta la fai tu, dato per dato, non te la impone lei.
Voglio darti la lezione generale, perché è un principio profondo. La lezione è che, in un sistema sparso su tante macchine, la consistenza perfetta e immediata e la massima velocità non possono coesistere sempre: c'è una tensione di fondo, quasi una legge di natura. I sistemi onesti non fingono di aggirarla: la rendono visibile e regolabile, come fa Scylla con la sua manopola. Ti dicono chiaro: ecco il compromesso, scegli tu dove metterti, caso per caso. È molto più maturo che promettere l'impossibile. E per te significa una responsabilità: sapere, per ogni dato, quanta freschezza ti serve davvero.
Per oggi ci fermiamo qui. Abbiamo affrontato la consistenza regolabile. Con i dati in più copie e senza un capo, la verità è distribuita e per istanti le copie possono non concordare. Scylla non impone una risposta: ti dà una manopola, quante copie devono rispondere prima che ti fidi. Una sola copia, veloce ma forse vecchia; la maggioranza, più lenta ma garantita, perché due maggioranze si sovrappongono sempre su almeno una copia aggiornata. Come chiedere una cifra a un collega solo o a più della metà dell'ufficio. La fama di consistenza finale non vuol dire dati inaffidabili: vuol dire che scegli tu freschezza contro velocità, operazione per operazione. La lezione: consistenza e velocità sono in tensione, e i sistemi onesti la rendono regolabile. Nella prossima puntata: stessa lingua, motore migliore. Nelle note trovi qualche spunto. Se ti è utile, condividila. Grazie per l'ascolto, e ci sentiamo alla prossima.